summaryrefslogtreecommitdiff
path: root/app/wlib/include/wlib.h
diff options
context:
space:
mode:
Diffstat (limited to 'app/wlib/include/wlib.h')
-rw-r--r--app/wlib/include/wlib.h103
1 files changed, 87 insertions, 16 deletions
diff --git a/app/wlib/include/wlib.h b/app/wlib/include/wlib.h
index 699eefb..d3bfc18 100644
--- a/app/wlib/include/wlib.h
+++ b/app/wlib/include/wlib.h
@@ -11,6 +11,8 @@
#define FILE_SEP_CHAR "/"
#endif
+#include <stdbool.h>
+
#ifdef USE_SIMPLE_GETTEXT
char *bindtextdomain( char *domainname, char *dirname );
char *bind_textdomain_codeset(char *domainname, char *codeset );
@@ -20,6 +22,11 @@ char *gettext( const char *msgid );
char *g_win32_getlocale (void);
#endif
+// conversion routines to and from UTF-8
+bool wSystemToUTF8(const char *inString, char *outString, unsigned outStringLength);
+bool wUTF8ToSystem(const char *inString, char *outString, unsigned outStringLength);
+bool wIsUTF8(const char * string);
+
/*
* Interface types
*/
@@ -148,12 +155,14 @@ wBool_t wNotice( const char *, const char *, const char * );
int wNotice3( const char *, const char *, const char *, const char * );
void wHelp( const char * );
+
#define NT_INFORMATION 1
#define NT_WARNING 2
#define NT_ERROR 4
wBool_t wNoticeEx( int type, const char * msg, const char * yes, const char * no );
+unsigned wOpenFileExternal(char *filename);
void wSetBalloonHelp ( wBalloonHelp_t * );
@@ -170,11 +179,21 @@ unsigned long wGetTimer( void );
void wExit( int );
typedef enum { wCursorNormal,
+ wCursorNone,
+ wCursorAppStart,
+ wCursorHand,
+ wCursorNo,
+ wCursorSizeAll,
+ wCursorSizeNESW,
+ wCursorSizeNS,
+ wCursorSizeNWSE,
+ wCursorSizeWE,
wCursorWait,
wCursorIBeam,
wCursorCross,
wCursorQuestion } wCursor_t;
-void wSetCursor( wCursor_t );
+void wSetCursor( wDraw_p, wCursor_t );
+#define defaultCursor wCursorCross
const char * wMemStats( void );
@@ -224,6 +243,8 @@ typedef void (*wWinCallBack_p)( wWin_p, winProcEvent, void *, void * );
#define F_CENTER (1L<<12)
#define F_HIDE (1L<<13)
#define F_MAXIMIZE (1L<<14)
+#define F_RESTRICT (1L<<15)
+#define F_NOTTRANSIENT (1L<<16)
wWin_p wWinMainCreate( const char *, wPos_t, wPos_t, const char *, const char *, const char *,
long, wWinCallBack_p, void * );
@@ -246,6 +267,7 @@ void wMessage( wWin_p, const char *, wBool_t );
void wWinTop( wWin_p );
void wWinDoCancel( wWin_p );
void wWinBlockEnable( wBool_t );
+void wSetGeometry(wWin_p, int min_width, int max_width, int min_height, int max_height, int base_width, int base_height, double aspect_ratio);
int wCreateSplash( char *appName, char *appVer );
int wSetSplashInfo( char *msg );
@@ -262,6 +284,7 @@ void wDestroySplash( void );
#define BO_READONLY (1L<<2)
#define BO_NOTAB (1L<<8)
#define BO_BORDER (1L<<9)
+#define BO_ENTER (1L<<10)
wPos_t wLabelWidth( const char * );
const char * wControlGetHelp( wControl_p );
@@ -290,7 +313,7 @@ void wControlLinkedActive( wControl_p b, int active );
#define BS_TRIM (1<<12)
/* Creation CallBacks */
-typedef void (*wStringCallBack_p)( const char *, void * );
+typedef void (*wStringCallBack_p)( const char *, void *);
wString_p wStringCreate( wWin_p, wPos_t, wPos_t, const char *, const char *, long,
wPos_t, char *, wIndex_t, wStringCallBack_p,
void * );
@@ -305,8 +328,8 @@ const char * wStringGetValue( wString_p );
*/
/* Creation CallBacks */
-typedef void (*wIntegerCallBack_p)( long, void * );
-typedef void (*wFloatCallBack_p)( double, void * );
+typedef void (*wIntegerCallBack_p)( long, void * , int);
+typedef void (*wFloatCallBack_p)( double, void * , int);
wInteger_p wIntegerCreate( wWin_p, wPos_t, wPos_t, const char *, const char *, long,
wPos_t, wInteger_t, wInteger_t, wInteger_t *,
wIntegerCallBack_p, void * );
@@ -414,6 +437,7 @@ wLine_p wLineCreate( wWin_p, const char *, int, wLines_t *);
#define BT_CHARUNITS (1L<<23)
#define BT_FIXEDFONT (1L<<22)
#define BT_DOBOLD (1L<<21)
+#define BT_TOP (1L<<20) /* Show the top of the text */
wText_p wTextCreate( wWin_p, wPos_t, wPos_t, const char *, const char *, long,
wPos_t, wPos_t );
@@ -440,12 +464,34 @@ void wTextSetPosition( wText_p bt, int pos );
typedef int wDrawOpts;
#define wDrawOptTemp (1<<0)
#define wDrawOptNoClip (1<<1)
+#define wDrawOptTransparent (1<<2)
+#define wDrawOutlineFont (1<<3)
+#ifdef CURSOR_SURFACE
+#define wDrawOptCursor (1<<4)
+#define wDrawOptCursorClr (1<<5)
+#define wDrawOptCursorClr (1<<6)
+#define wDrawOptCursorRmv (1<<7)
+#define wDrawOptCursorQuit (1<<8)
+#define wDrawOptOpaque (1<<9)
+#endif
+
typedef enum {
wDrawLineSolid,
- wDrawLineDash }
+ wDrawLineDash,
+ wDrawLineDot,
+ wDrawLineDashDot,
+ wDrawLineDashDotDot,
+ wDrawLineCenter,
+ wDrawLinePhantom}
wDrawLineType_e;
+typedef enum {
+ wPolyLineStraight,
+ wPolyLineSmooth,
+ wPolyLineRound}
+ wPolyLine_e;
+
typedef int wAction_t;
#define wActionMove (1)
#define wActionLDown (2)
@@ -458,7 +504,13 @@ typedef int wAction_t;
#define wActionExtKey (9)
#define wActionWheelUp (10)
#define wActionWheelDown (11)
-#define wActionLast wActionWheelDown
+#define wActionLDownDouble (12)
+#define wActionModKey (13)
+#define wActionScrollUp (14)
+#define wActionScrollDown (15)
+#define wActionScrollLeft (16)
+#define wActionScrollRight (17)
+#define wActionLast wActionScrollRight
#define wRGB(R,G,B)\
@@ -474,6 +526,7 @@ typedef void (*wDrawActionCallBack_p)( wDraw_p, void*, wAction_t, wPos_t, wPos_t
#define BD_DIRECT (1L<<26)
#define BD_NOCAPTURE (1L<<27)
#define BD_NOFOCUS (1L<<28)
+#define BD_MODKEYS (1L<<29)
/* Create: */
wDraw_p wDrawCreate( wWin_p, wPos_t, wPos_t, const char *, long,
@@ -496,13 +549,15 @@ void wDrawString( wDraw_p, wPos_t, wPos_t, wAngle_t, const char *, wFont_p,
wFontSize_t, wDrawColor, wDrawOpts );
void wDrawFilledRectangle( wDraw_p, wPos_t, wPos_t, wPos_t, wPos_t,
wDrawColor, wDrawOpts );
-void wDrawFilledPolygon( wDraw_p, wPos_t [][2], wIndex_t, wDrawColor,
- wDrawOpts );
+void wDrawPolygon( wDraw_p, wPos_t [][2], wPolyLine_e [], wIndex_t, wDrawColor, wDrawWidth, wDrawLineType_e,
+ wDrawOpts, int, int );
void wDrawFilledCircle( wDraw_p, wPos_t, wPos_t, wPos_t, wDrawColor, wDrawOpts );
-void wDrawGetTextSize( wPos_t *, wPos_t *, wPos_t *, wDraw_p, const char *, wFont_p,
+void wDrawGetTextSize( wPos_t *, wPos_t *, wPos_t *, wPos_t *, wDraw_p, const char *, wFont_p,
wFontSize_t );
void wDrawClear( wDraw_p );
+void wDrawClearTemp( wDraw_p );
+wBool_t wDrawSetTempMode( wDraw_p, wBool_t );
void wDrawDelayUpdate( wDraw_p, wBool_t );
void wDrawClip( wDraw_p, wPos_t, wPos_t, wPos_t, wPos_t );
@@ -517,7 +572,7 @@ void wDrawSetSize( wDraw_p, wPos_t, wPos_t, void * );
void wDrawGetSize( wDraw_p, wPos_t *, wPos_t * );
/* Bitmaps */
-wDrawBitMap_p wDrawBitMapCreate( wDraw_p, int, int, int, int, const char * );
+wDrawBitMap_p wDrawBitMapCreate( wDraw_p, int, int, int, int, const unsigned char * );
void wDrawBitMap( wDraw_p, wDrawBitMap_p, wPos_t, wPos_t,
wDrawColor, wDrawOpts );
@@ -529,6 +584,8 @@ wBool_t wBitMapWriteFile( wDraw_p, const char * );
void * wDrawGetContext( wDraw_p );
void wDrawSaveImage( wDraw_p );
void wDrawRestoreImage( wDraw_p );
+int wDrawSetBackground( wDraw_p, char * path, char ** error);
+void wDrawShowBackground( wDraw_p, wPos_t pos_x, wPos_t pos_y, wPos_t width, wAngle_t angle, int screen);
/*------------------------------------------------------------------------------
*
@@ -537,7 +594,7 @@ void wDrawRestoreImage( wDraw_p );
void wInitializeFonts();
void wSelectFont( const char * );
wFontSize_t wSelectedFontSize( void );
-void wSetSelectionFontSize(int);
+void wSetSelectionFontSize(wFontSize_t);
#define F_TIMES (1)
#define F_HELV (2)
wFont_p wStandardFont( int, wBool_t, wBool_t );
@@ -548,22 +605,19 @@ wFont_p wStandardFont( int, wBool_t, wBool_t );
* Printing
*/
-typedef void (*wAddPrinterCallBack_p)( const char *, const char * );
-typedef void (*wAddMarginCallBack_p)( const char *, double, double, double, double );
-typedef void (*wAddFontAliasCallBack_p)( const char *, const char * );
typedef void (*wPrintSetupCallBack_p)( wBool_t );
wBool_t wPrintInit( void );
void wPrintSetup( wPrintSetupCallBack_p );
-void wPrintSetCallBacks( wAddPrinterCallBack_p, wAddMarginCallBack_p, wAddFontAliasCallBack_p );
+void wPrintGetMargins( double *, double *, double *, double * );
void wPrintGetPageSize( double *, double * );
-void wPrintGetPhysSize( double *, double * );
wBool_t wPrintDocStart( const char *, int, int * );
wDraw_p wPrintPageStart( void );
wBool_t wPrintPageEnd( wDraw_p );
void wPrintDocEnd( void );
wBool_t wPrintQuit( void );
void wPrintClip( wPos_t, wPos_t, wPos_t, wPos_t );
+const char * wPrintGetName( void );
/*------------------------------------------------------------------------------
@@ -607,6 +661,15 @@ typedef enum {
wAccelKey_LineFeed }
wAccelKey_e;
+typedef enum {
+ wModKey_None,
+ wModKey_Alt,
+ wModKey_Shift,
+ wModKey_Ctrl }
+ wModKey_e;
+
+void wDoAccelHelp( wAccelKey_e key, void * );
+
/* Creation CallBacks */
typedef void (*wMenuCallBack_p)( void * );
typedef void (*wMenuListCallBack_p)( int, const char *, void * );
@@ -656,6 +719,7 @@ void wAttachAccelKey( wAccelKey_e, int, wAccelKeyCallBack_p, void * );
*/
#define FS_MULTIPLEFILES 1
+#define FS_PICTURES 2
struct wFilSel_t;
typedef enum {
@@ -726,4 +790,11 @@ wPos_t wStatusGetHeight(long flags);
void wStatusSetValue(wStatus_p b, const char * arg);
void wStatusSetWidth(wStatus_p b, wPos_t width);
+
+/*-------------------------------------------------------------------------------
+ * User Preferences
+ */
+
+#define PREFSECTION "Preference"
+#define LARGEICON "LargeIcons"
#endif