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