diff options
| author | Jörg Frings-Fürst <debian@jff-webhosting.net> | 2024-07-03 10:19:36 +0200 | 
|---|---|---|
| committer | Jörg Frings-Fürst <debian@jff-webhosting.net> | 2024-07-03 10:19:36 +0200 | 
| commit | b6bd52cd7330a90fc0e44dbe6022551a8dd768a1 (patch) | |
| tree | 9804282102f8c40d27407b9c94119b35eeb5013c /app/wlib/include | |
| parent | c9d0740841fbe0539e42e66d3865672bfcd3ac02 (diff) | |
| parent | a14a7a0ccc9de76aeab0b2e4bbf58f1a79deedc2 (diff) | |
Update upstream source from tag 'upstream/5.3.0GA'
Update to upstream version '5.3.0GA'
with Debian dir dfd14d63b0238e276ade6f54dd9100325df5b2f9
Diffstat (limited to 'app/wlib/include')
| -rw-r--r-- | app/wlib/include/CMakeLists.txt | 12 | ||||
| -rw-r--r-- | app/wlib/include/getline.h | 132 | ||||
| -rw-r--r-- | app/wlib/include/getopt.h | 2 | ||||
| -rw-r--r-- | app/wlib/include/wlib.h | 313 | 
4 files changed, 341 insertions, 118 deletions
diff --git a/app/wlib/include/CMakeLists.txt b/app/wlib/include/CMakeLists.txt new file mode 100644 index 0000000..5891b02 --- /dev/null +++ b/app/wlib/include/CMakeLists.txt @@ -0,0 +1,12 @@ +
 +target_include_directories(xtrkcad-wlib PUBLIC ${CMAKE_CURRENT_SOURCE_DIR})
 +
 +target_sources(xtrkcad-wlib
 +    PUBLIC
 +        wlib.h)
 +
 +if(WIN32)
 +    target_sources(xtrkcad-wlib
 +        PRIVATE
 +            getopt.h)
 +endif()
\ No newline at end of file diff --git a/app/wlib/include/getline.h b/app/wlib/include/getline.h new file mode 100644 index 0000000..ffbb699 --- /dev/null +++ b/app/wlib/include/getline.h @@ -0,0 +1,132 @@ +#ifndef GETLINE_H +#define GETLINE_H + +#include <stdio.h> + +#define restrict __restrict +typedef long long ssize_t; + +ssize_t getline(char **restrict lineptr, size_t *restrict n, FILE *restrict stream); +ssize_t getdelim(char **restrict lineptr, size_t *restrict n, int delim, FILE *restrict stream); + +/* +~$ export MANWIDTH=80 +~$ man getline | col -b +GETLINE(3)                 Linux Programmer's Manual                GETLINE(3) + +NAME +       getline, getdelim - delimited string input + +SYNOPSIS +       #include <stdio.h> + +       ssize_t getline(char **lineptr, size_t *n, FILE *stream); + +       ssize_t getdelim(char **lineptr, size_t *n, int delim, FILE *stream); + +   Feature Test Macro Requirements for glibc (see feature_test_macros(7)): + +       getline(), getdelim(): +           Since glibc 2.10: +               _POSIX_C_SOURCE >= 200809L +           Before glibc 2.10: +               _GNU_SOURCE + +DESCRIPTION +       getline()  reads an entire line from stream, storing the address of the +       buffer containing the text into *lineptr.  The  buffer  is  null-termi- +       nated and includes the newline character, if one was found. + +       If  *lineptr  is set to NULL and *n is set 0 before the call, then get- +       line() will allocate a buffer for storing the line.  This buffer should +       be freed by the user program even if getline() failed. + +       Alternatively, before calling getline(), *lineptr can contain a pointer +       to a malloc(3)-allocated buffer *n bytes in size.  If the buffer is not +       large  enough  to  hold the line, getline() resizes it with realloc(3), +       updating *lineptr and *n as necessary. + +       In either case, on a successful call, *lineptr and *n will  be  updated +       to reflect the buffer address and allocated size respectively. + +       getdelim()  works  like  getline(),  except that a line delimiter other +       than newline can be specified as the delimiter argument.  As with  get- +       line(),  a  delimiter  character is not added if one was not present in +       the input before end of file was reached. + +RETURN VALUE +       On success, getline() and getdelim() return the  number  of  characters +       read,  including  the delimiter character, but not including the termi- +       nating null byte ('\0').  This value can be  used  to  handle  embedded +       null bytes in the line read. + +       Both  functions  return -1 on failure to read a line (including end-of- +       file condition).  In the event of an error, errno is  set  to  indicate +       the cause. + +ERRORS +       EINVAL Bad arguments (n or lineptr is NULL, or stream is not valid). + +       ENOMEM Allocation or reallocation of the line buffer failed. + +ATTRIBUTES +       For  an  explanation  of  the  terms  used  in  this  section,  see at- +       tributes(7). + +       +------------------------------------------------+ +       ¦Interface             ¦ Attribute     ¦ Value   ¦ +       +----------------------+---------------+---------¦ +       ¦getline(), getdelim() ¦ Thread safety ¦ MT-Safe ¦ +       +------------------------------------------------+ + +CONFORMING TO +       Both getline() and getdelim() were  originally  GNU  extensions.   They +       were standardized in POSIX.1-2008. + +EXAMPLE +       #define _GNU_SOURCE +       #include <stdio.h> +       #include <stdlib.h> + +       int +       main(int argc, char *argv[]) +       { +           FILE *stream; +           char *line = NULL; +           size_t len = 0; +           ssize_t nread; + +           if (argc != 2) { +               fprintf(stderr, "Usage: %s <file>\n", argv[0]); +               exit(EXIT_FAILURE); +           } + +           stream = fopen(argv[1], "r"); +           if (stream == NULL) { +               perror("fopen"); +               exit(EXIT_FAILURE); +           } + +           while ((nread = getline(&line, &len, stream)) != -1) { +               printf("Retrieved line of length %zu:\n", nread); +               fwrite(line, nread, 1, stdout); +           } + +           free(line); +           fclose(stream); +           exit(EXIT_SUCCESS); +       } + +SEE ALSO +       read(2), fgets(3), fopen(3), fread(3), scanf(3) + +COLOPHON +       This  page  is  part of release 5.05 of the Linux man-pages project.  A +       description of the project, information about reporting bugs,  and  the +       latest     version     of     this    page,    can    be    found    at +       https://www.kernel.org/doc/man-pages/. + +GNU                               2019-03-06                        GETLINE(3) +*/ + +#endif /* GETLINE_H */ diff --git a/app/wlib/include/getopt.h b/app/wlib/include/getopt.h index e9a8354..4a3ced4 100644 --- a/app/wlib/include/getopt.h +++ b/app/wlib/include/getopt.h @@ -17,7 +17,7 @@      You should have received a copy of the GNU General Public License      along with ASPEX; if not, write to the Free Software Foundation, -    Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +    Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA  */  extern char *optarg; diff --git a/app/wlib/include/wlib.h b/app/wlib/include/wlib.h index 7b89bdc..88b2806 100644 --- a/app/wlib/include/wlib.h +++ b/app/wlib/include/wlib.h @@ -7,6 +7,7 @@  #ifdef WINDOWS  #include <stdio.h>  #define FILE_SEP_CHAR "\\" +#include "getline.h"  #else  #define FILE_SEP_CHAR "/"  #endif @@ -23,8 +24,10 @@ 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 wSystemToUTF8(const char *inString, char *outString, +                   unsigned outStringLength); +bool wUTF8ToSystem(const char *inString, char *outString, +                   unsigned outStringLength);  bool wIsUTF8(const char * string);  /* @@ -74,7 +77,7 @@ typedef int wDrawColor;  typedef struct {  	const char * name;  	const char * value; -	} wBalloonHelp_t; +} wBalloonHelp_t;  extern long debugWindow;  extern long wDebugFont; @@ -84,8 +87,10 @@ extern long wDebugFont;   * Bitmap Controls bitmap.c   */ -wControl_p wBitmapCreate(wWin_p parent, wWinPix_t x, wWinPix_t y, long options, const struct wIcon_t * iconP); -wIcon_p wIconCreateBitMap(wWinPix_t w, wWinPix_t h, const char *bits, wDrawColor color); +wControl_p wBitmapCreate(wWin_p parent, wWinPix_t x, wWinPix_t y, long options, +                         const struct wIcon_t * iconP); +wIcon_p wIconCreateBitMap(wWinPix_t w, wWinPix_t h, const char *bits, +                          wDrawColor color);  wIcon_p wIconCreatePixMap(char *pm[]);  void wIconSetColor(wIcon_p ip, wDrawColor color); @@ -103,12 +108,15 @@ typedef enum {  	wBoxThickB,  	wBoxThickW,  	wBoxRidge, -	wBoxTrough } -		wBoxType_e; +	wBoxTrough +} +wBoxType_e;  void wBoxSetSize(wBox_p b, wWinPix_t w, wWinPix_t h); -void wlibDrawBox(wWin_p win, wBoxType_e style, wWinPix_t x, wWinPix_t y, wWinPix_t w, wWinPix_t h); -wBox_p wBoxCreate(wWin_p parent, wWinPix_t bx, wWinPix_t by, const char *labelStr, wBoxType_e boxTyp, wWinPix_t bw, wWinPix_t bh); +void wlibDrawBox(wWin_p win, wBoxType_e style, wWinPix_t x, wWinPix_t y, +                 wWinPix_t w, wWinPix_t h); +wBox_p wBoxCreate(wWin_p parent, wWinPix_t bx, wWinPix_t by, +                  const char *labelStr, wBoxType_e boxTyp, wWinPix_t bw, wWinPix_t bh);  /*------------------------------------------------------------------------------   * @@ -135,13 +143,19 @@ typedef void (*wChoiceCallBack_p)( long, void * );  void wButtonSetLabel(wButton_p bb, const char *labelStr);  void wButtonSetBusy(wButton_p bb, int value); -wButton_p wButtonCreate(wWin_p parent, wWinPix_t x, wWinPix_t y, const char *helpStr, const char *labelStr, long option, wWinPix_t width, wButtonCallBack_p action, void *data); +wButton_p wButtonCreate(wWin_p parent, wWinPix_t x, wWinPix_t y, +                        const char *helpStr, const char *labelStr, long option, wWinPix_t width, +                        wButtonCallBack_p action, void *data);  void wRadioSetValue(wChoice_p bc, long value);  long wRadioGetValue(wChoice_p bc);  void wToggleSetValue(wChoice_p bc, long value);  long wToggleGetValue(wChoice_p b); -wChoice_p wRadioCreate(wWin_p parent, wWinPix_t x, wWinPix_t y, const char *helpStr, const char *labelStr, long option, const char * const *labels, long *valueP, wChoiceCallBack_p action, void *data); -wChoice_p wToggleCreate(wWin_p parent, wWinPix_t x, wWinPix_t y, const char *helpStr, const char *labelStr, long option, const char * const *labels, long *valueP, wChoiceCallBack_p action, void *data); +wChoice_p wRadioCreate(wWin_p parent, wWinPix_t x, wWinPix_t y, +                       const char *helpStr, const char *labelStr, long option, +                       const char * const *labels, long *valueP, wChoiceCallBack_p action, void *data); +wChoice_p wToggleCreate(wWin_p parent, wWinPix_t x, wWinPix_t y, +                        const char *helpStr, const char *labelStr, long option, +                        const char * const *labels, long *valueP, wChoiceCallBack_p action, void *data);  /*------------------------------------------------------------------------------ @@ -166,7 +180,8 @@ void wHelp(			const char * );  #define NT_WARNING	   2  #define NT_ERROR	   4 -wBool_t wNoticeEx( int type, const char * msg, const char * yes, const char * no ); +wBool_t wNoticeEx( int type, const char * msg, const char * yes, +                   const char * no );  unsigned wOpenFileExternal(char *filename); @@ -185,19 +200,20 @@ 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; +                wCursorNone, +                wCursorAppStart, +                wCursorHand, +                wCursorNo, +                wCursorSizeAll, +                wCursorSizeNESW, +                wCursorSizeNS, +                wCursorSizeNWSE, +                wCursorSizeWE, +                wCursorWait, +                wCursorIBeam, +                wCursorCross, +                wCursorQuestion +             } wCursor_t;  void wSetCursor( wDraw_p, wCursor_t );  #define defaultCursor wCursorCross @@ -210,7 +226,8 @@ int wGetKeyState(		void );  void wGetDisplaySize(		wWinPix_t*, wWinPix_t* ); -wIcon_p wIconCreateBitMap(	wWinPix_t, wWinPix_t, const char * bits, wDrawColor ); +wIcon_p wIconCreateBitMap(	wWinPix_t, wWinPix_t, const char * bits, +                                wDrawColor );  wIcon_p wIconCreatePixMap(	char *[] );  void wIconSetColor(		wIcon_p, wDrawColor );  void wIconDraw( wDraw_p d, wIcon_p bm, wWinPix_t x, wWinPix_t y ); @@ -232,8 +249,9 @@ typedef enum {  	wResize_e,  	wState_e,  	wQuit_e, -	wRedraw_e } -		winProcEvent; +	wRedraw_e +} +winProcEvent;  typedef void (*wWinCallBack_p)( wWin_p, winProcEvent, void *, void * );  /* Creation Options */ @@ -252,10 +270,12 @@ typedef void (*wWinCallBack_p)( wWin_p, winProcEvent, void *, void * );  #define F_RESTRICT  (1L<<15)  #define F_NOTTRANSIENT (1L<<16) -wWin_p wWinMainCreate(	        const char *, wWinPix_t, wWinPix_t, const char *, const char *, const char *, -				long, wWinCallBack_p, void * ); -wWin_p wWinPopupCreate(		wWin_p, wWinPix_t, wWinPix_t, const char *, const char *, const char *, -				long, wWinCallBack_p, void * ); +wWin_p wWinMainCreate(	        const char *, wWinPix_t, wWinPix_t, const char *, +                                const char *, const char *, +                                long, wWinCallBack_p, void * ); +wWin_p wWinPopupCreate(		wWin_p, wWinPix_t, wWinPix_t, const char *, +                                const char *, const char *, +                                long, wWinCallBack_p, void * );  wWin_p wMain(			int, char *[] );  void wWinSetBigIcon(		wWin_p, wIcon_p ); @@ -273,7 +293,9 @@ void wMessage(			wWin_p, const char *, wBool_t );  void wWinTop(			wWin_p );  void wWinDoCancel(		wWin_p );  void wWinBlockEnable(		wBool_t ); -void wSetGeometry(wWin_p, wWinPix_t min_width, wWinPix_t max_width, wWinPix_t min_height, wWinPix_t max_height, wWinPix_t base_width, wWinPix_t base_height, double aspect_ratio); +void wSetGeometry(wWin_p, wWinPix_t min_width, wWinPix_t max_width, +                  wWinPix_t min_height, wWinPix_t max_height, wWinPix_t base_width, +                  wWinPix_t base_height, double aspect_ratio);  int wCreateSplash( char *appName, char *appVer );  int wSetSplashInfo( char *msg ); @@ -293,6 +315,7 @@ void wDestroySplash( void );  //#define BO_ENTER    (1L<<10)  #define BO_ENTER    0  #define BO_REPEAT   (1L<<11) +#define BO_IGNFOCUS	(1L<<12)  wWinPix_t wLabelWidth(		const char * );  const char * wControlGetHelp(		wControl_p ); @@ -322,9 +345,10 @@ void wControlLinkedActive( wControl_p b, int active );  #define BS_TRIM			(1<<12)  /* Creation CallBacks */  typedef void (*wStringCallBack_p)( const char *, void *); -wString_p wStringCreate(	wWin_p, wWinPix_t, wWinPix_t, const char *, const char *, long, -				wWinPix_t, char *, wIndex_t, wStringCallBack_p, -				void * ); +wString_p wStringCreate(	wWin_p, wWinPix_t, wWinPix_t, const char *, +                                const char *, long, +                                wWinPix_t, char *, wIndex_t, wStringCallBack_p, +                                void * );  void wStringSetValue(		wString_p, const char * );  void wStringSetWidth(		wString_p, wWinPix_t );  const char * wStringGetValue(		wString_p ); @@ -336,14 +360,16 @@ const char * wStringGetValue(		wString_p );   */  /* Creation CallBacks */ -typedef void (*wIntegerCallBack_p)( long, void * , int); -typedef void (*wFloatCallBack_p)( double, void * , int); -wInteger_p wIntegerCreate(	wWin_p, wWinPix_t, wWinPix_t, const char *, const char *, long, -				wWinPix_t, wInteger_t, wInteger_t, wInteger_t *, -				wIntegerCallBack_p, void * ); -wFloat_p wFloatCreate(		wWin_p, wWinPix_t, wWinPix_t, const char *, const char *, long, -				wWinPix_t, double, double, double *, -				wFloatCallBack_p, void * ); +typedef void (*wIntegerCallBack_p)( long, void *, int); +typedef void (*wFloatCallBack_p)( double, void *, int); +wInteger_p wIntegerCreate(	wWin_p, wWinPix_t, wWinPix_t, const char *, +                                const char *, long, +                                wWinPix_t, wInteger_t, wInteger_t, wInteger_t *, +                                wIntegerCallBack_p, void * ); +wFloat_p wFloatCreate(		wWin_p, wWinPix_t, wWinPix_t, const char *, +                                const char *, long, +                                wWinPix_t, double, double, double *, +                                wFloatCallBack_p, void * );  void wIntegerSetValue(		wInteger_p, wInteger_t );  void wFloatSetValue(		wFloat_p, double );  wInteger_t wIntegerGetValue(	wInteger_p ); @@ -356,7 +382,8 @@ double wFloatGetValue(		wFloat_p );   */  /* Creation CallBacks */ -typedef void (*wListCallBack_p)( wIndex_t, const char *, wIndex_t, void *, void * ); +typedef void (*wListCallBack_p)( wIndex_t, const char *, wIndex_t, void *, +                                 void * );  /* Creation Options */  #define BL_DUP		(1L<<16) @@ -372,12 +399,17 @@ typedef void (*wListCallBack_p)( wIndex_t, const char *, wIndex_t, void *, void  /* lists, droplists and combo boxes */ -wList_p wListCreate(		wWin_p, wWinPix_t, wWinPix_t, const char *, const char *, long, -				long, wWinPix_t, int, wWinPix_t *, wBool_t *, const char **, long *, wListCallBack_p, void * ); -wList_p wDropListCreate(	wWin_p, wWinPix_t, wWinPix_t, const char *, const char *, long, -				long, wWinPix_t, long *, wListCallBack_p, void * ); -				 -wList_p wComboListCreate(wWin_p parent, wWinPix_t x, wWinPix_t y, const char *helpStr, const char *labelStr, long option, long number, wWinPix_t width, long *valueP, wListCallBack_p action, void *data);	 +wList_p wListCreate(		wWin_p, wWinPix_t, wWinPix_t, const char *, const char *, +                                long, +                                long, wWinPix_t, int, wWinPix_t *, wBool_t *, const char **, long *, +                                wListCallBack_p, void * ); +wList_p wDropListCreate(	wWin_p, wWinPix_t, wWinPix_t, const char *, +                                const char *, long, +                                long, wWinPix_t, long *, wListCallBack_p, void * ); + +wList_p wComboListCreate(wWin_p parent, wWinPix_t x, wWinPix_t y, +                         const char *helpStr, const char *labelStr, long option, long number, +                         wWinPix_t width, long *valueP, wListCallBack_p action, void *data);  void wListClear(wList_p b);  void wListSetIndex(wList_p b, int element);  wIndex_t wListFindValue(wList_p b, const char *val); @@ -387,10 +419,12 @@ void *wListGetItemContext(wList_p b, wIndex_t inx);  wBool_t wListGetItemSelected(wList_p b, wIndex_t inx);  wIndex_t wListGetSelectedCount(wList_p b);  void wListSelectAll(wList_p bl); -wBool_t wListSetValues(wList_p b, wIndex_t row, const char *labelStr, wIcon_p bm, void *itemData); +wBool_t wListSetValues(wList_p b, wIndex_t row, const char *labelStr, +                       wIcon_p bm, void *itemData);  void wListDelete(wList_p b, wIndex_t inx);  int wListGetColumnWidths(wList_p bl, int colCnt, wWinPix_t *colWidths); -wIndex_t wListAddValue(wList_p b, const char *labelStr, wIcon_p bm, void *itemData); +wIndex_t wListAddValue(wList_p b, const char *labelStr, wIcon_p bm, +                       void *itemData);  void wListSetSize(wList_p bl, wWinPix_t w, wWinPix_t h);  wIndex_t wListGetValues(	wList_p, char *, int, void * *, void * * ); @@ -413,7 +447,7 @@ void wListSetEditable(		wList_p, wBool_t );  #define wMessageCreate( w, p1, p2, l, p3, m ) wMessageCreateEx( w, p1, p2, l, p3, m, 0 )  wMessage_p wMessageCreateEx(	wWin_p, wWinPix_t, wWinPix_t, const char *, -				wWinPix_t, const char *, long ); +                                wWinPix_t, const char *, long );  void wMessageSetValue(		wMessage_p, const char * );  void wMessageSetWidth(		wMessage_p, wWinPix_t ); @@ -430,7 +464,7 @@ typedef struct {  	int width;  	int x0, y0;  	int x1, y1; -	} wLines_t, * wLines_p; +} wLines_t, * wLines_p;  wLine_p wLineCreate(		wWin_p, const char *, int, wLines_t *); @@ -447,8 +481,9 @@ wLine_p wLineCreate(		wWin_p, const char *, int, wLines_t *);  #define BT_DOBOLD	(1L<<21)  #define BT_TOP		(1L<<20)	/* Show the top of the text */ -wText_p wTextCreate(		wWin_p, wWinPix_t, wWinPix_t, const char *, const char *, long, -				wWinPix_t, wWinPix_t ); +wText_p wTextCreate(		wWin_p, wWinPix_t, wWinPix_t, const char *, const char *, +                                long, +                                wWinPix_t, wWinPix_t );  void wTextClear(		wText_p );  void wTextAppend(		wText_p, const char * );  void wTextSetReadonly(		wText_p, wBool_t ); @@ -459,7 +494,8 @@ void wTextReadFile(		wText_p, const char * );  wBool_t wTextSave(		wText_p, const char * );  wBool_t wTextPrint(		wText_p );  void wTextSetSize(		wText_p, wWinPix_t, wWinPix_t ); -void wTextComputeSize(		wText_p, wWinPix_t, wWinPix_t, wWinPix_t *, wWinPix_t * ); +void wTextComputeSize(		wText_p, wWinPix_t, wWinPix_t, wWinPix_t *, +                                wWinPix_t * );  void wTextSetPosition(		wText_p bt, int pos ); @@ -491,14 +527,16 @@ typedef enum {  	wDrawLineDashDot,  	wDrawLineDashDotDot,  	wDrawLineCenter, -	wDrawLinePhantom} -		wDrawLineType_e; +	wDrawLinePhantom +} +wDrawLineType_e;  typedef enum {  	wPolyLineStraight,  	wPolyLineSmooth, -	wPolyLineRound} -	wPolyLine_e; +	wPolyLineRound +} +wPolyLine_e;  typedef int wAction_t;  #define wActionMove		(1) @@ -518,7 +556,10 @@ typedef int wAction_t;  #define wActionScrollDown (15)  #define wActionScrollLeft (16)  #define wActionScrollRight (17) -#define wActionLast		wActionScrollRight +#define wActionMDown (18) +#define wActionMDrag (19) +#define wActionMUp (20) +#define wActionLast		wActionMUp  #define wRGB(R,G,B)\ @@ -527,7 +568,8 @@ typedef int wAction_t;  /* Creation CallBacks */  typedef void (*wDrawRedrawCallBack_p)( wDraw_p, void *, wWinPix_t, wWinPix_t ); -typedef void (*wDrawActionCallBack_p)(	wDraw_p, void*, wAction_t, wDrawPix_t, wDrawPix_t ); +typedef void (*wDrawActionCallBack_p)(	wDraw_p, void*, wAction_t, wDrawPix_t, +                                        wDrawPix_t );  /* Creation Options */  #define BD_TICKS	(1L<<25) @@ -538,31 +580,37 @@ typedef void (*wDrawActionCallBack_p)(	wDraw_p, void*, wAction_t, wDrawPix_t, wD  /* Create: */  wDraw_p wDrawCreate(		wWin_p, wWinPix_t, wWinPix_t, const char *, long, -				wWinPix_t, wWinPix_t, void *, -				wDrawRedrawCallBack_p, wDrawActionCallBack_p ); +                                wWinPix_t, wWinPix_t, void *, +                                wDrawRedrawCallBack_p, wDrawActionCallBack_p );  /* Draw: */  void wDrawLine(			wDraw_p, wDrawPix_t, wDrawPix_t, wDrawPix_t, wDrawPix_t, -				wDrawWidth, wDrawLineType_e, wDrawColor, -				wDrawOpts ); +                                wDrawWidth, wDrawLineType_e, wDrawColor, +                                wDrawOpts );  #define double2wAngle_t( A )	(A)  typedef double wAngle_t; -void wDrawArc(			wDraw_p, wDrawPix_t, wDrawPix_t, wDrawPix_t, wAngle_t, wAngle_t, -				int, wDrawWidth, wDrawLineType_e, wDrawColor, -				wDrawOpts ); +void wDrawArc(			wDraw_p, wDrawPix_t, wDrawPix_t, wDrawPix_t, wAngle_t, +                                wAngle_t, +                                int, wDrawWidth, wDrawLineType_e, wDrawColor, +                                wDrawOpts );  void wDrawPoint(		wDraw_p, wDrawPix_t, wDrawPix_t, wDrawColor, wDrawOpts );  #define double2wFontSize_t( FS )	(FS)  typedef double wFontSize_t; -void wDrawString(		wDraw_p, wDrawPix_t, wDrawPix_t, wAngle_t, const char *, wFont_p, -		  		wFontSize_t, wDrawColor, wDrawOpts ); -void wDrawFilledRectangle(	wDraw_p, wDrawPix_t, wDrawPix_t, wDrawPix_t, wDrawPix_t, -				wDrawColor, wDrawOpts ); -void wDrawPolygon(	wDraw_p, wDrawPix_t [][2], wPolyLine_e [], wIndex_t, wDrawColor, wDrawWidth, wDrawLineType_e, -				wDrawOpts, int, int ); -void wDrawFilledCircle(		wDraw_p, wDrawPix_t, wDrawPix_t, wDrawPix_t, wDrawColor, wDrawOpts ); - -void wDrawGetTextSize(		wDrawPix_t *, wDrawPix_t *, wDrawPix_t *, wDrawPix_t *, wDraw_p, const char *, wFont_p, -				wFontSize_t ); +void wDrawString(		wDraw_p, wDrawPix_t, wDrawPix_t, wAngle_t, const char *, +                                wFont_p, +                                wFontSize_t, wDrawColor, wDrawOpts ); +void wDrawFilledRectangle(	wDraw_p, wDrawPix_t, wDrawPix_t, wDrawPix_t, +                                wDrawPix_t, +                                wDrawColor, wDrawOpts ); +void wDrawPolygon(	wDraw_p, wDrawPix_t [][2], wPolyLine_e [], wIndex_t, +                        wDrawColor, wDrawWidth, wDrawLineType_e, +                        wDrawOpts, int, int ); +void wDrawFilledCircle(		wDraw_p, wDrawPix_t, wDrawPix_t, wDrawPix_t, +                                wDrawColor, wDrawOpts ); + +void wDrawGetTextSize(		wDrawPix_t *, wDrawPix_t *, wDrawPix_t *, wDrawPix_t *, +                                wDraw_p, const char *, wFont_p, +                                wFontSize_t );  void wDrawClear(		wDraw_p );  void wDrawClearTemp(		wDraw_p );  wBool_t wDrawSetTempMode(	wDraw_p, wBool_t ); @@ -580,9 +628,10 @@ void wDrawSetSize(		wDraw_p, wWinPix_t, wWinPix_t, void * );  void wDrawGetSize(		wDraw_p, wWinPix_t *, wWinPix_t * );  /* Bitmaps */ -wDrawBitMap_p wDrawBitMapCreate( wDraw_p, int, int, int, int, const unsigned char * ); +wDrawBitMap_p wDrawBitMapCreate( wDraw_p, int, int, int, int, +                                 const unsigned char * );  void wDrawBitMap(		wDraw_p, wDrawBitMap_p, wDrawPix_t, wDrawPix_t, -				wDrawColor, wDrawOpts ); +                                wDrawColor, wDrawOpts );  wDraw_p wBitMapCreate(		wWinPix_t, wWinPix_t, int );  wBool_t wBitMapDelete(		wDraw_p ); @@ -594,7 +643,8 @@ void wDrawSaveImage(		wDraw_p );  void wDrawRestoreImage(		wDraw_p );  int wDrawSetBackground(    wDraw_p, char * path, char ** error);  void wDrawCloneBackground(wDraw_p from, wDraw_p to); -void wDrawShowBackground(   wDraw_p, wWinPix_t pos_x, wWinPix_t pos_y, wWinPix_t width, wAngle_t angle, int screen); +void wDrawShowBackground(   wDraw_p, wWinPix_t pos_x, wWinPix_t pos_y, +                            wWinPix_t width, wAngle_t angle, int screen);  /*------------------------------------------------------------------------------   * @@ -665,17 +715,19 @@ typedef enum {  	wAccelKey_F10,  	wAccelKey_F11,  	wAccelKey_F12, -    wAccelKey_Numpad_Add, -    wAccelKey_Numpad_Subtract, -	wAccelKey_LineFeed } -	wAccelKey_e; +	wAccelKey_Numpad_Add, +	wAccelKey_Numpad_Subtract, +	wAccelKey_LineFeed +} +wAccelKey_e;  typedef enum {  	wModKey_None,  	wModKey_Alt,  	wModKey_Shift, -	wModKey_Ctrl } -	wModKey_e; +	wModKey_Ctrl +} +wModKey_e;  void wDoAccelHelp( wAccelKey_e key, void * ); @@ -689,13 +741,14 @@ typedef void (*wMenuTraceCallBack_p)( wMenu_p, const char *, void * );  /* Creation Options */  #define BM_ICON		(1L<<0) -wMenu_p wMenuCreate(		wWin_p, wWinPix_t, wWinPix_t, const char *, const char *, long ); +wMenu_p wMenuCreate(		wWin_p, wWinPix_t, wWinPix_t, const char *, const char *, +                                long );  wMenu_p wMenuBarAdd(		wWin_p, const char *, const char * );  wMenuPush_p wMenuPushCreate(	wMenu_p, const char *, const char *, long, -				wMenuCallBack_p, void * ); +                                wMenuCallBack_p, void * );  wMenuRadio_p wMenuRadioCreate(	wMenu_p, const char *, const char *, long, -				wMenuCallBack_p, void * ); +                                wMenuCallBack_p, void * );  wMenu_p wMenuMenuCreate(	wMenu_p, const char *, const char * );  wMenu_p wMenuPopupCreate(	wWin_p, const char * ); @@ -708,7 +761,8 @@ void wMenuListDelete(		wMenuList_p, const char * );  const char * wMenuListGet(	wMenuList_p, int, void ** );  void wMenuListClear(		wMenuList_p ); -wMenuToggle_p wMenuToggleCreate(	wMenu_p, const char *, const char *, long, wBool_t, wMenuCallBack_p, void * ); +wMenuToggle_p wMenuToggleCreate(	wMenu_p, const char *, const char *, long, +                                        wBool_t, wMenuCallBack_p, void * );  wBool_t wMenuToggleSet(		wMenuToggle_p, wBool_t );  wBool_t wMenuToggleGet(		wMenuToggle_p );  void wMenuToggleEnable(		wMenuToggle_p, wBool_t ); @@ -734,11 +788,13 @@ struct wFilSel_t;  typedef enum {  	FS_SAVE,  	FS_LOAD, -	FS_UPDATE } -		wFilSelMode_e; +	FS_UPDATE +} +wFilSelMode_e;  typedef int (*wFilSelCallBack_p)( int files, char ** fileName, void * ); -struct wFilSel_t * wFilSelCreate(wWin_p, wFilSelMode_e, int, const char *, const char *, -				wFilSelCallBack_p, void * ); +struct wFilSel_t * wFilSelCreate(wWin_p, wFilSelMode_e, int, const char *, +                                 const char *, +                                 wFilSelCallBack_p, void * );  int wFilSelect(			struct wFilSel_t *, const char * ); @@ -750,8 +806,9 @@ int wFilSelect(			struct wFilSel_t *, const char * );  typedef void (*wColorSelectButtonCallBack_p)( void *, wDrawColor );  wBool_t wColorSelect( const char *, wDrawColor * ); -wButton_p wColorSelectButtonCreate( wWin_p, wWinPix_t, wWinPix_t, const char *, const char *, -        long, wWinPix_t, wDrawColor *, wColorSelectButtonCallBack_p, void * ); +wButton_p wColorSelectButtonCreate( wWin_p, wWinPix_t, wWinPix_t, const char *, +                                    const char *, +                                    long, wWinPix_t, wDrawColor *, wColorSelectButtonCallBack_p, void * );  void wColorSelectButtonSetColor( wButton_p, wDrawColor );  wDrawColor wColorSelectButtonGetColor( wButton_p ); @@ -768,20 +825,30 @@ char * wPrefGetStringExt(const char *section, const char *name);  void wPrefsLoad(char * name);  void wPrefSetInteger(const char *, const char *, long ); -wBool_t wPrefGetInteger(const char *section, const char *name, long *result, long defaultValue); -wBool_t wPrefGetIntegerBasic(const char *section, const char *name, long *result, long defaultValue); -wBool_t wPrefGetIntegerExt(const char *section, const char *name, long *result, long defaultValue); +wBool_t wPrefGetInteger(const char *section, const char *name, long *result, +                        long defaultValue); +wBool_t wPrefGetIntegerBasic(const char *section, const char *name, +                             long *result, long defaultValue); +wBool_t wPrefGetIntegerExt(const char *section, const char *name, long *result, +                           long defaultValue);  void wPrefSetFloat(		const char *, const char *, double ); -wBool_t wPrefGetFloat(const char *section, const char *name, double *result, double defaultValue); -wBool_t wPrefGetFloatBasic(const char *section, const char *name, double *result, double defaultValue); -wBool_t wPrefGetFloatExt(const char *section, const char *name, double *result, double defaultValue); - -const char * wPrefGetSectionItem( const char * sectionName, wIndex_t * index, const char ** name ); +wBool_t wPrefGetFloat(const char *section, const char *name, double *result, +                      double defaultValue); +wBool_t wPrefGetFloatBasic(const char *section, const char *name, +                           double *result, double defaultValue); +wBool_t wPrefGetFloatExt(const char *section, const char *name, double *result, +                         double defaultValue); + +//const char * wPrefGetSectionItem( const char * sectionName, wIndex_t * index, +//                                  const char ** name );  void wPrefFlush( char * name); -void wPrefReset(		void ); +void wPrefReset( void ); +void wPrefTokenize(char* line, char** section, char** name, char** value); +void wPrefFormatLine(const char* section, const char* name, +                    const char* value, char* result); -void CleanupCustom( void ); +//void CleanupCustom( void );  /*------------------------------------------------------------------------------   * @@ -789,12 +856,12 @@ void CleanupCustom( void );   */  wStatus_p wStatusCreate( -    wWin_p	parent, -    wWinPix_t	x, -    wWinPix_t	y, -    const char 	* labelStr, -    wWinPix_t	width, -    const char	*message ); +        wWin_p	parent, +        wWinPix_t	x, +        wWinPix_t	y, +        const char 	* labelStr, +        wWinPix_t	width, +        const char	*message );  wWinPix_t wStatusGetWidth(const char *testString);  wWinPix_t wStatusGetHeight(long flags); @@ -802,6 +869,18 @@ wWinPix_t wStatusGetHeight(long flags);  void wStatusSetValue(wStatus_p b, const char * arg);  void wStatusSetWidth(wStatus_p b, wWinPix_t width); +/*------------------------------------------------------------------------------ + * + * System-Information + */ + +char* wGetTempPath(void); +char* wGetOSVersion(void); +char* wGetProfileFilename(void); +char* wGetUserID(void); +const char* wGetUserHomeRootDir(void); +const char *wGetPlatformVersion(void); +  /*-------------------------------------------------------------------------------   * User Preferences   */  | 
