diff options
Diffstat (limited to 'ldmicro/lib/linuxUI/linuxLD.h')
-rw-r--r-- | ldmicro/lib/linuxUI/linuxLD.h | 88 |
1 files changed, 82 insertions, 6 deletions
diff --git a/ldmicro/lib/linuxUI/linuxLD.h b/ldmicro/lib/linuxUI/linuxLD.h index c6079d5..062bc49 100644 --- a/ldmicro/lib/linuxUI/linuxLD.h +++ b/ldmicro/lib/linuxUI/linuxLD.h @@ -2,6 +2,10 @@ #define __LINUX_LD__ #include "linuxUI.h" +#include <ctype.h> +#include <vector> +#include <algorithm> +#include <sys/mman.h> /// common windows referances for linux @@ -10,14 +14,21 @@ /// CALLBACK or __stdcall os defined empty #define CALLBACK #define CONST const -/// typedefs + +#define HEAP_ZERO_MEMORY 0x00000008 + +/// Typedefs //typedef int64_t __int64; typedef bool BOOL; typedef unsigned char BYTE; +typedef unsigned short WORD; typedef unsigned int DWORD; +typedef unsigned int UINT; +typedef size_t SIZE_T; typedef long LONG; typedef wchar_t WCHAR; typedef char CHAR; + typedef CONST WCHAR *LPCWSTR; typedef CONST CHAR *LPCSTR; /// should be __nullterminated @@ -36,8 +47,13 @@ typedef CHAR *LPSTR; typedef LPSTR LPTSTR; #endif -/// all handles will hold a GtkWindow* type -typedef void* PVOID; +typedef void *PVOID; +typedef void *LPVOID; +typedef PVOID HFONT; +typedef PVOID HMODULE; +typedef PVOID HHOOK; +typedef PVOID HBRUSH; +typedef PVOID HFONT; typedef PVOID HANDLE; typedef HANDLE HINSTANCE; typedef HANDLE HDC; @@ -56,9 +72,17 @@ typedef unsigned int UINT_PTR; #endif typedef UINT_PTR WPARAM; -typedef unsigned int UINT; -/// custom classes +#if defined(__UNIX64) + typedef __int64_t LONG_PTR; +#else + typedef long LONG_PTR; +#endif + +typedef LONG_PTR LPARAM; +typedef LONG_PTR LRESULT; + +/// Custom classes class COLORREF : public GdkRGBA{ public: COLORREF() @@ -77,6 +101,58 @@ class COLORREF : public GdkRGBA{ } }; -/// functions +/// Custom structures +typedef struct HeapRecordChunckTag{ + PVOID Chunck; + SIZE_T dwSize; +} HEAPCHUNCK; + +typedef struct HeapRecordTag{ + PVOID hHeap; + DWORD HeapID; + std::vector<HEAPCHUNCK> Element; + SIZE_T dwMaximumSize; + SIZE_T dwSize; + SIZE_T dwAllocatedSizeOffset; +} HEAPRECORD; + +typedef struct tagSCROLLINFO { + UINT cbSize; + UINT fMask; + int nMin; + int nMax; + UINT nPage; + int nPos; + int nTrackPos; +} SCROLLINFO, *LPCSCROLLINFO; + +typedef struct tagNMHDR { + HWND hwndFrom; + UINT_PTR idFrom; + UINT code; +} NMHDR; + +/// Variables +extern std::vector<HEAPRECORD> HeapRecord; + +/// Functions +HANDLE HeapCreate( + DWORD flOptions, + SIZE_T dwInitialSize, + SIZE_T dwMaximumSize); + +LPVOID HeapAlloc( + HANDLE hHeap, + DWORD dwFlags, + SIZE_T dwBytes); + +BOOL HeapFree( + HANDLE hHeap, + DWORD dwFlags, + LPVOID lpMem); + +/// functions to be ported +void OutputDebugString(char*); +double GetTickCount(void); #endif
\ No newline at end of file |