xwords/xwords4/wince/ceutil.h
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

89 lines
2.8 KiB
C
Executable file

/* -*-mode: C; fill-column: 77; c-basic-offset: 4; -*- */
/*
* Copyright 2002-2004 by Eric House (xwords@eehouse.org). All rights reserved.
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
*/
#ifndef _CEUTIL_H_
#define _CEUTIL_H_
#include "stdafx.h"
#include "cemain.h"
void ceSetDlgItemText( HWND hDlg, XP_U16 id, const XP_UCHAR* buf );
void ceGetDlgItemText( HWND hDlg, XP_U16 id, XP_UCHAR* buf, XP_U16* bLen );
void ceSetDlgItemNum( HWND hDlg, XP_U16 id, XP_S32 num );
XP_S32 ceGetDlgItemNum( HWND hDlg, XP_U16 id );
void ceSetDlgItemFileName( HWND hDlg, XP_U16 id, XP_UCHAR* buf );
void positionDlg( HWND hDlg );
void ce_selectAndShow( HWND hDlg, XP_U16 resID, XP_U16 index );
void ceShowOrHide( HWND hDlg, XP_U16 resID, XP_Bool visible );
void ceEnOrDisable( HWND hDlg, XP_U16 resID, XP_Bool visible );
XP_Bool ceGetChecked( HWND hDlg, XP_U16 resID );
void ceSetChecked( HWND hDlg, XP_U16 resID, XP_Bool check );
void ceCenterCtl( HWND hDlg, XP_U16 resID );
typedef enum {
PREFS_FILE_PATH_L
,DEFAULT_DIR_PATH_L
,DEFAULT_GAME_PATH
} CePathType;
XP_U16 ceGetPath( CEAppGlobals* globals, CePathType typ,
void* buf, XP_U16 bufLen );
/* set vHeight to 0 to turn off scrolling */
typedef enum { DLG_STATE_NONE = 0
, DLG_STATE_TRAPBACK = 1
, DLG_STATE_DONEONLY = 2
} DlgStateTask;
typedef struct CeDlgHdr {
CEAppGlobals* globals;
HWND hDlg;
/* Below this line is private to ceutil.c */
DlgStateTask doWhat;
XP_U16 nPage;
} CeDlgHdr;
void ceDlgSetup( CeDlgHdr* dlgHdr, HWND hDlg, DlgStateTask doWhat );
void ceDlgComboShowHide( CeDlgHdr* dlgHdr, XP_U16 baseId );
XP_Bool ceDoDlgHandle( CeDlgHdr* dlgHdr, UINT message, WPARAM wParam, LPARAM lParam);
/* Are we drawing things in landscape mode? */
XP_Bool ceIsLandscape( CEAppGlobals* globals );
void ceSetLeftSoftkey( CEAppGlobals* globals, XP_U16 id );
#if defined _WIN32_WCE
void ceSizeIfFullscreen( CEAppGlobals* globals, HWND hWnd );
#else
# define ceSizeIfFullscreen( globals, hWnd )
#endif
#ifdef OVERRIDE_BACKKEY
void trapBackspaceKey( HWND hDlg );
#else
# define trapBackspaceKey( hDlg )
#endif
#endif