Commit graph

78 commits

Author SHA1 Message Date
ehouse
a72e4d0c13 comments and assertions 2008-09-28 16:47:11 +00:00
ehouse
a9d255592a cleanup: name changes; don't measure the same glyph twice. 2008-09-18 03:50:04 +00:00
ehouse
299beddc77 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
234c2971a1 Extend use of fitted fonts to scoreboard, allowing scoreboard to have
non-constant size eventually.
2008-09-13 15:24:23 +00:00
ehouse
25c59a25e7 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
87ce5f06d4 Reduce parameter count. No logic change. 2008-09-10 11:57:30 +00:00
ehouse
7299675adc 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
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
9be9842e48 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
a5c0509b38 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
11ca0d54d0 Fix cached pen remaining after color preference changed. 2008-08-02 14:35:40 +00:00
ehouse
bff4b573c9 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
0e31d4d33c 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
89edef9c18 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
c521195554 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
7da66696ed 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
7b781b9ff1 set background color in timer, preventing flash of color when focus on scoreboard. 2008-05-25 15:54:34 +00:00
ehouse
3d7595fb2c clip so arrow doesn't overwrite cell border on smartphone with small cells. 2008-05-25 15:31:54 +00:00
ehouse
7821a4c5e5 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
90a10345b8 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
37af03cae3 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
39212dcde2 Fix drawing of cursor arrow by moving the clip rect. 2008-04-12 15:47:15 +00:00
ehouse
e572034ac5 name change only 2008-03-30 23:58:04 +00:00
ehouse
b779876fbc Pick fonts for tray and board based on sizes at runtime; bury tile
values menuitem.
2008-03-16 14:23:57 +00:00
ehouse
363f1ce6e4 Use clipping to prevent spillage when cells are very small. 2008-03-15 23:06:06 +00:00
ehouse
0988159795 add owner param to drawTileMidDrag so can color tiles correctly 2008-03-11 11:48:53 +00:00
ehouse
72ada6b1a8 implement drawTileMidDrag (same as tile in tray for now) 2008-03-09 23:32:24 +00:00
ehouse
89a7a6fd01 fix warning 2008-02-16 17:19:31 +00:00
ehouse
266038a463 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
19ea3e1f6e 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
e891a26756 substitute macro for common sizeof(x)/sizeof(x[0]) pattern; no generated code change 2007-05-26 14:03:07 +00:00
ehouse
2fe75a19a2 add const to a bunch of char* decls in APIs and variables; no code change 2007-02-03 17:54:20 +00:00
ehouse
17993fea06 Tweak scroll-of-focussed-board inval code so we don't inval the whole
board, which looks crappy.  Instead inval only what was previously a
border row, and pass a new param to draw_vertScrollBoard so the
platform can choose not to scroll cells that will just get overwritten
with different bits.
2007-01-21 22:59:29 +00:00
ehouse
b4d01f15f2 preliminary addition of xplatform-only focus, esp drawing of cursor
and handling of arrow keys via WM_KEYUP; added focus/cursor color to
prefs and color edit dialog.  Tested only on win32 (WINE), and not
integrated with platform nav/focus model.
2007-01-19 08:24:02 +00:00
ehouse
3a0b5af472 change constant names. No change to code compiled. 2007-01-19 06:43:52 +00:00
ehouse
0924cc29b8 Fix to work with draw API changes 2006-11-12 15:22:26 +00:00
ehouse
f561989644 Set -Wunused-parameter for those versions of gcc that support it, and
deal with the output by removing params where possible and elsewhere
by adding XP_UNUSED macro wrapping __attribute__((unused)).  There
should be NO change in function in spite of the large number of files.
2006-08-16 13:44:44 +00:00
ehouse
f8e4579116 patch from Peter Rovnak. For Slovak support, need to specify the tray
font by name in order to get one that has all the necessary faces.  Seems
to make no difference on US/English systems, but it works for him on a
localized device.
2006-08-16 01:29:21 +00:00
ehouse
33c94620fb Turn on BitBlt scrolling. 2006-06-24 01:22:10 +00:00
ehouse
e8731492b4 implement vertical scrolling using BitBlt. It's faster and smoother, but
commented out for now since it may be better not to add so late in the cycle.
2006-06-22 04:59:18 +00:00
ehouse
4561d86601 Allow no space for REM text when no tiles left to allow more room for scores. 2006-06-16 01:15:44 +00:00
ehouse
12daa9bfbb Turned on leak-checking at shutdown for debug version, and fixed leaks and
crashes in destructors that had never been called before.  Seems now to 
free all allocated memory before exiting.
2006-05-30 05:12:02 +00:00
ehouse
b498d3d18d silence compiler warnings. 2006-05-28 16:16:46 +00:00
ehouse
75431f774c strcat becomes strcpy: trivial optimization 2006-05-25 04:07:49 +00:00
ehouse
c096b77561 draw lines rather than bullets to indicate whose turn it is in vertical mode 2006-05-20 06:21:53 +00:00
ehouse
50e03abdea rewrite score formatting to put is-turn bullets above/below for
vertical scoreboard; reduce inter-line spacing and otherwise tweak
drawing.
2006-05-12 07:58:31 +00:00
ehouse
a1b0a11baa minor fixes to drawing spacing (what I meant to check in) 2006-05-11 03:00:50 +00:00
ehouse
6c8d4c663f minor fixes to drawing spacing 2006-05-11 02:58:36 +00:00
ehouse
58f4b08623 first cut at supporting landscape mode by moving scoreboard to left edge of screen from top. 2006-05-09 02:01:27 +00:00
ehouse
0f6437345b Draw bitmap chars ("specials", e.g. for Spanish) centered in rect
rather than at x,y.  This lines them up with normal letters on the
board as it changes size.
2006-04-02 22:27:44 +00:00