forked from nuttx/nuttx-update
Fonts are integated
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@1416 42af7a65-404d-4744-a932-0658087f49c3
This commit is contained in:
parent
acaffaf715
commit
3ed415a835
7 changed files with 39 additions and 6 deletions
|
@ -596,4 +596,5 @@
|
|||
run in more-or-less realtime.
|
||||
* Added more more extensive window support: frames, toolbars, etc.
|
||||
* Added support for bitmap fonts
|
||||
* Integrated the new font support with a font test in examples/nx
|
||||
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
<tr align="center" bgcolor="#e4e4e4">
|
||||
<td>
|
||||
<h1><big><font color="#3c34ec"><i>NuttX RTOS</i></font></big></h1>
|
||||
<p>Last Updated: December 3, 2008</p>
|
||||
<p>Last Updated: December 4, 2008</p>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
@ -1212,6 +1212,7 @@ nuttx-0.3.20 2008-xx-xx Gregory Nutt <spudmonkey@racsa.co.cr>
|
|||
run in more-or-less realtime.
|
||||
* Added more more extensive window support: frames, toolbars, etc.
|
||||
* Added support for bitmap fonts
|
||||
* Integrated the new font support with a font test in examples/nx
|
||||
|
||||
pascal-0.1.3 2008-xx-xx Gregory Nutt <spudmonkey@racsa.co.cr>
|
||||
|
||||
|
|
|
@ -145,10 +145,10 @@ static inline void nxeg_fillwindow(NXEGWINDOW hwnd,
|
|||
{
|
||||
message("nxeg_fillwindow: nxtk_fillwindow failed: %d\n", errno);
|
||||
}
|
||||
#endif
|
||||
#ifdef CONFIG_NX_KBD
|
||||
nxeg_filltext(hwnd, rect, st);
|
||||
#endif
|
||||
#endif
|
||||
}
|
||||
|
||||
/****************************************************************************
|
||||
|
|
|
@ -316,7 +316,6 @@ void nxeg_tbkbdin(NXWINDOW hwnd, ubyte nch, const ubyte *ch, FAR void *arg)
|
|||
FAR struct nxeg_state_s *st = (FAR struct nxeg_state_s *)arg;
|
||||
message("nxeg_tbkbdin: ERROR -- toolbar should not received keyboard input\n");
|
||||
message("nxeg_tbkbdin%d: hwnd=%p nch=%d\n", st->wnum, hwnd, nch);
|
||||
nxeg_kbdinfo(nch, ch);
|
||||
}
|
||||
#endif
|
||||
|
||||
|
|
|
@ -145,9 +145,11 @@ void NXGL_FUNCNAME(nxgl_moverectangle,NXGLIB_SUFFIX)
|
|||
|
||||
stride = pinfo->stride;
|
||||
|
||||
/* Get the dimensions of the rectange to fill: height in rows and width in bytes */
|
||||
/* Get the dimensions of the rectange to fill: width in pixels, height
|
||||
* in rows
|
||||
*/
|
||||
|
||||
width = NXGL_SCALEX(rect->pt2.x - rect->pt1.x + 1);
|
||||
width = rect->pt2.x - rect->pt1.x + 1;
|
||||
rows = rect->pt2.y - rect->pt1.y + 1;
|
||||
|
||||
#if NXGLIB_BITSPERPIXEL < 8
|
||||
|
|
|
@ -99,6 +99,7 @@ int nxtk_bitmaptoolbar(NXTKWINDOW hfwnd, FAR const struct nxgl_rect_s *dest,
|
|||
FAR const struct nxgl_point_s *origin, unsigned int stride)
|
||||
{
|
||||
FAR struct nxtk_framedwindow_s *fwnd = (FAR struct nxtk_framedwindow_s *)hfwnd;
|
||||
struct nxgl_point_s wndorigin;
|
||||
struct nxgl_rect_s clipdest;
|
||||
|
||||
#ifdef CONFIG_DEBUG
|
||||
|
@ -116,6 +117,20 @@ int nxtk_bitmaptoolbar(NXTKWINDOW hfwnd, FAR const struct nxgl_rect_s *dest,
|
|||
|
||||
nxtk_subwindowclip(fwnd, &clipdest, dest, &fwnd->tbrect);
|
||||
|
||||
/* Now, move the bitmap origin so that it is relative to the containing
|
||||
* window, not the sub-window.
|
||||
*
|
||||
* Temporarily, position the origin in absolute screen coordinates
|
||||
*/
|
||||
|
||||
nxgl_vectoradd(&wndorigin, origin, &fwnd->fwrect.pt1);
|
||||
|
||||
/* Then move the origin so that is relative to the containing window, not the
|
||||
* client subwindow
|
||||
*/
|
||||
|
||||
nxgl_vectsubtract(&wndorigin, &wndorigin, &fwnd->wnd.bounds.pt1);
|
||||
|
||||
/* Then copy the bitmap */
|
||||
|
||||
nx_bitmap((NXWINDOW)hfwnd, &clipdest, src, origin, stride);
|
||||
|
|
|
@ -99,6 +99,7 @@ int nxtk_bitmapwindow(NXTKWINDOW hfwnd, FAR const struct nxgl_rect_s *dest,
|
|||
FAR const struct nxgl_point_s *origin, unsigned int stride)
|
||||
{
|
||||
FAR struct nxtk_framedwindow_s *fwnd = (FAR struct nxtk_framedwindow_s *)hfwnd;
|
||||
struct nxgl_point_s wndorigin;
|
||||
struct nxgl_rect_s clipdest;
|
||||
|
||||
#ifdef CONFIG_DEBUG
|
||||
|
@ -116,8 +117,22 @@ int nxtk_bitmapwindow(NXTKWINDOW hfwnd, FAR const struct nxgl_rect_s *dest,
|
|||
|
||||
nxtk_subwindowclip(fwnd, &clipdest, dest, &fwnd->fwrect);
|
||||
|
||||
/* Now, move the bitmap origin so that it is relative to the containing
|
||||
* window, not the sub-window.
|
||||
*
|
||||
* Temporarily, position the origin in absolute screen coordinates
|
||||
*/
|
||||
|
||||
nxgl_vectoradd(&wndorigin, origin, &fwnd->fwrect.pt1);
|
||||
|
||||
/* Then move the origin so that is relative to the containing window, not the
|
||||
* client subwindow
|
||||
*/
|
||||
|
||||
nxgl_vectsubtract(&wndorigin, &wndorigin, &fwnd->wnd.bounds.pt1);
|
||||
|
||||
/* Then copy the bitmap */
|
||||
|
||||
nx_bitmap((NXWINDOW)hfwnd, &clipdest, src, origin, stride);
|
||||
nx_bitmap((NXWINDOW)hfwnd, &clipdest, src, &wndorigin, stride);
|
||||
return OK;
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue