Author: jgardou Date: Thu Jul 15 20:49:51 2010 New Revision: 48068
URL: http://svn.reactos.org/svn/reactos?rev=48068&view=rev Log: Sync with trunk 48067
Added: branches/reactos-yarotows/dll/3rdparty/libtiff/rosdiff.patch - copied unchanged from r48067, trunk/reactos/dll/3rdparty/libtiff/rosdiff.patch branches/reactos-yarotows/include/reactos/libs/libtiff/rosdiff.patch - copied unchanged from r48067, trunk/reactos/include/reactos/libs/libtiff/rosdiff.patch Modified: branches/reactos-yarotows/ (props changed) branches/reactos-yarotows/base/applications/network/ping/ping.c branches/reactos-yarotows/base/applications/regedit/childwnd.c branches/reactos-yarotows/base/applications/regedit/hexedit.c branches/reactos-yarotows/config.template.rbuild branches/reactos-yarotows/dll/3rdparty/libtiff/libtiff.rbuild branches/reactos-yarotows/dll/3rdparty/libtiff/tif_open.c branches/reactos-yarotows/dll/win32/setupapi/setupcab.c branches/reactos-yarotows/dll/win32/user32/windows/cursoricon.c branches/reactos-yarotows/include/psdk/shellapi.h branches/reactos-yarotows/include/psdk/wingdi.h branches/reactos-yarotows/include/psdk/ws2ipdef.h branches/reactos-yarotows/include/psdk/ws2tcpip.h branches/reactos-yarotows/include/reactos/libs/libtiff/tiffio.h branches/reactos-yarotows/include/reactos/winsock/msafd.h (props changed) branches/reactos-yarotows/include/reactos/winsock/msafdlib.h (props changed) branches/reactos-yarotows/include/reactos/winsock/mswinsock.h (props changed) branches/reactos-yarotows/include/reactos/winsock/rnr20lib.h (props changed) branches/reactos-yarotows/include/reactos/winsock/wsmobile.h (props changed) branches/reactos-yarotows/ntoskrnl/ex/rundown.c branches/reactos-yarotows/ntoskrnl/include/internal/amd64/ke.h branches/reactos-yarotows/ntoskrnl/include/internal/mm.h branches/reactos-yarotows/ntoskrnl/include/ntoskrnl.h branches/reactos-yarotows/ntoskrnl/io/iomgr/adapter.c branches/reactos-yarotows/ntoskrnl/kd64/kddata.c branches/reactos-yarotows/ntoskrnl/ke/clock.c branches/reactos-yarotows/ntoskrnl/mm/ARM3/miarm.h branches/reactos-yarotows/subsystems/win32/csrss/win32csr/ (props changed) branches/reactos-yarotows/subsystems/win32/win32k/objects/cliprgn.c
Propchange: branches/reactos-yarotows/ ------------------------------------------------------------------------------ --- svn:mergeinfo (original) +++ svn:mergeinfo Thu Jul 15 20:49:51 2010 @@ -1,4 +1,4 @@ /branches/header-work:45691-47721 /branches/ros-amd64-bringup:36852 /branches/ros-amd64-bringup/reactos:34711-34712,34741,34743,34780-34782,34803,34812,34839,34842,34864,34870,34874,34877,34908-34909,34917,34965,35323-35324,35347-35348,35361,35436,35509,35515,35588,35655,35683,35739,35746,35762,35771,35777,35781,35789,35805,35823,35827,35902,35904-35906,35942,35947-35949,35952-35953,35966,36011-36013,36172,36360,36380,36388-36389,36393,36397,36445,36502-36503,36505,36570,36614,36898-36899,36930,36936,36949,36951,36958,36961,36964,36969,36972,36987-36988,36992,37323,37434,37472,37475,37536,37820-37821,37868-37869,37873,37990-37991,38013-38014,38092,38100,38148-38151,38264-38265,38268,38355,39151,39333,39335,39345,39639,40120,40122-40123,40125,40127-40128,40155,40247,40324,40608,40753,40927-40928,40986-40987,40989,40991,40993,40995-40996,41000-41001,41027-41030,41044-41045,41047-41050,41052,41070,41082-41086,41097-41098,41101,41449,41479-41480,41484-41485,41499-41500,41502,41531,41536,41540,41546-41547,41549,43080,43426,43454,43506,43566,43574,43598,43600-43602,43604-43605,43677,43682,43757,43775,43836,43838-43840,43857-43858,43860,43905-43907,43965,43969,43992,44002,44036-44037,44039-44040,44044-44045,44065,44095,44123,44144,44205,44238,44294,44338-44339,44385,44389,44391,44426,44460,44467-44468,44470-44471,44499,44501,44503-44504,44506,44510-44512,44521,44523-44526,44530,44540,44601,44634,44639,44772,44818,45124,45126-45127,46394,46478,46511,46523-46524,46526,46534-46535,46537-46539,46589,46805,47472,47846-47847,47878,47882 -/trunk/reactos:45219-48040 +/trunk/reactos:45219-48067
Modified: branches/reactos-yarotows/base/applications/network/ping/ping.c URL: http://svn.reactos.org/svn/reactos/branches/reactos-yarotows/base/applicatio... ============================================================================== --- branches/reactos-yarotows/base/applications/network/ping/ping.c [iso-8859-1] (original) +++ branches/reactos-yarotows/base/applications/network/ping/ping.c [iso-8859-1] Thu Jul 15 20:49:51 2010 @@ -555,7 +555,6 @@ } if (Status == SOCKET_ERROR) { - LostCount++; if (WSAGetLastError() == WSAEHOSTUNREACH) printf("Destination host unreachable.\n"); else
Modified: branches/reactos-yarotows/base/applications/regedit/childwnd.c URL: http://svn.reactos.org/svn/reactos/branches/reactos-yarotows/base/applicatio... ============================================================================== --- branches/reactos-yarotows/base/applications/regedit/childwnd.c [iso-8859-1] (original) +++ branches/reactos-yarotows/base/applications/regedit/childwnd.c [iso-8859-1] Thu Jul 15 20:49:51 2010 @@ -297,17 +297,6 @@ break; } return CallWindowProc(oldwndproc, hwnd, uMsg, wParam, lParam); -} - -/* fix coords to top-left when SHIFT-F10 is pressed */ -void FixPointIfContext(POINTS *pt, HWND hWnd) -{ - if (pt->x == -1 && pt->y == -1) { - POINT p = { 0, 0 }; - ClientToScreen(hWnd, &p); - pt->x = (WORD)(p.x); - pt->y = (WORD)(p.y); - } }
/******************************************************************************* @@ -577,16 +566,29 @@
case WM_CONTEXTMENU: { - POINTS pt; + POINT pt; if((HWND)wParam == pChildWnd->hListWnd) { int i, cnt; BOOL IsDefault; - pt.x = LOWORD(lParam); - pt.y = HIWORD(lParam); + pt.x = (short) LOWORD(lParam); + pt.y = (short) HIWORD(lParam); cnt = ListView_GetSelectedCount(pChildWnd->hListWnd); i = ListView_GetNextItem(pChildWnd->hListWnd, -1, LVNI_FOCUSED | LVNI_SELECTED); - FixPointIfContext(&pt, pChildWnd->hListWnd); + if (pt.x == -1 && pt.y == -1) + { + RECT rc; + if (i != -1) + { + rc.left = LVIR_BOUNDS; + SendMessage(pChildWnd->hListWnd, LVM_GETITEMRECT, i, (LPARAM) &rc); + pt.x = rc.left + 8; + pt.y = rc.top + 8; + } + else + pt.x = pt.y = 0; + } + ClientToScreen(pChildWnd->hListWnd, &pt); if(i == -1) { TrackPopupMenu(GetSubMenu(hPopupMenus, PM_NEW), TPM_RIGHTBUTTON, pt.x, pt.y, 0, hFrameWnd, NULL); @@ -620,14 +622,33 @@ int iLastPos; WORD wID;
- pt.x = LOWORD(lParam); - pt.y = HIWORD(lParam); - hti.pt.x = pt.x; - hti.pt.y = pt.y; - ScreenToClient(pChildWnd->hTreeWnd, &hti.pt); - (void)TreeView_HitTest(pChildWnd->hTreeWnd, &hti); - - if ((hti.flags & TVHT_ONITEM) != 0 || (pt.x == -1 && pt.y == -1)) + pt.x = (short) LOWORD(lParam); + pt.y = (short) HIWORD(lParam); + + if (pt.x == -1 && pt.y == -1) + { + RECT rc; + hti.hItem = TreeView_GetSelection(pChildWnd->hTreeWnd); + if (hti.hItem != NULL) + { + TreeView_GetItemRect(pChildWnd->hTreeWnd, hti.hItem, &rc, TRUE); + pt.x = rc.left + 8; + pt.y = rc.top + 8; + ClientToScreen(pChildWnd->hTreeWnd, &pt); + hti.flags = TVHT_ONITEM; + } + else + hti.flags = 0; + } + else + { + hti.pt.x = pt.x; + hti.pt.y = pt.y; + ScreenToClient(pChildWnd->hTreeWnd, &hti.pt); + (void)TreeView_HitTest(pChildWnd->hTreeWnd, &hti); + } + + if (hti.flags & TVHT_ONITEM) { hContextMenu = GetSubMenu(hPopupMenus, PM_TREECONTEXT); (void)TreeView_SelectItem(pChildWnd->hTreeWnd, hti.hItem); @@ -688,7 +709,6 @@ s += _tcslen(s) + 1; } } - FixPointIfContext(&pt, pChildWnd->hTreeWnd); TrackPopupMenu(hContextMenu, TPM_RIGHTBUTTON, pt.x, pt.y, 0, pChildWnd->hWnd, NULL); } }
Modified: branches/reactos-yarotows/base/applications/regedit/hexedit.c URL: http://svn.reactos.org/svn/reactos/branches/reactos-yarotows/base/applicatio... ============================================================================== --- branches/reactos-yarotows/base/applications/regedit/hexedit.c [iso-8859-1] (original) +++ branches/reactos-yarotows/base/applications/regedit/hexedit.c [iso-8859-1] Thu Jul 15 20:49:51 2010 @@ -44,6 +44,10 @@ INT CaretCol; INT CaretLine; BOOL InMid; + + INT SelStart; + INT SelEnd; + BOOL SelOnField; } HEXEDIT_DATA, *PHEXEDIT_DATA;
/* hit test codes */ @@ -181,13 +185,25 @@ HEXEDIT_PaintLines(PHEXEDIT_DATA hed, HDC hDC, DWORD ScrollPos, DWORD First, DWORD Last, RECT *rc) { DWORD dx, dy, linestart; - INT x; + INT i, isave, i0, i1, x; PBYTE buf, current, end, line; size_t bufsize; TCHAR hex[3], addr[17]; - RECT rct; + RECT rct, rct2;
FillRect(hDC, rc, (HBRUSH)(COLOR_WINDOW + 1)); + SetTextColor(hDC, GetSysColor(COLOR_WINDOWTEXT)); + + if (hed->SelStart < hed->SelEnd) + { + i0 = hed->SelStart; + i1 = hed->SelEnd; + } + else + { + i0 = hed->SelEnd; + i1 = hed->SelStart; + }
if(hed->hBuffer) { @@ -212,9 +228,11 @@ end = buf + bufsize; dy = First * hed->LineHeight; linestart = (ScrollPos + First) * hed->ColumnsPerLine; + i = linestart; current = buf + linestart; Last = min(hed->nLines - ScrollPos, Last);
+ SetBkMode(hDC, TRANSPARENT); while(First <= Last && current < end) { DWORD dh; @@ -236,25 +254,54 @@ /* draw hex map */ dx += (hed->CharWidth / 2); line = current; + isave = i; for(x = 0; x < hed->ColumnsPerLine && current < end; x++) { rct.left += dh; rct.right += dh;
_stprintf(hex, _T("%02X"), *(current++)); - ExtTextOut(hDC, dx, dy, ETO_OPAQUE, &rct, hex, 2, NULL); + if (i0 <= i && i < i1) + { + rct2.left = dx; + rct2.top = dy; + rct2.right = dx + hed->CharWidth * 2 + 1; + rct2.bottom = dy + hed->LineHeight; + InflateRect(&rct2, hed->CharWidth / 2, 0); + FillRect(hDC, &rct2, (HBRUSH)(COLOR_HIGHLIGHT + 1)); + SetTextColor(hDC, GetSysColor(COLOR_HIGHLIGHTTEXT)); + ExtTextOut(hDC, dx, dy, 0, &rct, hex, 2, NULL); + SetTextColor(hDC, GetSysColor(COLOR_WINDOWTEXT)); + } + else + ExtTextOut(hDC, dx, dy, ETO_OPAQUE, &rct, hex, 2, NULL); dx += dh; + i++; }
/* draw ascii map */ dx = ((4 + hed->AddressSpacing + hed->SplitSpacing + (hed->ColumnsPerLine * 3)) * hed->CharWidth); current = line; + i = isave; for(x = 0; x < hed->ColumnsPerLine && current < end; x++) { _stprintf(hex, _T("%C"), *(current++)); hex[0] = ((hex[0] & _T('\x007f')) >= _T(' ') ? hex[0] : _T('.')); - TextOut(hDC, dx, dy, hex, 1); + if (i0 <= i && i < i1) + { + rct2.left = dx; + rct2.top = dy; + rct2.right = dx + hed->CharWidth; + rct2.bottom = dy + hed->LineHeight; + FillRect(hDC, &rct2, (HBRUSH)(COLOR_HIGHLIGHT + 1)); + SetTextColor(hDC, GetSysColor(COLOR_HIGHLIGHTTEXT)); + TextOut(hDC, dx, dy, hex, 1); + SetTextColor(hDC, GetSysColor(COLOR_WINDOWTEXT)); + } + else + TextOut(hDC, dx, dy, hex, 1); dx += hed->CharWidth; + i++; }
dy += hed->LineHeight; @@ -291,14 +338,14 @@ }
pt.x -= d; - d = (3 * hed->ColumnsPerLine * hed->CharWidth); + d = ((3 * hed->ColumnsPerLine + 1) * hed->CharWidth); if(pt.x <= d) { return HEHT_HEXDUMP; }
pt.x -= d; - d = (hed->SplitSpacing * hed->CharWidth); + d = ((hed->SplitSpacing - 1) * hed->CharWidth); if(pt.x <= d) { return HEHT_HEXDUMPSPACING; @@ -501,7 +548,6 @@ hed->AddressSpacing = 2; hed->SplitSpacing = 2; hed->EditingField = TRUE; /* in hexdump field */ - hed->InMid = FALSE;
SetWindowLongPtr(hWnd, 0, (DWORD_PTR)hed); HEXEDIT_Update(hed); @@ -689,7 +735,7 @@ FillRect(ps.hdc, &rc, (HBRUSH)(COLOR_WINDOW + 1)); goto epaint; } - if(!(hbmp = CreateCompatibleBitmap(hTempDC, ps.rcPaint.right, ps.rcPaint.bottom))) + if(!(hbmp = CreateCompatibleBitmap(ps.hdc, ps.rcPaint.right, ps.rcPaint.bottom))) { FillRect(ps.hdc, &rc, (HBRUSH)(COLOR_WINDOW + 1)); DeleteDC(hTempDC); @@ -705,7 +751,7 @@ DeleteObject(hbmp); DeleteDC(hTempDC);
- epaint: +epaint: EndPaint(hed->hWndSelf, &ps); }
@@ -755,19 +801,75 @@ { BOOL NewField; POINT EditPos; - DWORD Hit = HEXEDIT_HitRegionTest(hed, Pt); + DWORD Hit;
UNREFERENCED_PARAMETER(Buttons); SetFocus(hed->hWndSelf);
- hed->Index = HEXEDIT_IndexFromPoint(hed, Pt, Hit, &EditPos, &NewField); - hed->EditingField = NewField; + if (GetAsyncKeyState(VK_SHIFT) < 0) + { + if (hed->SelOnField) + hed->Index = HEXEDIT_IndexFromPoint(hed, Pt, HEHT_HEXDUMP, &EditPos, &NewField); + else + hed->Index = HEXEDIT_IndexFromPoint(hed, Pt, HEHT_ASCIIDUMP, &EditPos, &NewField); + hed->SelEnd = hed->Index; + hed->EditingField = hed->SelOnField; + } + else + { + Hit = HEXEDIT_HitRegionTest(hed, Pt); + hed->Index = HEXEDIT_IndexFromPoint(hed, Pt, Hit, &EditPos, &NewField); + hed->SelStart = hed->SelEnd = hed->Index; + hed->SelOnField = hed->EditingField = NewField; + SetCapture(hed->hWndSelf); + } hed->CaretCol = EditPos.x; hed->CaretLine = EditPos.y; hed->InMid = FALSE; - + InvalidateRect(hed->hWndSelf, NULL, FALSE); HEXEDIT_MoveCaret(hed, TRUE);
+ return 0; +} + +static LRESULT +HEXEDIT_WM_LBUTTONUP(PHEXEDIT_DATA hed, INT Buttons, POINTS Pt) +{ + BOOL NewField; + POINT EditPos; + if (GetCapture() == hed->hWndSelf) + { + if (hed->SelOnField) + hed->Index = HEXEDIT_IndexFromPoint(hed, Pt, HEHT_HEXDUMP, &EditPos, &NewField); + else + hed->Index = HEXEDIT_IndexFromPoint(hed, Pt, HEHT_ASCIIDUMP, &EditPos, &NewField); + hed->CaretCol = EditPos.x; + hed->CaretLine = EditPos.y; + hed->SelEnd = hed->Index; + ReleaseCapture(); + InvalidateRect(hed->hWndSelf, NULL, FALSE); + HEXEDIT_MoveCaret(hed, TRUE); + } + return 0; +} + +static LRESULT +HEXEDIT_WM_MOUSEMOVE(PHEXEDIT_DATA hed, INT Buttons, POINTS Pt) +{ + BOOL NewField; + POINT EditPos; + if (GetCapture() == hed->hWndSelf) + { + if (hed->SelOnField) + hed->Index = HEXEDIT_IndexFromPoint(hed, Pt, HEHT_HEXDUMP, &EditPos, &NewField); + else + hed->Index = HEXEDIT_IndexFromPoint(hed, Pt, HEHT_ASCIIDUMP, &EditPos, &NewField); + hed->CaretCol = EditPos.x; + hed->CaretLine = EditPos.y; + hed->SelEnd = hed->Index; + InvalidateRect(hed->hWndSelf, NULL, FALSE); + HEXEDIT_MoveCaret(hed, TRUE); + } return 0; }
@@ -776,6 +878,8 @@ { size_t bufsize; PBYTE buf; + INT i0, i1; + if(GetKeyState(VK_MENU) & 0x8000) { return FALSE; @@ -783,133 +887,215 @@
bufsize = (hed->hBuffer ? LocalSize(hed->hBuffer) : 0);
+ if (hed->SelStart < hed->SelEnd) + { + i0 = hed->SelStart; + i1 = hed->SelEnd; + } + else + { + i0 = hed->SelEnd; + i1 = hed->SelStart; + } + switch(VkCode) { case VK_DELETE: - if (hed->InMid && hed->EditingField) + if (hed->SelStart != hed->SelEnd) { buf = (PBYTE) LocalLock(hed->hBuffer); if (buf) { - MoveMemory(buf + hed->Index, buf + hed->Index + 1, - bufsize - hed->Index - 1); + MoveMemory(buf + i0, buf + i1, bufsize - i1); LocalUnlock(hed->hBuffer); + } + HexEdit_SetMaxBufferSize(hed->hWndSelf, bufsize - (i1 - i0)); + hed->InMid = FALSE; + hed->Index = hed->SelStart = hed->SelEnd = i0; + hed->CaretCol = hed->Index % hed->ColumnsPerLine; + hed->CaretLine = hed->Index / hed->ColumnsPerLine; + } + else + { + if (hed->InMid && hed->EditingField) + { + buf = (PBYTE) LocalLock(hed->hBuffer); + if (buf) + { + MoveMemory(buf + hed->Index, buf + hed->Index + 1, + bufsize - hed->Index - 1); + LocalUnlock(hed->hBuffer); + } + HexEdit_SetMaxBufferSize(hed->hWndSelf, bufsize - 1); + hed->InMid = FALSE; + } + else if (hed->Index < bufsize) + { + buf = (PBYTE) LocalLock(hed->hBuffer); + if (buf) + { + MoveMemory(buf + hed->Index, buf + hed->Index + 1, + bufsize - hed->Index - 1); + LocalUnlock(hed->hBuffer); + } + HexEdit_SetMaxBufferSize(hed->hWndSelf, bufsize - 1); + } + } + InvalidateRect(hed->hWndSelf, NULL, TRUE); + HEXEDIT_MoveCaret(hed, TRUE); + break; + + case VK_BACK: + if (hed->SelStart != hed->SelEnd) + { + buf = (PBYTE) LocalLock(hed->hBuffer); + if (buf) + { + MoveMemory(buf + i0, buf + i1, bufsize - i1); + LocalUnlock(hed->hBuffer); + } + HexEdit_SetMaxBufferSize(hed->hWndSelf, bufsize - (i1 - i0)); + hed->InMid = FALSE; + hed->Index = hed->SelStart = hed->SelEnd = i0; + hed->CaretCol = hed->Index % hed->ColumnsPerLine; + hed->CaretLine = hed->Index / hed->ColumnsPerLine; + } + else + { + if (hed->InMid && hed->EditingField) + { + buf = (PBYTE) LocalLock(hed->hBuffer); + if (buf) + { + MoveMemory(buf + hed->Index, buf + hed->Index + 1, + bufsize - hed->Index - 1); + LocalUnlock(hed->hBuffer); + } + } + else if (hed->Index > 0) + { + buf = (PBYTE) LocalLock(hed->hBuffer); + if (buf) + { + MoveMemory(buf + hed->Index - 1, buf + hed->Index, + bufsize - hed->Index); + LocalUnlock(hed->hBuffer); + } + hed->Index--; + hed->SelStart = hed->SelEnd = hed->Index; + hed->CaretCol = hed->Index % hed->ColumnsPerLine; + hed->CaretLine = hed->Index / hed->ColumnsPerLine; } HexEdit_SetMaxBufferSize(hed->hWndSelf, bufsize - 1); hed->InMid = FALSE; } - else if (hed->Index < bufsize) + InvalidateRect(hed->hWndSelf, NULL, TRUE); + HEXEDIT_MoveCaret(hed, TRUE); + break; + + case VK_LEFT: + if (hed->Index > 0) + { + hed->Index--; + if (GetAsyncKeyState(VK_SHIFT) < 0) + hed->SelEnd = hed->Index; + else + hed->SelStart = hed->SelEnd = hed->Index; + hed->CaretCol = hed->Index % hed->ColumnsPerLine; + hed->CaretLine = hed->Index / hed->ColumnsPerLine; + hed->InMid = FALSE; + InvalidateRect(hed->hWndSelf, NULL, TRUE); + HEXEDIT_MoveCaret(hed, TRUE); + } + break; + + case VK_RIGHT: + if (hed->Index < (INT)bufsize) + { + hed->Index++; + if (GetAsyncKeyState(VK_SHIFT) < 0) + hed->SelEnd = hed->Index; + else + hed->SelStart = hed->SelEnd = hed->Index; + hed->CaretCol = hed->Index % hed->ColumnsPerLine; + hed->CaretLine = hed->Index / hed->ColumnsPerLine; + hed->InMid = FALSE; + InvalidateRect(hed->hWndSelf, NULL, TRUE); + HEXEDIT_MoveCaret(hed, TRUE); + } + break; + + case VK_UP: + if (hed->Index >= hed->ColumnsPerLine) + { + hed->Index -= hed->ColumnsPerLine; + if (GetAsyncKeyState(VK_SHIFT) < 0) + hed->SelEnd = hed->Index; + else + hed->SelStart = hed->SelEnd = hed->Index; + hed->CaretCol = hed->Index % hed->ColumnsPerLine; + hed->CaretLine = hed->Index / hed->ColumnsPerLine; + hed->InMid = FALSE; + InvalidateRect(hed->hWndSelf, NULL, TRUE); + HEXEDIT_MoveCaret(hed, TRUE); + } + break; + + case VK_DOWN: + if (hed->Index + hed->ColumnsPerLine <= (INT) bufsize) + hed->Index += hed->ColumnsPerLine; + else + hed->Index = bufsize; + hed->CaretCol = hed->Index % hed->ColumnsPerLine; + hed->CaretLine = hed->Index / hed->ColumnsPerLine; + if (GetAsyncKeyState(VK_SHIFT) < 0) + hed->SelEnd = hed->Index; + else + hed->SelStart = hed->SelEnd = hed->Index; + hed->InMid = FALSE; + InvalidateRect(hed->hWndSelf, NULL, TRUE); + HEXEDIT_MoveCaret(hed, TRUE); + break; + } + + return FALSE; +} + +static BOOL +HEXEDIT_WM_CHAR(PHEXEDIT_DATA hed, WCHAR ch) +{ + size_t bufsize; + PBYTE buf; + INT i0, i1; + + bufsize = (hed->hBuffer ? LocalSize(hed->hBuffer) : 0); + if (hed->SelStart < hed->SelEnd) + { + i0 = hed->SelStart; + i1 = hed->SelEnd; + } + else + { + i0 = hed->SelEnd; + i1 = hed->SelStart; + } + if (!hed->EditingField) + { + if (0x20 <= ch && ch <= 0xFF) + { + if (hed->SelStart != hed->SelEnd) { buf = (PBYTE) LocalLock(hed->hBuffer); if (buf) { - MoveMemory(buf + hed->Index, buf + hed->Index + 1, - bufsize - hed->Index - 1); + MoveMemory(buf + i0, buf + i1, bufsize - i1); LocalUnlock(hed->hBuffer); } - HexEdit_SetMaxBufferSize(hed->hWndSelf, bufsize - 1); - } - InvalidateRect(hed->hWndSelf, NULL, TRUE); - HEXEDIT_MoveCaret(hed, TRUE); - break; - - case VK_BACK: - if (hed->InMid && hed->EditingField) - { - buf = (PBYTE) LocalLock(hed->hBuffer); - if (buf) - { - MoveMemory(buf + hed->Index, buf + hed->Index + 1, - bufsize - hed->Index - 1); - LocalUnlock(hed->hBuffer); - } - HexEdit_SetMaxBufferSize(hed->hWndSelf, bufsize - 1); + HexEdit_SetMaxBufferSize(hed->hWndSelf, bufsize - (i1 - i0)); hed->InMid = FALSE; - } - else if (hed->Index > 0) - { - buf = (PBYTE) LocalLock(hed->hBuffer); - if (buf) - { - MoveMemory(buf + hed->Index - 1, buf + hed->Index, - bufsize - hed->Index); - LocalUnlock(hed->hBuffer); - } - HexEdit_SetMaxBufferSize(hed->hWndSelf, bufsize - 1); - hed->Index--; - hed->CaretCol = hed->Index % hed->ColumnsPerLine; - hed->CaretLine = hed->Index / hed->ColumnsPerLine; - hed->InMid = FALSE; - } - InvalidateRect(hed->hWndSelf, NULL, TRUE); - HEXEDIT_MoveCaret(hed, TRUE); - break; - - case VK_LEFT: - if (hed->Index > 0) - { - hed->Index--; - hed->CaretCol = hed->Index % hed->ColumnsPerLine; - hed->CaretLine = hed->Index / hed->ColumnsPerLine; - hed->InMid = FALSE; - HEXEDIT_MoveCaret(hed, TRUE); - } - break; - - case VK_RIGHT: - if (hed->Index < (INT)bufsize) - { - hed->Index++; - hed->CaretCol = hed->Index % hed->ColumnsPerLine; - hed->CaretLine = hed->Index / hed->ColumnsPerLine; - hed->InMid = FALSE; - HEXEDIT_MoveCaret(hed, TRUE); - } - break; - - case VK_UP: - if (hed->Index >= hed->ColumnsPerLine) - { - hed->Index -= hed->ColumnsPerLine; - hed->CaretCol = hed->Index % hed->ColumnsPerLine; - hed->CaretLine = hed->Index / hed->ColumnsPerLine; - hed->InMid = FALSE; - HEXEDIT_MoveCaret(hed, TRUE); - } - break; - - case VK_DOWN: - if (hed->Index + hed->ColumnsPerLine <= (INT) bufsize) - { - hed->Index += hed->ColumnsPerLine; - hed->CaretCol = hed->Index % hed->ColumnsPerLine; - hed->CaretLine = hed->Index / hed->ColumnsPerLine; - } - else - { - hed->Index = bufsize; - hed->CaretCol = hed->Index % hed->ColumnsPerLine; - hed->CaretLine = hed->Index / hed->ColumnsPerLine; - } - hed->InMid = FALSE; - HEXEDIT_MoveCaret(hed, TRUE); - break; - } - - return FALSE; -} - -static BOOL -HEXEDIT_WM_CHAR(PHEXEDIT_DATA hed, WCHAR ch) -{ - size_t bufsize; - PBYTE buf; - - bufsize = (hed->hBuffer ? LocalSize(hed->hBuffer) : 0); - if (!hed->EditingField) - { - if (0x20 <= ch && ch < 0x7F) - { + bufsize = (hed->hBuffer ? LocalSize(hed->hBuffer) : 0); + hed->Index = hed->SelStart = hed->SelEnd = i0; + } HexEdit_SetMaxBufferSize(hed->hWndSelf, bufsize + 1); buf = (PBYTE) LocalLock(hed->hBuffer); if (buf) @@ -932,6 +1118,19 @@ if (('0' <= ch && ch <= '9') || ('A' <= ch && ch <= 'F') || ('a' <= ch && ch <= 'f')) { + if (hed->SelStart != hed->SelEnd) + { + buf = (PBYTE) LocalLock(hed->hBuffer); + if (buf) + { + MoveMemory(buf + i0, buf + i1, bufsize - i1); + LocalUnlock(hed->hBuffer); + } + HexEdit_SetMaxBufferSize(hed->hWndSelf, bufsize - (i1 - i0)); + hed->InMid = FALSE; + bufsize = (hed->hBuffer ? LocalSize(hed->hBuffer) : 0); + hed->Index = hed->SelStart = hed->SelEnd = i0; + } if (hed->InMid) { buf = (PBYTE) LocalLock(hed->hBuffer); @@ -947,10 +1146,6 @@ } hed->InMid = FALSE; hed->Index++; - hed->CaretCol = hed->Index % hed->ColumnsPerLine; - hed->CaretLine = hed->Index / hed->ColumnsPerLine; - InvalidateRect(hed->hWndSelf, NULL, TRUE); - HEXEDIT_MoveCaret(hed, TRUE); } else { @@ -969,11 +1164,11 @@ LocalUnlock(hed->hBuffer); } hed->InMid = TRUE; - hed->CaretCol = hed->Index % hed->ColumnsPerLine; - hed->CaretLine = hed->Index / hed->ColumnsPerLine; - InvalidateRect(hed->hWndSelf, NULL, TRUE); - HEXEDIT_MoveCaret(hed, TRUE); - } + } + hed->CaretCol = hed->Index % hed->ColumnsPerLine; + hed->CaretLine = hed->Index / hed->ColumnsPerLine; + InvalidateRect(hed->hWndSelf, NULL, TRUE); + HEXEDIT_MoveCaret(hed, TRUE); return FALSE; } } @@ -1024,6 +1219,20 @@ return HEXEDIT_WM_LBUTTONDOWN(hed, (INT)wParam, p); }
+ case WM_LBUTTONUP: + { + p.x = LOWORD(lParam); + p.y = HIWORD(lParam); + return HEXEDIT_WM_LBUTTONUP(hed, (INT)wParam, p); + } + + case WM_MOUSEMOVE: + { + p.x = LOWORD(lParam); + p.y = HIWORD(lParam); + return HEXEDIT_WM_MOUSEMOVE(hed, (INT)wParam, p); + } + case WM_MOUSEWHEEL: { UINT nScrollLines = 3; @@ -1080,8 +1289,16 @@ return HEXEDIT_WM_NCDESTROY(hed); } break; - } - - return CallWindowProc(DefWindowProc, hWnd, uMsg, wParam, lParam); -} - + + case WM_CONTEXTMENU: + /* FIXME: Implement Cut, Copy, Paste, Delete and Select All */ + break; + + case WM_COMMAND: + /* FIXME: Implement Cut, Copy, Paste, Delete and Select All */ + break; + } + + return DefWindowProc(hWnd, uMsg, wParam, lParam); +} +
Modified: branches/reactos-yarotows/config.template.rbuild URL: http://svn.reactos.org/svn/reactos/branches/reactos-yarotows/config.template... ============================================================================== --- branches/reactos-yarotows/config.template.rbuild [iso-8859-1] (original) +++ branches/reactos-yarotows/config.template.rbuild [iso-8859-1] Thu Jul 15 20:49:51 2010 @@ -49,7 +49,7 @@ 4 = -O2 5 = -O3 --> -<property name="OPTIMIZE" value="1" /> +<property name="OPTIMIZE" value="0" />
<!--
Modified: branches/reactos-yarotows/dll/3rdparty/libtiff/libtiff.rbuild URL: http://svn.reactos.org/svn/reactos/branches/reactos-yarotows/dll/3rdparty/li... ============================================================================== --- branches/reactos-yarotows/dll/3rdparty/libtiff/libtiff.rbuild [iso-8859-1] (original) +++ branches/reactos-yarotows/dll/3rdparty/libtiff/libtiff.rbuild [iso-8859-1] Thu Jul 15 20:49:51 2010 @@ -3,8 +3,9 @@ <module name="libtiff" type="win32dll" entrypoint="0" installbase="system32" installname="libtiff.dll" allowwarnings="true" crt="msvcrt"> <define name="WIN32" /> <define name="NDEBUG" /> - <define name="_WINDOWS" /> - <define name="_USRDLL" /> + <define name="BUILD_LIBTIFF_DLL" /> + <define name="DLL_EXPORT" /> + <define name="USE_WIN32_FILEIO" /> <include base="libtiff">.</include> <include base="ReactOS">include/reactos/libs/zlib</include> <include base="ReactOS">include/reactos/libs/libtiff</include>
Modified: branches/reactos-yarotows/dll/3rdparty/libtiff/tif_open.c URL: http://svn.reactos.org/svn/reactos/branches/reactos-yarotows/dll/3rdparty/li... ============================================================================== --- branches/reactos-yarotows/dll/3rdparty/libtiff/tif_open.c [iso-8859-1] (original) +++ branches/reactos-yarotows/dll/3rdparty/libtiff/tif_open.c [iso-8859-1] Thu Jul 15 20:49:51 2010 @@ -516,6 +516,9 @@ TIFFSetClientdata(TIFF* tif, thandle_t newvalue) { thandle_t m = tif->tif_clientdata; +#ifdef USE_WIN32_FILEIO + newvalue = (thandle_t) _get_osfhandle(newvalue); +#endif /* USE_WIN32_FILEIO */ tif->tif_clientdata = newvalue; return m; }
Modified: branches/reactos-yarotows/dll/win32/setupapi/setupcab.c URL: http://svn.reactos.org/svn/reactos/branches/reactos-yarotows/dll/win32/setup... ============================================================================== --- branches/reactos-yarotows/dll/win32/setupapi/setupcab.c [iso-8859-1] (original) +++ branches/reactos-yarotows/dll/win32/setupapi/setupcab.c [iso-8859-1] Thu Jul 15 20:49:51 2010 @@ -518,7 +518,7 @@
SC_HSC_A my_hsc; ERF erf; - CHAR pszCabinet[MAX_PATH], pszCabPath[MAX_PATH], *p; + CHAR pszCabinet[MAX_PATH], pszCabPath[MAX_PATH], *p = NULL; DWORD fpnsize; BOOL ret;
@@ -528,6 +528,12 @@
if (! LoadCABINETDll()) return FALSE; + + if (!CabinetFile) + { + SetLastError(ERROR_INVALID_PARAMETER); + return FALSE; + }
memset(&my_hsc, 0, sizeof(SC_HSC_A)); pszCabinet[0] = '\0'; @@ -584,7 +590,7 @@ UINT len; SC_HSC_W my_hsc; ERF erf; - WCHAR pszCabPathW[MAX_PATH], *p; + WCHAR pszCabPathW[MAX_PATH], *p = NULL; DWORD fpnsize; BOOL ret;
@@ -594,7 +600,11 @@ if (!LoadCABINETDll()) return FALSE;
- if (!CabinetFile) return FALSE; + if (!CabinetFile) + { + SetLastError(ERROR_INVALID_PARAMETER); + return FALSE; + }
memset(&my_hsc, 0, sizeof(SC_HSC_W));
Modified: branches/reactos-yarotows/dll/win32/user32/windows/cursoricon.c URL: http://svn.reactos.org/svn/reactos/branches/reactos-yarotows/dll/win32/user3... ============================================================================== --- branches/reactos-yarotows/dll/win32/user32/windows/cursoricon.c [iso-8859-1] (original) +++ branches/reactos-yarotows/dll/win32/user32/windows/cursoricon.c [iso-8859-1] Thu Jul 15 20:49:51 2010 @@ -485,8 +485,8 @@ else { if (!(*mask = CreateBitmap( width, height, 1, 1, NULL ))) goto done; - if (!(*color = CreateBitmap( width, height, GetDeviceCaps( screen_dc, PLANES ), - GetDeviceCaps( screen_dc, BITSPIXEL ), NULL ))) + if (!(*color = CreateBitmap( width, height, bmi->bmiHeader.biPlanes, + bmi->bmiHeader.biBitCount, NULL ))) { DeleteObject( *mask ); goto done; @@ -1475,10 +1475,29 @@ height = bmpXor.bmHeight; if (bmpXor.bmPlanes * bmpXor.bmBitsPixel != 1) { - color = CreateCompatibleBitmap( screen_dc, width, height ); + color = CreateBitmap( width, height, bmpXor.bmPlanes, bmpXor.bmBitsPixel, NULL ); + if(!color) + { + ERR("Unable to create color bitmap!\n"); + return NULL; + } mask = CreateBitmap( width, height, 1, 1, NULL ); - } - else mask = CreateBitmap( width, height * 2, 1, 1, NULL ); + if(!mask) + { + ERR("Unable to create mask bitmap!\n"); + DeleteObject(color); + return NULL; + } + } + else + { + mask = CreateBitmap( width, height * 2, 1, 1, NULL ); + if(!mask) + { + ERR("Unable to create mask bitmap!\n"); + return NULL; + } + } } else {
Modified: branches/reactos-yarotows/include/psdk/shellapi.h URL: http://svn.reactos.org/svn/reactos/branches/reactos-yarotows/include/psdk/sh... ============================================================================== --- branches/reactos-yarotows/include/psdk/shellapi.h [iso-8859-1] (original) +++ branches/reactos-yarotows/include/psdk/shellapi.h [iso-8859-1] Thu Jul 15 20:49:51 2010 @@ -8,6 +8,11 @@ #pragma warning(push) #pragma warning(disable:4201) #endif + +#if !defined(_WIN64) +#include <pshpack1.h> +#endif + #define WINSHELLAPI DECLSPEC_IMPORT #define ABE_LEFT 0 #define ABE_TOP 1 @@ -160,7 +165,7 @@
typedef WORD FILEOP_FLAGS; typedef WORD PRINTEROP_FLAGS; -#include <pshpack1.h> + typedef struct _AppBarData { DWORD cbSize; HWND hWnd; @@ -330,7 +335,6 @@ int cchOldPath; int cchNewPath; } SHNAMEMAPPINGW, *LPSHNAMEMAPPINGW; -#include <poppack.h>
#define SHERB_NOCONFIRMATION 0x1 #define SHERB_NOPROGRESSUI 0x2 @@ -440,6 +444,11 @@ #define SHEmptyRecycleBin SHEmptyRecycleBinA #define SHGetNewLinkInfo SHGetNewLinkInfoA #endif + +#if !defined(_WIN64) +#include <poppack.h> +#endif + #ifdef _MSC_VER #pragma warning(pop) #endif
Modified: branches/reactos-yarotows/include/psdk/wingdi.h URL: http://svn.reactos.org/svn/reactos/branches/reactos-yarotows/include/psdk/wi... ============================================================================== --- branches/reactos-yarotows/include/psdk/wingdi.h [iso-8859-1] (original) +++ branches/reactos-yarotows/include/psdk/wingdi.h [iso-8859-1] Thu Jul 15 20:49:51 2010 @@ -1715,7 +1715,7 @@ typedef struct tagEMRCREATEBRUSHINDIRECT { EMR emr; DWORD ihBrush; - LOGBRUSH lb; + LOGBRUSH32 lb; } EMRCREATEBRUSHINDIRECT,*PEMRCREATEBRUSHINDIRECT; typedef LONG LCSCSTYPE; typedef LONG LCSGAMUTMATCH; @@ -1897,11 +1897,11 @@ EXTLOGFONTW elfw; } EMREXTCREATEFONTINDIRECTW,*PEMREXTCREATEFONTINDIRECTW; typedef struct tagEXTLOGPEN { - UINT elpPenStyle; - UINT elpWidth; + DWORD elpPenStyle; + DWORD elpWidth; UINT elpBrushStyle; COLORREF elpColor; - LONG elpHatch; + ULONG_PTR elpHatch; DWORD elpNumEntries; DWORD elpStyleEntry[1]; } EXTLOGPEN,*PEXTLOGPEN,*LPEXTLOGPEN,*NPEXTLOGPEN;
Modified: branches/reactos-yarotows/include/psdk/ws2ipdef.h URL: http://svn.reactos.org/svn/reactos/branches/reactos-yarotows/include/psdk/ws... ============================================================================== --- branches/reactos-yarotows/include/psdk/ws2ipdef.h [iso-8859-1] (original) +++ branches/reactos-yarotows/include/psdk/ws2ipdef.h [iso-8859-1] Thu Jul 15 20:49:51 2010 @@ -13,7 +13,7 @@ #ifdef _MSC_VER #define WS2TCPIP_INLINE __inline #else -#define WS2TCPIP_INLINE extern inline +#define WS2TCPIP_INLINE static inline #endif
#include <in6addr.h>
Modified: branches/reactos-yarotows/include/psdk/ws2tcpip.h URL: http://svn.reactos.org/svn/reactos/branches/reactos-yarotows/include/psdk/ws... ============================================================================== --- branches/reactos-yarotows/include/psdk/ws2tcpip.h [iso-8859-1] (original) +++ branches/reactos-yarotows/include/psdk/ws2tcpip.h [iso-8859-1] Thu Jul 15 20:49:51 2010 @@ -24,7 +24,7 @@ #ifdef _MSC_VER #define WS2TCPIP_INLINE __inline #else -#define WS2TCPIP_INLINE extern inline +#define WS2TCPIP_INLINE static inline #endif
/* getaddrinfo error codes */
Modified: branches/reactos-yarotows/include/reactos/libs/libtiff/tiffio.h URL: http://svn.reactos.org/svn/reactos/branches/reactos-yarotows/include/reactos... ============================================================================== --- branches/reactos-yarotows/include/reactos/libs/libtiff/tiffio.h [iso-8859-1] (original) +++ branches/reactos-yarotows/include/reactos/libs/libtiff/tiffio.h [iso-8859-1] Thu Jul 15 20:49:51 2010 @@ -27,6 +27,30 @@ #ifndef _TIFFIO_ #define _TIFFIO_
+#ifndef __GNUC__ +# define __DLL_IMPORT__ __declspec(dllimport) +# define __DLL_EXPORT__ __declspec(dllexport) +#else +# define __DLL_IMPORT__ __attribute__((dllimport)) extern +# define __DLL_EXPORT__ __attribute__((dllexport)) extern +#endif + +#if (defined __WIN32__) || (defined _WIN32) +# ifdef BUILD_LIBTIFF_DLL +# define LIBTIFF_DLL_IMPEXP __DLL_EXPORT__ +# elif defined(LIBTIFF_STATIC) +# define LIBTIFF_DLL_IMPEXP +# elif defined (USE_LIBTIFF_DLL) +# define LIBTIFF_DLL_IMPEXP __DLL_IMPORT__ +# elif defined (USE_LIBTIFF_STATIC) +# define LIBTIFF_DLL_IMPEXP +# else /* assume USE_LIBTIFF_DLL */ +# define LIBTIFF_DLL_IMPEXP __DLL_IMPORT__ +# endif +#else /* __WIN32__ */ +# define LIBTIFF_DLL_IMPEXP +#endif + /* * TIFF I/O Library Definitions. */ @@ -80,10 +104,20 @@ */
#if defined(_WINDOWS) || defined(__WIN32__) || defined(_Windows) +# define BINMODE "b" # if !defined(__CYGWIN) && !defined(AVOID_WIN32_FILEIO) && !defined(USE_WIN32_FILEIO) # define AVOID_WIN32_FILEIO # endif -#endif +# include <fcntl.h> +# include <io.h> +# ifdef SET_BINARY +# undef SET_BINARY +# endif /* SET_BINARY */ +# define SET_BINARY(f) do {if (!_isatty(f)) _setmode(f,_O_BINARY);} while (0) +#else /* Windows */ +# define BINMODE +# define SET_BINARY(f) (void)0 +#endif /* Windows */
#if defined(USE_WIN32_FILEIO) # define VC_EXTRALEAN @@ -268,30 +302,30 @@ typedef void (*TIFFUnmapFileProc)(thandle_t, tdata_t, toff_t); typedef void (*TIFFExtendProc)(TIFF*);
-extern const char* TIFFGetVersion(void); - -extern const TIFFCodec* TIFFFindCODEC(uint16); -extern TIFFCodec* TIFFRegisterCODEC(uint16, const char*, TIFFInitMethod); -extern void TIFFUnRegisterCODEC(TIFFCodec*); -extern int TIFFIsCODECConfigured(uint16); -extern TIFFCodec* TIFFGetConfiguredCODECs(void); +LIBTIFF_DLL_IMPEXP const char* TIFFGetVersion(void); + +LIBTIFF_DLL_IMPEXP const TIFFCodec* TIFFFindCODEC(uint16); +LIBTIFF_DLL_IMPEXP TIFFCodec* TIFFRegisterCODEC(uint16, const char*, TIFFInitMethod); +LIBTIFF_DLL_IMPEXP void TIFFUnRegisterCODEC(TIFFCodec*); +LIBTIFF_DLL_IMPEXP int TIFFIsCODECConfigured(uint16); +LIBTIFF_DLL_IMPEXP TIFFCodec* TIFFGetConfiguredCODECs(void);
/* * Auxiliary functions. */
-extern tdata_t _TIFFmalloc(tsize_t); -extern tdata_t _TIFFrealloc(tdata_t, tsize_t); -extern void _TIFFmemset(tdata_t, int, tsize_t); -extern void _TIFFmemcpy(tdata_t, const tdata_t, tsize_t); -extern int _TIFFmemcmp(const tdata_t, const tdata_t, tsize_t); -extern void _TIFFfree(tdata_t); +LIBTIFF_DLL_IMPEXP tdata_t _TIFFmalloc(tsize_t); +LIBTIFF_DLL_IMPEXP tdata_t _TIFFrealloc(tdata_t, tsize_t); +LIBTIFF_DLL_IMPEXP void _TIFFmemset(tdata_t, int, tsize_t); +LIBTIFF_DLL_IMPEXP void _TIFFmemcpy(tdata_t, const tdata_t, tsize_t); +LIBTIFF_DLL_IMPEXP int _TIFFmemcmp(const tdata_t, const tdata_t, tsize_t); +LIBTIFF_DLL_IMPEXP void _TIFFfree(tdata_t);
/* ** Stuff, related to tag handling and creating custom tags. */ -extern int TIFFGetTagListCount( TIFF * ); -extern ttag_t TIFFGetTagListEntry( TIFF *, int tag_index ); +LIBTIFF_DLL_IMPEXP int TIFFGetTagListCount( TIFF * ); +LIBTIFF_DLL_IMPEXP ttag_t TIFFGetTagListEntry( TIFF *, int tag_index );
#define TIFF_ANY TIFF_NOTYPE /* for field descriptor searching */ #define TIFF_VARIABLE -1 /* marker for variable length tags */ @@ -317,12 +351,12 @@ void *value; } TIFFTagValue;
-extern void TIFFMergeFieldInfo(TIFF*, const TIFFFieldInfo[], int); -extern const TIFFFieldInfo* TIFFFindFieldInfo(TIFF*, ttag_t, TIFFDataType); -extern const TIFFFieldInfo* TIFFFindFieldInfoByName(TIFF* , const char *, +LIBTIFF_DLL_IMPEXP void TIFFMergeFieldInfo(TIFF*, const TIFFFieldInfo[], int); +LIBTIFF_DLL_IMPEXP const TIFFFieldInfo* TIFFFindFieldInfo(TIFF*, ttag_t, TIFFDataType); +LIBTIFF_DLL_IMPEXP const TIFFFieldInfo* TIFFFindFieldInfoByName(TIFF* , const char *, TIFFDataType); -extern const TIFFFieldInfo* TIFFFieldWithTag(TIFF*, ttag_t); -extern const TIFFFieldInfo* TIFFFieldWithName(TIFF*, const char *); +LIBTIFF_DLL_IMPEXP const TIFFFieldInfo* TIFFFieldWithTag(TIFF*, ttag_t); +LIBTIFF_DLL_IMPEXP const TIFFFieldInfo* TIFFFieldWithName(TIFF*, const char *);
typedef int (*TIFFVSetMethod)(TIFF*, ttag_t, va_list); typedef int (*TIFFVGetMethod)(TIFF*, ttag_t, va_list); @@ -334,180 +368,180 @@ TIFFPrintMethod printdir; /* directory print routine */ } TIFFTagMethods;
-extern TIFFTagMethods *TIFFAccessTagMethods( TIFF * ); -extern void *TIFFGetClientInfo( TIFF *, const char * ); -extern void TIFFSetClientInfo( TIFF *, void *, const char * ); - -extern void TIFFCleanup(TIFF*); -extern void TIFFClose(TIFF*); -extern int TIFFFlush(TIFF*); -extern int TIFFFlushData(TIFF*); -extern int TIFFGetField(TIFF*, ttag_t, ...); -extern int TIFFVGetField(TIFF*, ttag_t, va_list); -extern int TIFFGetFieldDefaulted(TIFF*, ttag_t, ...); -extern int TIFFVGetFieldDefaulted(TIFF*, ttag_t, va_list); -extern int TIFFReadDirectory(TIFF*); -extern int TIFFReadCustomDirectory(TIFF*, toff_t, const TIFFFieldInfo[], +LIBTIFF_DLL_IMPEXP TIFFTagMethods *TIFFAccessTagMethods( TIFF * ); +LIBTIFF_DLL_IMPEXP void *TIFFGetClientInfo( TIFF *, const char * ); +LIBTIFF_DLL_IMPEXP void TIFFSetClientInfo( TIFF *, void *, const char * ); + +LIBTIFF_DLL_IMPEXP void TIFFCleanup(TIFF*); +LIBTIFF_DLL_IMPEXP void TIFFClose(TIFF*); +LIBTIFF_DLL_IMPEXP int TIFFFlush(TIFF*); +LIBTIFF_DLL_IMPEXP int TIFFFlushData(TIFF*); +LIBTIFF_DLL_IMPEXP int TIFFGetField(TIFF*, ttag_t, ...); +LIBTIFF_DLL_IMPEXP int TIFFVGetField(TIFF*, ttag_t, va_list); +LIBTIFF_DLL_IMPEXP int TIFFGetFieldDefaulted(TIFF*, ttag_t, ...); +LIBTIFF_DLL_IMPEXP int TIFFVGetFieldDefaulted(TIFF*, ttag_t, va_list); +LIBTIFF_DLL_IMPEXP int TIFFReadDirectory(TIFF*); +LIBTIFF_DLL_IMPEXP int TIFFReadCustomDirectory(TIFF*, toff_t, const TIFFFieldInfo[], size_t); -extern int TIFFReadEXIFDirectory(TIFF*, toff_t); -extern tsize_t TIFFScanlineSize(TIFF*); -extern tsize_t TIFFOldScanlineSize(TIFF*); -extern tsize_t TIFFNewScanlineSize(TIFF*); -extern tsize_t TIFFRasterScanlineSize(TIFF*); -extern tsize_t TIFFStripSize(TIFF*); -extern tsize_t TIFFRawStripSize(TIFF*, tstrip_t); -extern tsize_t TIFFVStripSize(TIFF*, uint32); -extern tsize_t TIFFTileRowSize(TIFF*); -extern tsize_t TIFFTileSize(TIFF*); -extern tsize_t TIFFVTileSize(TIFF*, uint32); -extern uint32 TIFFDefaultStripSize(TIFF*, uint32); -extern void TIFFDefaultTileSize(TIFF*, uint32*, uint32*); -extern int TIFFFileno(TIFF*); -extern int TIFFSetFileno(TIFF*, int); -extern thandle_t TIFFClientdata(TIFF*); -extern thandle_t TIFFSetClientdata(TIFF*, thandle_t); -extern int TIFFGetMode(TIFF*); -extern int TIFFSetMode(TIFF*, int); -extern int TIFFIsTiled(TIFF*); -extern int TIFFIsByteSwapped(TIFF*); -extern int TIFFIsUpSampled(TIFF*); -extern int TIFFIsMSB2LSB(TIFF*); -extern int TIFFIsBigEndian(TIFF*); -extern TIFFReadWriteProc TIFFGetReadProc(TIFF*); -extern TIFFReadWriteProc TIFFGetWriteProc(TIFF*); -extern TIFFSeekProc TIFFGetSeekProc(TIFF*); -extern TIFFCloseProc TIFFGetCloseProc(TIFF*); -extern TIFFSizeProc TIFFGetSizeProc(TIFF*); -extern TIFFMapFileProc TIFFGetMapFileProc(TIFF*); -extern TIFFUnmapFileProc TIFFGetUnmapFileProc(TIFF*); -extern uint32 TIFFCurrentRow(TIFF*); -extern tdir_t TIFFCurrentDirectory(TIFF*); -extern tdir_t TIFFNumberOfDirectories(TIFF*); -extern uint32 TIFFCurrentDirOffset(TIFF*); -extern tstrip_t TIFFCurrentStrip(TIFF*); -extern ttile_t TIFFCurrentTile(TIFF*); -extern int TIFFReadBufferSetup(TIFF*, tdata_t, tsize_t); -extern int TIFFWriteBufferSetup(TIFF*, tdata_t, tsize_t); -extern int TIFFSetupStrips(TIFF *); -extern int TIFFWriteCheck(TIFF*, int, const char *); -extern void TIFFFreeDirectory(TIFF*); -extern int TIFFCreateDirectory(TIFF*); -extern int TIFFLastDirectory(TIFF*); -extern int TIFFSetDirectory(TIFF*, tdir_t); -extern int TIFFSetSubDirectory(TIFF*, uint32); -extern int TIFFUnlinkDirectory(TIFF*, tdir_t); -extern int TIFFSetField(TIFF*, ttag_t, ...); -extern int TIFFVSetField(TIFF*, ttag_t, va_list); -extern int TIFFWriteDirectory(TIFF *); -extern int TIFFCheckpointDirectory(TIFF *); -extern int TIFFRewriteDirectory(TIFF *); -extern int TIFFReassignTagToIgnore(enum TIFFIgnoreSense, int); +LIBTIFF_DLL_IMPEXP int TIFFReadEXIFDirectory(TIFF*, toff_t); +LIBTIFF_DLL_IMPEXP tsize_t TIFFScanlineSize(TIFF*); +LIBTIFF_DLL_IMPEXP tsize_t TIFFOldScanlineSize(TIFF*); +LIBTIFF_DLL_IMPEXP tsize_t TIFFNewScanlineSize(TIFF*); +LIBTIFF_DLL_IMPEXP tsize_t TIFFRasterScanlineSize(TIFF*); +LIBTIFF_DLL_IMPEXP tsize_t TIFFStripSize(TIFF*); +LIBTIFF_DLL_IMPEXP tsize_t TIFFRawStripSize(TIFF*, tstrip_t); +LIBTIFF_DLL_IMPEXP tsize_t TIFFVStripSize(TIFF*, uint32); +LIBTIFF_DLL_IMPEXP tsize_t TIFFTileRowSize(TIFF*); +LIBTIFF_DLL_IMPEXP tsize_t TIFFTileSize(TIFF*); +LIBTIFF_DLL_IMPEXP tsize_t TIFFVTileSize(TIFF*, uint32); +LIBTIFF_DLL_IMPEXP uint32 TIFFDefaultStripSize(TIFF*, uint32); +LIBTIFF_DLL_IMPEXP void TIFFDefaultTileSize(TIFF*, uint32*, uint32*); +LIBTIFF_DLL_IMPEXP int TIFFFileno(TIFF*); +LIBTIFF_DLL_IMPEXP int TIFFSetFileno(TIFF*, int); +LIBTIFF_DLL_IMPEXP thandle_t TIFFClientdata(TIFF*); +LIBTIFF_DLL_IMPEXP thandle_t TIFFSetClientdata(TIFF*, thandle_t); +LIBTIFF_DLL_IMPEXP int TIFFGetMode(TIFF*); +LIBTIFF_DLL_IMPEXP int TIFFSetMode(TIFF*, int); +LIBTIFF_DLL_IMPEXP int TIFFIsTiled(TIFF*); +LIBTIFF_DLL_IMPEXP int TIFFIsByteSwapped(TIFF*); +LIBTIFF_DLL_IMPEXP int TIFFIsUpSampled(TIFF*); +LIBTIFF_DLL_IMPEXP int TIFFIsMSB2LSB(TIFF*); +LIBTIFF_DLL_IMPEXP int TIFFIsBigEndian(TIFF*); +LIBTIFF_DLL_IMPEXP TIFFReadWriteProc TIFFGetReadProc(TIFF*); +LIBTIFF_DLL_IMPEXP TIFFReadWriteProc TIFFGetWriteProc(TIFF*); +LIBTIFF_DLL_IMPEXP TIFFSeekProc TIFFGetSeekProc(TIFF*); +LIBTIFF_DLL_IMPEXP TIFFCloseProc TIFFGetCloseProc(TIFF*); +LIBTIFF_DLL_IMPEXP TIFFSizeProc TIFFGetSizeProc(TIFF*); +LIBTIFF_DLL_IMPEXP TIFFMapFileProc TIFFGetMapFileProc(TIFF*); +LIBTIFF_DLL_IMPEXP TIFFUnmapFileProc TIFFGetUnmapFileProc(TIFF*); +LIBTIFF_DLL_IMPEXP uint32 TIFFCurrentRow(TIFF*); +LIBTIFF_DLL_IMPEXP tdir_t TIFFCurrentDirectory(TIFF*); +LIBTIFF_DLL_IMPEXP tdir_t TIFFNumberOfDirectories(TIFF*); +LIBTIFF_DLL_IMPEXP uint32 TIFFCurrentDirOffset(TIFF*); +LIBTIFF_DLL_IMPEXP tstrip_t TIFFCurrentStrip(TIFF*); +LIBTIFF_DLL_IMPEXP ttile_t TIFFCurrentTile(TIFF*); +LIBTIFF_DLL_IMPEXP int TIFFReadBufferSetup(TIFF*, tdata_t, tsize_t); +LIBTIFF_DLL_IMPEXP int TIFFWriteBufferSetup(TIFF*, tdata_t, tsize_t); +LIBTIFF_DLL_IMPEXP int TIFFSetupStrips(TIFF *); +LIBTIFF_DLL_IMPEXP int TIFFWriteCheck(TIFF*, int, const char *); +LIBTIFF_DLL_IMPEXP void TIFFFreeDirectory(TIFF*); +LIBTIFF_DLL_IMPEXP int TIFFCreateDirectory(TIFF*); +LIBTIFF_DLL_IMPEXP int TIFFLastDirectory(TIFF*); +LIBTIFF_DLL_IMPEXP int TIFFSetDirectory(TIFF*, tdir_t); +LIBTIFF_DLL_IMPEXP int TIFFSetSubDirectory(TIFF*, uint32); +LIBTIFF_DLL_IMPEXP int TIFFUnlinkDirectory(TIFF*, tdir_t); +LIBTIFF_DLL_IMPEXP int TIFFSetField(TIFF*, ttag_t, ...); +LIBTIFF_DLL_IMPEXP int TIFFVSetField(TIFF*, ttag_t, va_list); +LIBTIFF_DLL_IMPEXP int TIFFWriteDirectory(TIFF *); +LIBTIFF_DLL_IMPEXP int TIFFCheckpointDirectory(TIFF *); +LIBTIFF_DLL_IMPEXP int TIFFRewriteDirectory(TIFF *); +LIBTIFF_DLL_IMPEXP int TIFFReassignTagToIgnore(enum TIFFIgnoreSense, int);
#if defined(c_plusplus) || defined(__cplusplus) -extern void TIFFPrintDirectory(TIFF*, FILE*, long = 0); -extern int TIFFReadScanline(TIFF*, tdata_t, uint32, tsample_t = 0); -extern int TIFFWriteScanline(TIFF*, tdata_t, uint32, tsample_t = 0); -extern int TIFFReadRGBAImage(TIFF*, uint32, uint32, uint32*, int = 0); -extern int TIFFReadRGBAImageOriented(TIFF*, uint32, uint32, uint32*, +LIBTIFF_DLL_IMPEXP void TIFFPrintDirectory(TIFF*, FILE*, long = 0); +LIBTIFF_DLL_IMPEXP int TIFFReadScanline(TIFF*, tdata_t, uint32, tsample_t = 0); +LIBTIFF_DLL_IMPEXP int TIFFWriteScanline(TIFF*, tdata_t, uint32, tsample_t = 0); +LIBTIFF_DLL_IMPEXP int TIFFReadRGBAImage(TIFF*, uint32, uint32, uint32*, int = 0); +LIBTIFF_DLL_IMPEXP int TIFFReadRGBAImageOriented(TIFF*, uint32, uint32, uint32*, int = ORIENTATION_BOTLEFT, int = 0); #else -extern void TIFFPrintDirectory(TIFF*, FILE*, long); -extern int TIFFReadScanline(TIFF*, tdata_t, uint32, tsample_t); -extern int TIFFWriteScanline(TIFF*, tdata_t, uint32, tsample_t); -extern int TIFFReadRGBAImage(TIFF*, uint32, uint32, uint32*, int); -extern int TIFFReadRGBAImageOriented(TIFF*, uint32, uint32, uint32*, int, int); -#endif - -extern int TIFFReadRGBAStrip(TIFF*, tstrip_t, uint32 * ); -extern int TIFFReadRGBATile(TIFF*, uint32, uint32, uint32 * ); -extern int TIFFRGBAImageOK(TIFF*, char [1024]); -extern int TIFFRGBAImageBegin(TIFFRGBAImage*, TIFF*, int, char [1024]); -extern int TIFFRGBAImageGet(TIFFRGBAImage*, uint32*, uint32, uint32); -extern void TIFFRGBAImageEnd(TIFFRGBAImage*); -extern TIFF* TIFFOpen(const char*, const char*); +LIBTIFF_DLL_IMPEXP void TIFFPrintDirectory(TIFF*, FILE*, long); +LIBTIFF_DLL_IMPEXP int TIFFReadScanline(TIFF*, tdata_t, uint32, tsample_t); +LIBTIFF_DLL_IMPEXP int TIFFWriteScanline(TIFF*, tdata_t, uint32, tsample_t); +LIBTIFF_DLL_IMPEXP int TIFFReadRGBAImage(TIFF*, uint32, uint32, uint32*, int); +LIBTIFF_DLL_IMPEXP int TIFFReadRGBAImageOriented(TIFF*, uint32, uint32, uint32*, int, int); +#endif + +LIBTIFF_DLL_IMPEXP int TIFFReadRGBAStrip(TIFF*, tstrip_t, uint32 * ); +LIBTIFF_DLL_IMPEXP int TIFFReadRGBATile(TIFF*, uint32, uint32, uint32 * ); +LIBTIFF_DLL_IMPEXP int TIFFRGBAImageOK(TIFF*, char [1024]); +LIBTIFF_DLL_IMPEXP int TIFFRGBAImageBegin(TIFFRGBAImage*, TIFF*, int, char [1024]); +LIBTIFF_DLL_IMPEXP int TIFFRGBAImageGet(TIFFRGBAImage*, uint32*, uint32, uint32); +LIBTIFF_DLL_IMPEXP void TIFFRGBAImageEnd(TIFFRGBAImage*); +LIBTIFF_DLL_IMPEXP TIFF* TIFFOpen(const char*, const char*); # ifdef __WIN32__ -extern TIFF* TIFFOpenW(const wchar_t*, const char*); +LIBTIFF_DLL_IMPEXP TIFF* TIFFOpenW(const wchar_t*, const char*); # endif /* __WIN32__ */ -extern TIFF* TIFFFdOpen(int, const char*, const char*); -extern TIFF* TIFFClientOpen(const char*, const char*, +LIBTIFF_DLL_IMPEXP TIFF* TIFFFdOpen(int, const char*, const char*); +LIBTIFF_DLL_IMPEXP TIFF* TIFFClientOpen(const char*, const char*, thandle_t, TIFFReadWriteProc, TIFFReadWriteProc, TIFFSeekProc, TIFFCloseProc, TIFFSizeProc, TIFFMapFileProc, TIFFUnmapFileProc); -extern const char* TIFFFileName(TIFF*); -extern const char* TIFFSetFileName(TIFF*, const char *); -extern void TIFFError(const char*, const char*, ...) __attribute__((format (printf,2,3))); -extern void TIFFErrorExt(thandle_t, const char*, const char*, ...) __attribute__((format (printf,3,4))); -extern void TIFFWarning(const char*, const char*, ...) __attribute__((format (printf,2,3))); -extern void TIFFWarningExt(thandle_t, const char*, const char*, ...) __attribute__((format (printf,3,4))); -extern TIFFErrorHandler TIFFSetErrorHandler(TIFFErrorHandler); -extern TIFFErrorHandlerExt TIFFSetErrorHandlerExt(TIFFErrorHandlerExt); -extern TIFFErrorHandler TIFFSetWarningHandler(TIFFErrorHandler); -extern TIFFErrorHandlerExt TIFFSetWarningHandlerExt(TIFFErrorHandlerExt); -extern TIFFExtendProc TIFFSetTagExtender(TIFFExtendProc); -extern ttile_t TIFFComputeTile(TIFF*, uint32, uint32, uint32, tsample_t); -extern int TIFFCheckTile(TIFF*, uint32, uint32, uint32, tsample_t); -extern ttile_t TIFFNumberOfTiles(TIFF*); -extern tsize_t TIFFReadTile(TIFF*, +LIBTIFF_DLL_IMPEXP const char* TIFFFileName(TIFF*); +LIBTIFF_DLL_IMPEXP const char* TIFFSetFileName(TIFF*, const char *); +LIBTIFF_DLL_IMPEXP void TIFFError(const char*, const char*, ...) __attribute__((format (printf,2,3))); +LIBTIFF_DLL_IMPEXP void TIFFErrorExt(thandle_t, const char*, const char*, ...) __attribute__((format (printf,3,4))); +LIBTIFF_DLL_IMPEXP void TIFFWarning(const char*, const char*, ...) __attribute__((format (printf,2,3))); +LIBTIFF_DLL_IMPEXP void TIFFWarningExt(thandle_t, const char*, const char*, ...) __attribute__((format (printf,3,4))); +LIBTIFF_DLL_IMPEXP TIFFErrorHandler TIFFSetErrorHandler(TIFFErrorHandler); +LIBTIFF_DLL_IMPEXP TIFFErrorHandlerExt TIFFSetErrorHandlerExt(TIFFErrorHandlerExt); +LIBTIFF_DLL_IMPEXP TIFFErrorHandler TIFFSetWarningHandler(TIFFErrorHandler); +LIBTIFF_DLL_IMPEXP TIFFErrorHandlerExt TIFFSetWarningHandlerExt(TIFFErrorHandlerExt); +LIBTIFF_DLL_IMPEXP TIFFExtendProc TIFFSetTagExtender(TIFFExtendProc); +LIBTIFF_DLL_IMPEXP ttile_t TIFFComputeTile(TIFF*, uint32, uint32, uint32, tsample_t); +LIBTIFF_DLL_IMPEXP int TIFFCheckTile(TIFF*, uint32, uint32, uint32, tsample_t); +LIBTIFF_DLL_IMPEXP ttile_t TIFFNumberOfTiles(TIFF*); +LIBTIFF_DLL_IMPEXP tsize_t TIFFReadTile(TIFF*, tdata_t, uint32, uint32, uint32, tsample_t); -extern tsize_t TIFFWriteTile(TIFF*, +LIBTIFF_DLL_IMPEXP tsize_t TIFFWriteTile(TIFF*, tdata_t, uint32, uint32, uint32, tsample_t); -extern tstrip_t TIFFComputeStrip(TIFF*, uint32, tsample_t); -extern tstrip_t TIFFNumberOfStrips(TIFF*); -extern tsize_t TIFFReadEncodedStrip(TIFF*, tstrip_t, tdata_t, tsize_t); -extern tsize_t TIFFReadRawStrip(TIFF*, tstrip_t, tdata_t, tsize_t); -extern tsize_t TIFFReadEncodedTile(TIFF*, ttile_t, tdata_t, tsize_t); -extern tsize_t TIFFReadRawTile(TIFF*, ttile_t, tdata_t, tsize_t); -extern tsize_t TIFFWriteEncodedStrip(TIFF*, tstrip_t, tdata_t, tsize_t); -extern tsize_t TIFFWriteRawStrip(TIFF*, tstrip_t, tdata_t, tsize_t); -extern tsize_t TIFFWriteEncodedTile(TIFF*, ttile_t, tdata_t, tsize_t); -extern tsize_t TIFFWriteRawTile(TIFF*, ttile_t, tdata_t, tsize_t); -extern int TIFFDataWidth(TIFFDataType); /* table of tag datatype widths */ -extern void TIFFSetWriteOffset(TIFF*, toff_t); -extern void TIFFSwabShort(uint16*); -extern void TIFFSwabLong(uint32*); -extern void TIFFSwabDouble(double*); -extern void TIFFSwabArrayOfShort(uint16*, unsigned long); -extern void TIFFSwabArrayOfTriples(uint8*, unsigned long); -extern void TIFFSwabArrayOfLong(uint32*, unsigned long); -extern void TIFFSwabArrayOfDouble(double*, unsigned long); -extern void TIFFReverseBits(unsigned char *, unsigned long); -extern const unsigned char* TIFFGetBitRevTable(int); +LIBTIFF_DLL_IMPEXP tstrip_t TIFFComputeStrip(TIFF*, uint32, tsample_t); +LIBTIFF_DLL_IMPEXP tstrip_t TIFFNumberOfStrips(TIFF*); +LIBTIFF_DLL_IMPEXP tsize_t TIFFReadEncodedStrip(TIFF*, tstrip_t, tdata_t, tsize_t); +LIBTIFF_DLL_IMPEXP tsize_t TIFFReadRawStrip(TIFF*, tstrip_t, tdata_t, tsize_t); +LIBTIFF_DLL_IMPEXP tsize_t TIFFReadEncodedTile(TIFF*, ttile_t, tdata_t, tsize_t); +LIBTIFF_DLL_IMPEXP tsize_t TIFFReadRawTile(TIFF*, ttile_t, tdata_t, tsize_t); +LIBTIFF_DLL_IMPEXP tsize_t TIFFWriteEncodedStrip(TIFF*, tstrip_t, tdata_t, tsize_t); +LIBTIFF_DLL_IMPEXP tsize_t TIFFWriteRawStrip(TIFF*, tstrip_t, tdata_t, tsize_t); +LIBTIFF_DLL_IMPEXP tsize_t TIFFWriteEncodedTile(TIFF*, ttile_t, tdata_t, tsize_t); +LIBTIFF_DLL_IMPEXP tsize_t TIFFWriteRawTile(TIFF*, ttile_t, tdata_t, tsize_t); +LIBTIFF_DLL_IMPEXP int TIFFDataWidth(TIFFDataType); /* table of tag datatype widths */ +LIBTIFF_DLL_IMPEXP void TIFFSetWriteOffset(TIFF*, toff_t); +LIBTIFF_DLL_IMPEXP void TIFFSwabShort(uint16*); +LIBTIFF_DLL_IMPEXP void TIFFSwabLong(uint32*); +LIBTIFF_DLL_IMPEXP void TIFFSwabDouble(double*); +LIBTIFF_DLL_IMPEXP void TIFFSwabArrayOfShort(uint16*, unsigned long); +LIBTIFF_DLL_IMPEXP void TIFFSwabArrayOfTriples(uint8*, unsigned long); +LIBTIFF_DLL_IMPEXP void TIFFSwabArrayOfLong(uint32*, unsigned long); +LIBTIFF_DLL_IMPEXP void TIFFSwabArrayOfDouble(double*, unsigned long); +LIBTIFF_DLL_IMPEXP void TIFFReverseBits(unsigned char *, unsigned long); +LIBTIFF_DLL_IMPEXP const unsigned char* TIFFGetBitRevTable(int);
#ifdef LOGLUV_PUBLIC #define U_NEU 0.210526316 #define V_NEU 0.473684211 #define UVSCALE 410. -extern double LogL16toY(int); -extern double LogL10toY(int); -extern void XYZtoRGB24(float*, uint8*); -extern int uv_decode(double*, double*, int); -extern void LogLuv24toXYZ(uint32, float*); -extern void LogLuv32toXYZ(uint32, float*); +LIBTIFF_DLL_IMPEXP double LogL16toY(int); +LIBTIFF_DLL_IMPEXP double LogL10toY(int); +LIBTIFF_DLL_IMPEXP void XYZtoRGB24(float*, uint8*); +LIBTIFF_DLL_IMPEXP int uv_decode(double*, double*, int); +LIBTIFF_DLL_IMPEXP void LogLuv24toXYZ(uint32, float*); +LIBTIFF_DLL_IMPEXP void LogLuv32toXYZ(uint32, float*); #if defined(c_plusplus) || defined(__cplusplus) -extern int LogL16fromY(double, int = SGILOGENCODE_NODITHER); -extern int LogL10fromY(double, int = SGILOGENCODE_NODITHER); -extern int uv_encode(double, double, int = SGILOGENCODE_NODITHER); -extern uint32 LogLuv24fromXYZ(float*, int = SGILOGENCODE_NODITHER); -extern uint32 LogLuv32fromXYZ(float*, int = SGILOGENCODE_NODITHER); +LIBTIFF_DLL_IMPEXP int LogL16fromY(double, int = SGILOGENCODE_NODITHER); +LIBTIFF_DLL_IMPEXP int LogL10fromY(double, int = SGILOGENCODE_NODITHER); +LIBTIFF_DLL_IMPEXP int uv_encode(double, double, int = SGILOGENCODE_NODITHER); +LIBTIFF_DLL_IMPEXP uint32 LogLuv24fromXYZ(float*, int = SGILOGENCODE_NODITHER); +LIBTIFF_DLL_IMPEXP uint32 LogLuv32fromXYZ(float*, int = SGILOGENCODE_NODITHER); #else -extern int LogL16fromY(double, int); -extern int LogL10fromY(double, int); -extern int uv_encode(double, double, int); -extern uint32 LogLuv24fromXYZ(float*, int); -extern uint32 LogLuv32fromXYZ(float*, int); +LIBTIFF_DLL_IMPEXP int LogL16fromY(double, int); +LIBTIFF_DLL_IMPEXP int LogL10fromY(double, int); +LIBTIFF_DLL_IMPEXP int uv_encode(double, double, int); +LIBTIFF_DLL_IMPEXP uint32 LogLuv24fromXYZ(float*, int); +LIBTIFF_DLL_IMPEXP uint32 LogLuv32fromXYZ(float*, int); #endif #endif /* LOGLUV_PUBLIC */
-extern int TIFFCIELabToRGBInit(TIFFCIELabToRGB*, TIFFDisplay *, float*); -extern void TIFFCIELabToXYZ(TIFFCIELabToRGB *, uint32, int32, int32, +LIBTIFF_DLL_IMPEXP int TIFFCIELabToRGBInit(TIFFCIELabToRGB*, TIFFDisplay *, float*); +LIBTIFF_DLL_IMPEXP void TIFFCIELabToXYZ(TIFFCIELabToRGB *, uint32, int32, int32, float *, float *, float *); -extern void TIFFXYZToRGB(TIFFCIELabToRGB *, float, float, float, +LIBTIFF_DLL_IMPEXP void TIFFXYZToRGB(TIFFCIELabToRGB *, float, float, float, uint32 *, uint32 *, uint32 *);
-extern int TIFFYCbCrToRGBInit(TIFFYCbCrToRGB*, float*, float*); -extern void TIFFYCbCrtoRGB(TIFFYCbCrToRGB *, uint32, int32, int32, +LIBTIFF_DLL_IMPEXP int TIFFYCbCrToRGBInit(TIFFYCbCrToRGB*, float*, float*); +LIBTIFF_DLL_IMPEXP void TIFFYCbCrtoRGB(TIFFYCbCrToRGB *, uint32, int32, int32, uint32 *, uint32 *, uint32 *);
#if defined(c_plusplus) || defined(__cplusplus)
Propchange: branches/reactos-yarotows/include/reactos/winsock/msafd.h ------------------------------------------------------------------------------ --- svn:mergeinfo (original) +++ svn:mergeinfo Thu Jul 15 20:49:51 2010 @@ -1,2 +1,2 @@ /branches/ros-amd64-bringup/reactos/include/reactos/winsock/msafd.h:34711-34712,34743,34780-34782,34812,34839,34842,34908-34909,34917,34965,35323-35324,35347-35348,35361,35436,35509,35515,35588,35683,35739,35746,35762,35771,35777,35789,35805,35823,35827,35902,35904-35906,35942,35947-35949,35952-35953,35966,36013,36172,36360,36388-36389,36445,36502-36503,36505,36570,36614,36899,36930,36936,36992,37323,37434,37472,37475,37536,37820-37821,37868-37869,37873,37990-37991,38013-38014,38148-38151,38264-38265,38268,38355,39151,39333,39345,39639,40122-40123,40125,40128,40155,40247,40324,40753,40928,40986-40987,40989,40991,40993,40995-40996,41000-41001,41027-41030,41044-41045,41047-41050,41052,41082-41086,41097-41098,41101,41449,41479,41484-41485,41499,41531,41536,41540,41546-41547,41549,43080,43426,43454,43506,43566,43574,43598,43600-43602,43604-43605,43677,43682,43757,43775,43838-43840,43857-43858,43860,43905-43907,43969,44002,44037,44039-44040,44044-44045,44065,44095,44123,44144,44205,44238,44294,44338,44389,44391,44426,44460,44530,44540,44601 -/trunk/reactos/include/reactos/winsock/msafd.h:44354-45543,48010-48040 +/trunk/reactos/include/reactos/winsock/msafd.h:44354-45543,48010-48067
Propchange: branches/reactos-yarotows/include/reactos/winsock/msafdlib.h ------------------------------------------------------------------------------ --- svn:mergeinfo (original) +++ svn:mergeinfo Thu Jul 15 20:49:51 2010 @@ -1,2 +1,2 @@ /branches/ros-amd64-bringup/reactos/include/reactos/winsock/msafdlib.h:34711-34712,34743,34780-34782,34812,34839,34842,34908-34909,34917,34965,35323-35324,35347-35348,35361,35436,35509,35515,35588,35683,35739,35746,35762,35771,35777,35789,35805,35823,35827,35902,35904-35906,35942,35947-35949,35952-35953,35966,36013,36172,36360,36388-36389,36445,36502-36503,36505,36570,36614,36899,36930,36936,36992,37323,37434,37472,37475,37536,37820-37821,37868-37869,37873,37990-37991,38013-38014,38148-38151,38264-38265,38268,38355,39151,39333,39345,39639,40122-40123,40125,40128,40155,40247,40324,40753,40928,40986-40987,40989,40991,40993,40995-40996,41000-41001,41027-41030,41044-41045,41047-41050,41052,41082-41086,41097-41098,41101,41449,41479,41484-41485,41499,41531,41536,41540,41546-41547,41549,43080,43426,43454,43506,43566,43574,43598,43600-43602,43604-43605,43677,43682,43757,43775,43838-43840,43857-43858,43860,43905-43907,43969,44002,44037,44039-44040,44044-44045,44065,44095,44123,44144,44205,44238,44294,44338,44389,44391,44426,44460,44530,44540,44601 -/trunk/reactos/include/reactos/winsock/msafdlib.h:44354-45543,48010-48040 +/trunk/reactos/include/reactos/winsock/msafdlib.h:44354-45543,48010-48067
Propchange: branches/reactos-yarotows/include/reactos/winsock/mswinsock.h ------------------------------------------------------------------------------ --- svn:mergeinfo (original) +++ svn:mergeinfo Thu Jul 15 20:49:51 2010 @@ -1,2 +1,2 @@ /branches/ros-amd64-bringup/reactos/include/reactos/winsock/mswinsock.h:34711-34712,34743,34780-34782,34812,34839,34842,34908-34909,34917,34965,35323-35324,35347-35348,35361,35436,35509,35515,35588,35683,35739,35746,35762,35771,35777,35789,35805,35823,35827,35902,35904-35906,35942,35947-35949,35952-35953,35966,36013,36172,36360,36388-36389,36445,36502-36503,36505,36570,36614,36899,36930,36936,36992,37323,37434,37472,37475,37536,37820-37821,37868-37869,37873,37990-37991,38013-38014,38148-38151,38264-38265,38268,38355,39151,39333,39345,39639,40122-40123,40125,40128,40155,40247,40324,40753,40928,40986-40987,40989,40991,40993,40995-40996,41000-41001,41027-41030,41044-41045,41047-41050,41052,41082-41086,41097-41098,41101,41449,41479,41484-41485,41499,41531,41536,41540,41546-41547,41549,43080,43426,43454,43506,43566,43574,43598,43600-43602,43604-43605,43677,43682,43757,43775,43838-43840,43857-43858,43860,43905-43907,43969,44002,44037,44039-44040,44044-44045,44065,44095,44123,44144,44205,44238,44294,44338,44389,44391,44426,44460,44530,44540,44601 -/trunk/reactos/include/reactos/winsock/mswinsock.h:44354-45543,48010-48040 +/trunk/reactos/include/reactos/winsock/mswinsock.h:44354-45543,48010-48067
Propchange: branches/reactos-yarotows/include/reactos/winsock/rnr20lib.h ------------------------------------------------------------------------------ --- svn:mergeinfo (original) +++ svn:mergeinfo Thu Jul 15 20:49:51 2010 @@ -1,2 +1,2 @@ /branches/ros-amd64-bringup/reactos/include/reactos/winsock/rnr20lib.h:34711-34712,34743,34780-34782,34812,34839,34842,34908-34909,34917,34965,35323-35324,35347-35348,35361,35436,35509,35515,35588,35683,35739,35746,35762,35771,35777,35789,35805,35823,35827,35902,35904-35906,35942,35947-35949,35952-35953,35966,36013,36172,36360,36388-36389,36445,36502-36503,36505,36570,36614,36899,36930,36936,36992,37323,37434,37472,37475,37536,37820-37821,37868-37869,37873,37990-37991,38013-38014,38148-38151,38264-38265,38268,38355,39151,39333,39345,39639,40122-40123,40125,40128,40155,40247,40324,40753,40928,40986-40987,40989,40991,40993,40995-40996,41000-41001,41027-41030,41044-41045,41047-41050,41052,41082-41086,41097-41098,41101,41449,41479,41484-41485,41499,41531,41536,41540,41546-41547,41549,43080,43426,43454,43506,43566,43574,43598,43600-43602,43604-43605,43677,43682,43757,43775,43838-43840,43857-43858,43860,43905-43907,43969,44002,44037,44039-44040,44044-44045,44065,44095,44123,44144,44205,44238,44294,44338,44389,44391,44426,44460,44530,44540,44601 -/trunk/reactos/include/reactos/winsock/rnr20lib.h:44354-45543,48010-48040 +/trunk/reactos/include/reactos/winsock/rnr20lib.h:44354-45543,48010-48067
Propchange: branches/reactos-yarotows/include/reactos/winsock/wsmobile.h ------------------------------------------------------------------------------ --- svn:mergeinfo (original) +++ svn:mergeinfo Thu Jul 15 20:49:51 2010 @@ -1,2 +1,2 @@ /branches/ros-amd64-bringup/reactos/include/reactos/winsock/wsmobile.h:34711-34712,34743,34780-34782,34812,34839,34842,34908-34909,34917,34965,35323-35324,35347-35348,35361,35436,35509,35515,35588,35683,35739,35746,35762,35771,35777,35789,35805,35823,35827,35902,35904-35906,35942,35947-35949,35952-35953,35966,36013,36172,36360,36388-36389,36445,36502-36503,36505,36570,36614,36899,36930,36936,36992,37323,37434,37472,37475,37536,37820-37821,37868-37869,37873,37990-37991,38013-38014,38148-38151,38264-38265,38268,38355,39151,39333,39345,39639,40122-40123,40125,40128,40155,40247,40324,40753,40928,40986-40987,40989,40991,40993,40995-40996,41000-41001,41027-41030,41044-41045,41047-41050,41052,41082-41086,41097-41098,41101,41449,41479,41484-41485,41499,41531,41536,41540,41546-41547,41549,43080,43426,43454,43506,43566,43574,43598,43600-43602,43604-43605,43677,43682,43757,43775,43838-43840,43857-43858,43860,43905-43907,43969,44002,44037,44039-44040,44044-44045,44065,44095,44123,44144,44205,44238,44294,44338,44389,44391,44426,44460,44530,44540,44601 -/trunk/reactos/include/reactos/winsock/wsmobile.h:44354-45543,48010-48040 +/trunk/reactos/include/reactos/winsock/wsmobile.h:44354-45543,48010-48067
Modified: branches/reactos-yarotows/ntoskrnl/ex/rundown.c URL: http://svn.reactos.org/svn/reactos/branches/reactos-yarotows/ntoskrnl/ex/run... ============================================================================== --- branches/reactos-yarotows/ntoskrnl/ex/rundown.c [iso-8859-1] (original) +++ branches/reactos-yarotows/ntoskrnl/ex/rundown.c [iso-8859-1] Thu Jul 15 20:49:51 2010 @@ -491,7 +491,7 @@ VOID NTAPI ExInitializeRundownProtectionCacheAware(IN PEX_RUNDOWN_REF_CACHE_AWARE RunRefCacheAware, - IN ULONG Count) + IN SIZE_T Count) { DBG_UNREFERENCED_PARAMETER(RunRefCacheAware); DBG_UNREFERENCED_PARAMETER(Count);
Modified: branches/reactos-yarotows/ntoskrnl/include/internal/amd64/ke.h URL: http://svn.reactos.org/svn/reactos/branches/reactos-yarotows/ntoskrnl/includ... ============================================================================== --- branches/reactos-yarotows/ntoskrnl/include/internal/amd64/ke.h [iso-8859-1] (original) +++ branches/reactos-yarotows/ntoskrnl/include/internal/amd64/ke.h [iso-8859-1] Thu Jul 15 20:49:51 2010 @@ -316,9 +316,6 @@
#endif /* __ASM__ */
-#undef KeGetCurrentThread -#define _KeGetCurrentThread KeGetCurrentThread - // HACK extern NTKERNELAPI volatile KSYSTEM_TIME KeTickCount;
Modified: branches/reactos-yarotows/ntoskrnl/include/internal/mm.h URL: http://svn.reactos.org/svn/reactos/branches/reactos-yarotows/ntoskrnl/includ... ============================================================================== --- branches/reactos-yarotows/ntoskrnl/include/internal/mm.h [iso-8859-1] (original) +++ branches/reactos-yarotows/ntoskrnl/include/internal/mm.h [iso-8859-1] Thu Jul 15 20:49:51 2010 @@ -17,7 +17,7 @@ extern ULONG MmLowestPhysicalPage; extern ULONG MmHighestPhysicalPage; extern ULONG MmAvailablePages; -extern ULONG MmResidentAvailablePages; +extern PFN_NUMBER MmResidentAvailablePages;
extern PVOID MmPagedPoolBase; extern ULONG MmPagedPoolSize;
Modified: branches/reactos-yarotows/ntoskrnl/include/ntoskrnl.h URL: http://svn.reactos.org/svn/reactos/branches/reactos-yarotows/ntoskrnl/includ... ============================================================================== --- branches/reactos-yarotows/ntoskrnl/include/ntoskrnl.h [iso-8859-1] (original) +++ branches/reactos-yarotows/ntoskrnl/include/ntoskrnl.h [iso-8859-1] Thu Jul 15 20:49:51 2010 @@ -11,6 +11,12 @@ /* ARM Bringup Hack */ #ifdef _M_ARM #define DbgPrint DbgPrintEarly +#endif + +/* WDK hacks */ +#ifdef _M_AMD64 +#define IoAllocateAdapterChannel _IoAllocateAdapterChannel +#define KeGetCurrentThread _KeGetCurrentThread #endif
/* Version Data */
Modified: branches/reactos-yarotows/ntoskrnl/io/iomgr/adapter.c URL: http://svn.reactos.org/svn/reactos/branches/reactos-yarotows/ntoskrnl/io/iom... ============================================================================== --- branches/reactos-yarotows/ntoskrnl/io/iomgr/adapter.c [iso-8859-1] (original) +++ branches/reactos-yarotows/ntoskrnl/io/iomgr/adapter.c [iso-8859-1] Thu Jul 15 20:49:51 2010 @@ -21,6 +21,7 @@
/* FUNCTIONS *****************************************************************/
+#undef IoAllocateAdapterChannel /* * @implemented */
Modified: branches/reactos-yarotows/ntoskrnl/kd64/kddata.c URL: http://svn.reactos.org/svn/reactos/branches/reactos-yarotows/ntoskrnl/kd64/k... ============================================================================== --- branches/reactos-yarotows/ntoskrnl/kd64/kddata.c [iso-8859-1] (original) +++ branches/reactos-yarotows/ntoskrnl/kd64/kddata.c [iso-8859-1] Thu Jul 15 20:49:51 2010 @@ -526,14 +526,14 @@ // // AMD64 GDT/LDT/TSS constants // - KGDT_64_R0_CODE, - KGDT_64_DATA, - KGDT_64_DATA, - KGDT_64_R3_CODE, - KGDT_64_DATA, - KGDT_64_DATA, - 0, - KGDT_TSS, + KGDT64_R0_CODE, + KGDT64_R3_DATA, + KGDT64_R3_DATA, + KGDT64_R3_CODE, + KGDT64_R3_DATA, + KGDT64_R3_DATA, + 0, + KGDT64_SYS_TSS, 0, 0, #else
Modified: branches/reactos-yarotows/ntoskrnl/ke/clock.c URL: http://svn.reactos.org/svn/reactos/branches/reactos-yarotows/ntoskrnl/ke/clo... ============================================================================== --- branches/reactos-yarotows/ntoskrnl/ke/clock.c [iso-8859-1] (original) +++ branches/reactos-yarotows/ntoskrnl/ke/clock.c [iso-8859-1] Thu Jul 15 20:49:51 2010 @@ -175,6 +175,7 @@ } }
+#ifndef _M_AMD64 /* * @implemented */ @@ -217,6 +218,7 @@ /* Return the time value */ return CurrentTime.QuadPart; } +#endif
/* * @implemented
Modified: branches/reactos-yarotows/ntoskrnl/mm/ARM3/miarm.h URL: http://svn.reactos.org/svn/reactos/branches/reactos-yarotows/ntoskrnl/mm/ARM... ============================================================================== --- branches/reactos-yarotows/ntoskrnl/mm/ARM3/miarm.h [iso-8859-1] (original) +++ branches/reactos-yarotows/ntoskrnl/mm/ARM3/miarm.h [iso-8859-1] Thu Jul 15 20:49:51 2010 @@ -5,6 +5,8 @@ * PURPOSE: ARM Memory Manager Header * PROGRAMMERS: ReactOS Portable Systems Group */ + +#ifndef _M_AMD64
#define MI_MIN_PAGES_FOR_NONPAGED_POOL_TUNING ((255*1024*1024) >> PAGE_SHIFT) #define MI_MIN_PAGES_FOR_SYSPTE_TUNING ((19*1024*1024) >> PAGE_SHIFT) @@ -37,6 +39,8 @@
#define MM_HIGHEST_VAD_ADDRESS \ (PVOID)((ULONG_PTR)MM_HIGHEST_USER_ADDRESS - (16 * PAGE_SIZE)) + +#endif /* !_M_AMD64 */
/* Make the code cleaner with some definitions for size multiples */ #define _1KB (1024) @@ -58,7 +62,9 @@ #define PDE_COUNT 4096 #define PTE_COUNT 256 #else -#error Define these please! +#define PD_COUNT PPE_PER_PAGE +#define PDE_COUNT PDE_PER_PAGE +#define PTE_COUNT PTE_PER_PAGE #endif
#ifdef _M_IX86
Propchange: branches/reactos-yarotows/subsystems/win32/csrss/win32csr/ ------------------------------------------------------------------------------ --- svn:mergeinfo (original) +++ svn:mergeinfo Thu Jul 15 20:49:51 2010 @@ -1,4 +1,4 @@ /branches/header-work/subsystems/win32/csrss/win32csr:45691-46463 /branches/ros-amd64-bringup/reactos/subsystems/win32/csrss/win32csr:34711-34712,34741,34743,34780-34782,34803,34812,34839,34842,34864,34870,34874,34877,34908-34909,34917,34965,35323-35324,35347-35348,35361,35436,35509,35515,35588,35655,35683,35739,35746,35762,35771,35777,35781,35789,35805,35823,35827,35902,35904-35906,35942,35947-35949,35952-35953,35966,36011-36013,36172,36360,36380,36388-36389,36397,36445,36502-36503,36505,36570,36614,36898-36899,36930,36936,36949,36951,36958,36961,36964,36969,36972,36992,37323,37434,37472,37475,37536,37820-37821,37868-37869,37873,37990-37991,38013-38014,38092,38100,38148-38151,38264-38265,38268,38355,39151,39333,39335,39345,39639,40122-40123,40125,40128,40155,40247,40324,40753,40927-40928,40986-40987,40989,40991,40993,40995-40996,41000-41001,41027-41030,41044-41045,41047-41050,41052,41070,41082-41086,41097-41098,41101,41449,41479,41484-41485,41499-41500,41502,41531,41536,41540,41546-41547,41549,43080,43426,43454,43506,43566,43574,43598,43600-43602,43604-43605,43677,43682,43757,43775,43836,43838-43840,43857-43858,43860,43905-43907,43969,44002,44036-44037,44039-44040,44044-44045,44065,44095,44123,44144,44205,44238,44294,44338-44339,44389,44391,44426,44460,44467-44468,44470-44471,44499,44501,44503-44504,44506,44510-44512,44521,44523-44526,44530,44540,44601,44772,45124,45126-45127,46394,46478,46511,46524,46526,46534-46535,46537-46539,46589 /branches/ros-amd64-bringup/subsystems/win32/csrss/win32csr:36852 -/trunk/reactos/subsystems/win32/csrss/win32csr:45219-48040 +/trunk/reactos/subsystems/win32/csrss/win32csr:45219-48067
Modified: branches/reactos-yarotows/subsystems/win32/win32k/objects/cliprgn.c URL: http://svn.reactos.org/svn/reactos/branches/reactos-yarotows/subsystems/win3... ============================================================================== --- branches/reactos-yarotows/subsystems/win32/win32k/objects/cliprgn.c [iso-8859-1] (original) +++ branches/reactos-yarotows/subsystems/win32/win32k/objects/cliprgn.c [iso-8859-1] Thu Jul 15 20:49:51 2010 @@ -26,7 +26,7 @@ CLIPPING_UpdateGCRegion(DC* Dc) { PROSRGNDATA CombinedRegion; - HRGN hRgnVis = NULL; + HRGN hRgnVis = Dc->prgnVis->BaseObject.hHmgr;
// would prefer this, but the rest of the code sucks // ASSERT(Dc->rosdc.hGCClipRgn); @@ -45,7 +45,7 @@ Dc->rosdc.hGCClipRgn = IntSysCreateRectRgn(0, 0, 0, 0);
if (Dc->rosdc.hClipRgn == NULL) - NtGdiCombineRgn(Dc->rosdc.hGCClipRgn, ((PROSRGNDATA)Dc->prgnVis)->BaseObject.hHmgr, 0, RGN_COPY); + NtGdiCombineRgn(Dc->rosdc.hGCClipRgn, hRgnVis, 0, RGN_COPY); else NtGdiCombineRgn(Dc->rosdc.hGCClipRgn, Dc->rosdc.hClipRgn, hRgnVis, RGN_AND);