ReactOS.org
Sign In
Sign Up
Sign In
Sign Up
Manage this list
×
Keyboard Shortcuts
Thread View
j
: Next unread message
k
: Previous unread message
j a
: Jump to all threads
j l
: Jump to MailingList overview
2025
January
2024
December
November
October
September
August
July
June
May
April
March
February
January
2023
December
November
October
September
August
July
June
May
April
March
February
January
2022
December
November
October
September
August
July
June
May
April
March
February
January
2021
December
November
October
September
August
July
June
May
April
March
February
January
2020
December
November
October
September
August
July
June
May
April
March
February
January
2019
December
November
October
September
August
July
June
May
April
March
February
January
2018
December
November
October
September
August
July
June
May
April
March
February
January
2017
December
November
October
September
August
July
June
May
April
March
February
January
2016
December
November
October
September
August
July
June
May
April
March
February
January
2015
December
November
October
September
August
July
June
May
April
March
February
January
2014
December
November
October
September
August
July
June
May
April
March
February
January
2013
December
November
October
September
August
July
June
May
April
March
February
January
2012
December
November
October
September
August
July
June
May
April
March
February
January
2011
December
November
October
September
August
July
June
May
April
March
February
January
2010
December
November
October
September
August
July
June
May
April
March
February
January
2009
December
November
October
September
August
July
June
May
April
March
February
January
2008
December
November
October
September
August
July
June
May
April
March
February
January
2007
December
November
October
September
August
July
June
May
April
March
February
January
2006
December
November
October
September
August
July
June
May
April
March
February
January
2005
December
November
October
September
August
July
June
May
April
March
February
January
2004
December
November
October
September
August
July
June
May
April
March
February
List overview
Download
Ros-diffs
September 2007
----- 2025 -----
January 2025
----- 2024 -----
December 2024
November 2024
October 2024
September 2024
August 2024
July 2024
June 2024
May 2024
April 2024
March 2024
February 2024
January 2024
----- 2023 -----
December 2023
November 2023
October 2023
September 2023
August 2023
July 2023
June 2023
May 2023
April 2023
March 2023
February 2023
January 2023
----- 2022 -----
December 2022
November 2022
October 2022
September 2022
August 2022
July 2022
June 2022
May 2022
April 2022
March 2022
February 2022
January 2022
----- 2021 -----
December 2021
November 2021
October 2021
September 2021
August 2021
July 2021
June 2021
May 2021
April 2021
March 2021
February 2021
January 2021
----- 2020 -----
December 2020
November 2020
October 2020
September 2020
August 2020
July 2020
June 2020
May 2020
April 2020
March 2020
February 2020
January 2020
----- 2019 -----
December 2019
November 2019
October 2019
September 2019
August 2019
July 2019
June 2019
May 2019
April 2019
March 2019
February 2019
January 2019
----- 2018 -----
December 2018
November 2018
October 2018
September 2018
August 2018
July 2018
June 2018
May 2018
April 2018
March 2018
February 2018
January 2018
----- 2017 -----
December 2017
November 2017
October 2017
September 2017
August 2017
July 2017
June 2017
May 2017
April 2017
March 2017
February 2017
January 2017
----- 2016 -----
December 2016
November 2016
October 2016
September 2016
August 2016
July 2016
June 2016
May 2016
April 2016
March 2016
February 2016
January 2016
----- 2015 -----
December 2015
November 2015
October 2015
September 2015
August 2015
July 2015
June 2015
May 2015
April 2015
March 2015
February 2015
January 2015
----- 2014 -----
December 2014
November 2014
October 2014
September 2014
August 2014
July 2014
June 2014
May 2014
April 2014
March 2014
February 2014
January 2014
----- 2013 -----
December 2013
November 2013
October 2013
September 2013
August 2013
July 2013
June 2013
May 2013
April 2013
March 2013
February 2013
January 2013
----- 2012 -----
December 2012
November 2012
October 2012
September 2012
August 2012
July 2012
June 2012
May 2012
April 2012
March 2012
February 2012
January 2012
----- 2011 -----
December 2011
November 2011
October 2011
September 2011
August 2011
July 2011
June 2011
May 2011
April 2011
March 2011
February 2011
January 2011
----- 2010 -----
December 2010
November 2010
October 2010
September 2010
August 2010
July 2010
June 2010
May 2010
April 2010
March 2010
February 2010
January 2010
----- 2009 -----
December 2009
November 2009
October 2009
September 2009
August 2009
July 2009
June 2009
May 2009
April 2009
March 2009
February 2009
January 2009
----- 2008 -----
December 2008
November 2008
October 2008
September 2008
August 2008
July 2008
June 2008
May 2008
April 2008
March 2008
February 2008
January 2008
----- 2007 -----
December 2007
November 2007
October 2007
September 2007
August 2007
July 2007
June 2007
May 2007
April 2007
March 2007
February 2007
January 2007
----- 2006 -----
December 2006
November 2006
October 2006
September 2006
August 2006
July 2006
June 2006
May 2006
April 2006
March 2006
February 2006
January 2006
----- 2005 -----
December 2005
November 2005
October 2005
September 2005
August 2005
July 2005
June 2005
May 2005
April 2005
March 2005
February 2005
January 2005
----- 2004 -----
December 2004
November 2004
October 2004
September 2004
August 2004
July 2004
June 2004
May 2004
April 2004
March 2004
February 2004
ros-diffs@reactos.org
19 participants
589 discussions
Start a n
N
ew thread
[hpoussin] 29038: Delete useless files
by hpoussin@svn.reactos.org
Author: hpoussin Date: Fri Sep 14 21:10:48 2007 New Revision: 29038 URL:
http://svn.reactos.org/svn/reactos?rev=29038&view=rev
Log: Delete useless files Removed: trunk/reactos/ntoskrnl/ntoskrnl.dbg.lnk trunk/reactos/tools/wine2ros/ Removed: trunk/reactos/ntoskrnl/ntoskrnl.dbg.lnk URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/ntoskrnl.dbg.lnk?…
============================================================================== --- trunk/reactos/ntoskrnl/ntoskrnl.dbg.lnk (original) +++ trunk/reactos/ntoskrnl/ntoskrnl.dbg.lnk (removed) @@ -1,90 +1,0 @@ -OUTPUT_FORMAT(pei-i386) -ENTRY(_mainCRTStartup) -SECTIONS -{ - /DISCARD/ : - { - *(.init) - *(.text) - *(SORT(.text$*)) - *(.glue_7t) - *(.glue_7) - *(.fini) - /* ??? Why is .gcc_exc here? */ - *(.gcc_exc) - *(.gcc_except_table) - } - /DISCARD/ : - { - *(init) - } - /* The Cygwin32 library uses a section to avoid copying certain data - on fork. This used to be named ".data". The linker used - to include this between __data_start__ and __data_end__, but that - breaks building the cygwin32 dll. Instead, we name the section - ".data_cygwin_nocopy" and explictly include it after __data_end__. */ - /DISCARD/ : - { - *(.data) - *(.data2) - *(SORT(.data$*)) - *(.data_cygwin_nocopy) - } - /DISCARD/ : - { - *(.rdata) - *(SORT(.rdata$*)) - *(.eh_frame) - } - /DISCARD/ : - { - *(.edata) - } - /DISCARD/ : - { - *(.debug$S) - *(.debug$T) - *(.debug$F) - *(.drectve) - } - /DISCARD/ : - { - /* This cannot currently be handled with grouped sections. - See pe.em:sort_sections. */ - SORT(*)(.idata$2) - SORT(*)(.idata$3) - /* These zeroes mark the end of the import list. */ -/* LONG (0); LONG (0); LONG (0); LONG (0); LONG (0);*/ - SORT(*)(.idata$4) - SORT(*)(.idata$5) - SORT(*)(.idata$6) - SORT(*)(.idata$7) - } - /DISCARD/ : - { - *(SORT(.CRT$*)) - } - /DISCARD/ : - { - *(.rsrc) - *(SORT(.rsrc$*)) - } - /DISCARD/ : - { - *(.bss) - *(COMMON) - } - /DISCARD/ : - { - *(.reloc) - } - .stab BLOCK(__section_alignment__) (NOLOAD) : - { - [ .stab ] - } - .stabstr BLOCK(__section_alignment__) (NOLOAD) : - { - [ .stabstr ] - } -} -
17 years, 3 months
1
0
0
0
[hpoussin] 29037: Add missing svn:eol-style=native property
by hpoussin@svn.reactos.org
Author: hpoussin Date: Fri Sep 14 21:09:45 2007 New Revision: 29037 URL:
http://svn.reactos.org/svn/reactos?rev=29037&view=rev
Log: Add missing svn:eol-style=native property Modified: trunk/reactos/dll/keyboard/kbdbur/kbdbur.c (props changed) trunk/reactos/dll/keyboard/kbdbur/kbdbur.def (props changed) trunk/reactos/dll/keyboard/kbdbur/kbdbur.rc (props changed) trunk/reactos/dll/keyboard/kbdfi/kbdfi.c (props changed) trunk/reactos/dll/keyboard/kbdfi/kbdfi.def (props changed) trunk/reactos/dll/keyboard/kbdfi/kbdfi.rc (props changed) trunk/reactos/dll/keyboard/kbdit/kbdit.c (contents, props changed) trunk/reactos/dll/keyboard/kbdit/kbdit.def (props changed) trunk/reactos/dll/keyboard/kbdit/kbdit.rc (props changed) trunk/reactos/dll/keyboard/kbdth/kbdth.c (props changed) trunk/reactos/dll/keyboard/kbdth/kbdth.def (props changed) trunk/reactos/dll/keyboard/kbdth/kbdth.rc (props changed) trunk/reactos/drivers/multimedia/audio/mpu401_nt4/mpu401.c (props changed) trunk/reactos/drivers/multimedia/audio/mpu401_nt4/mpu401.h (props changed) trunk/reactos/drivers/multimedia/audio/mpu401_nt4/mpu401.rc (props changed) trunk/reactos/drivers/multimedia/audio/mpu401_nt4/portio.c (props changed) trunk/reactos/drivers/multimedia/audio/mpu401_nt4/readme.txt (props changed) trunk/reactos/drivers/multimedia/audio/mpu401_nt4/sbdebug.h (props changed) trunk/reactos/drivers/multimedia/audio/mpu401_nt4/settings.c (props changed) trunk/reactos/drivers/multimedia/audio/mpu401_nt4/test.c (props changed) trunk/reactos/drivers/wdm/audio/sysaudio/main.c (props changed) trunk/reactos/drivers/wdm/audio/sysaudio/sysaudio.rc (props changed) trunk/reactos/hal/halppc/generic/beep.c (props changed) trunk/reactos/hal/halppc/generic/bus.c (props changed) trunk/reactos/hal/halppc/generic/cmos.c (contents, props changed) trunk/reactos/hal/halppc/generic/display.c (props changed) trunk/reactos/hal/halppc/generic/dma.c (props changed) trunk/reactos/hal/halppc/generic/drive.c (props changed) trunk/reactos/hal/halppc/generic/enum.c (props changed) trunk/reactos/hal/halppc/generic/fmutex.c (props changed) trunk/reactos/hal/halppc/generic/font.c (props changed) trunk/reactos/hal/halppc/generic/halinit.c (props changed) trunk/reactos/hal/halppc/generic/ipi.c (props changed) trunk/reactos/hal/halppc/generic/irql.c (props changed) trunk/reactos/hal/halppc/generic/isa.c (props changed) trunk/reactos/hal/halppc/generic/kdbg.c (props changed) trunk/reactos/hal/halppc/generic/mca.c (props changed) trunk/reactos/hal/halppc/generic/misc.c (props changed) trunk/reactos/hal/halppc/generic/pci.c (props changed) trunk/reactos/hal/halppc/generic/portio.c (props changed) trunk/reactos/hal/halppc/generic/processor.c (props changed) trunk/reactos/hal/halppc/generic/profil.c (contents, props changed) trunk/reactos/hal/halppc/generic/pwroff.c (props changed) trunk/reactos/hal/halppc/generic/reboot.c (props changed) trunk/reactos/hal/halppc/generic/resource.c (props changed) trunk/reactos/hal/halppc/generic/spinlock.c (props changed) trunk/reactos/hal/halppc/generic/sysbus.c (props changed) trunk/reactos/hal/halppc/generic/sysinfo.c (props changed) trunk/reactos/hal/halppc/generic/systimer.S (contents, props changed) trunk/reactos/hal/halppc/generic/time.c (props changed) trunk/reactos/hal/halppc/generic/timer.c (props changed) trunk/reactos/hal/halppc/include/apic.h (props changed) trunk/reactos/hal/halppc/include/bus.h (props changed) trunk/reactos/hal/halppc/include/hal.h (props changed) trunk/reactos/hal/halppc/include/haldma.h (props changed) trunk/reactos/hal/halppc/include/halirq.h (props changed) trunk/reactos/hal/halppc/include/halp.h (props changed) trunk/reactos/hal/halppc/include/ioapic.h (props changed) trunk/reactos/hal/halppc/include/mps.h (props changed) trunk/reactos/hal/halppc/up/halinit_up.c (props changed) trunk/reactos/hal/halppc/up/halup.rc (props changed) Propchange: trunk/reactos/dll/keyboard/kbdbur/kbdbur.c ------------------------------------------------------------------------------ svn:eol-style = native Propchange: trunk/reactos/dll/keyboard/kbdbur/kbdbur.def ------------------------------------------------------------------------------ svn:eol-style = native Propchange: trunk/reactos/dll/keyboard/kbdbur/kbdbur.rc ------------------------------------------------------------------------------ svn:eol-style = native Propchange: trunk/reactos/dll/keyboard/kbdfi/kbdfi.c ------------------------------------------------------------------------------ svn:eol-style = native Propchange: trunk/reactos/dll/keyboard/kbdfi/kbdfi.def ------------------------------------------------------------------------------ svn:eol-style = native Propchange: trunk/reactos/dll/keyboard/kbdfi/kbdfi.rc ------------------------------------------------------------------------------ svn:eol-style = native Modified: trunk/reactos/dll/keyboard/kbdit/kbdit.c URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/keyboard/kbdit/kbdit.c…
============================================================================== --- trunk/reactos/dll/keyboard/kbdit/kbdit.c (original) +++ trunk/reactos/dll/keyboard/kbdit/kbdit.c Fri Sep 14 21:09:45 2007 @@ -1,417 +1,417 @@ -/* - * ReactOS Italian Keyboard layout - * Copyright (C) 2007 ReactOS - * License: LGPL, see: LGPL.txt - * - */ - -#include <windows.h> -#include <internal/kbd.h> - -#ifdef _M_IA64 -#define ROSDATA static __declspec(allocate(".data")) -#else -#ifdef _MSC_VER -#pragma data_seg(".data") -#define ROSDATA static -#else -#define ROSDATA static __attribute__((section(".data"))) -#endif -#endif - -#define VK_EMPTY 0xff /* The non-existent VK */ -#define KSHIFT 0x001 /* Shift modifier */ -#define KCTRL 0x002 /* Ctrl modifier */ -#define KALT 0x004 /* Alt modifier */ -#define KEXT 0x100 /* Extended key code */ -#define KMULTI 0x200 /* Multi-key */ -#define KSPEC 0x400 /* Special key */ -#define KNUMP 0x800 /* Number-pad */ -#define KNUMS 0xc00 /* Special + number pad */ -#define KMEXT 0x300 /* Multi + ext */ - -#define SHFT_INVALID 0x0F - -ROSDATA USHORT scancode_to_vk[] = { -/* 00 */ VK_EMPTY, -/* 01 */ VK_ESCAPE, -/* 02 */ '1', -/* 03 */ '2', -/* 04 */ '3', -/* 05 */ '4', -/* 06 */ '5', -/* 07 */ '6', -/* 08 */ '7', -/* 09 */ '8', -/* 0a */ '9', -/* 0b */ '0', -/* 0c */ VK_OEM_4, -/* 0d */ VK_OEM_6, -/* 0e */ VK_BACK, -/* 0f */ VK_TAB, -/* 10 */ 'Q', -/* 11 */ 'W', -/* 12 */ 'E', -/* 13 */ 'R', -/* 14 */ 'T', -/* 15 */ 'Y', -/* 16 */ 'U', -/* 17 */ 'I', -/* 18 */ 'O', -/* 19 */ 'P', -/* 1a */ VK_OEM_1, -/* 1b */ VK_OEM_PLUS, -/* 1c */ VK_RETURN, -/* 1d */ VK_LCONTROL, -/* 1e */ 'A', -/* 1f */ 'S', -/* 20 */ 'D', -/* 21 */ 'F', -/* 22 */ 'G', -/* 23 */ 'H', -/* 24 */ 'J', -/* 25 */ 'K', -/* 26 */ 'L', -/* 27 */ VK_OEM_3, -/* 28 */ VK_OEM_7, -/* 29 */ VK_OEM_2, -/* 2a */ VK_LSHIFT, -/* 2b */ VK_OEM_5, -/* 2c */ 'Z', -/* 2d */ 'X', -/* 2e */ 'C', -/* 2f */ 'V', -/* 30 */ 'B', -/* 31 */ 'N', -/* 32 */ 'M', -/* 33 */ VK_OEM_COMMA, -/* 34 */ VK_OEM_PERIOD, -/* 35 */ VK_OEM_MINUS, -/* 36 */ VK_RSHIFT, -/* 37 */ VK_MULTIPLY, -/* 38 */ VK_LMENU, -/* 39 */ VK_SPACE, -/* 3a */ VK_CAPITAL, -/* 3b */ VK_F1, -/* 3c */ VK_F2, -/* 3d */ VK_F3, -/* 3e */ VK_F4, -/* 3f */ VK_F5, -/* 40 */ VK_F6, -/* 41 */ VK_F7, -/* 42 */ VK_F8, -/* 43 */ VK_F9, -/* 44 */ VK_F10, -/* 45 */ VK_NUMLOCK | KMEXT, -/* 46 */ VK_SCROLL | KMULTI, -/* 47 */ VK_HOME | KNUMS, -/* 48 */ VK_UP | KNUMS, -/* 49 */ VK_PRIOR | KNUMS, -/* 4a */ VK_SUBTRACT, -/* 4b */ VK_LEFT | KNUMS, -/* 4c */ VK_CLEAR | KNUMS, -/* 4d */ VK_RIGHT | KNUMS, -/* 4e */ VK_ADD, -/* 4f */ VK_END | KNUMS, -/* 50 */ VK_DOWN | KNUMS, -/* 51 */ VK_NEXT | KNUMS, -/* 52 */ VK_INSERT | KNUMS, -/* 53 */ VK_DELETE | KNUMS, -/* 54 */ VK_SNAPSHOT, -/* 55 */ VK_EMPTY, -/* 56 */ VK_OEM_102, -/* 57 */ VK_F11, -/* 58 */ VK_F12, -/* 59 */ VK_EMPTY, -/* 5a */ VK_CLEAR, -/* 5b */ VK_EMPTY, -/* 5c */ VK_EMPTY, -/* 5d */ VK_EMPTY, -/* 5e */ VK_EMPTY, /* EREOF */ -/* 5f */ VK_EMPTY, -/* 60 */ VK_EMPTY, -/* 61 */ VK_EMPTY, -/* 62 */ VK_EMPTY, -/* 63 */ VK_EMPTY, /* ZOOM */ -/* 64 */ VK_HELP, -/* 65 */ VK_F13, -/* 66 */ VK_F14, -/* 67 */ VK_F15, -/* 68 */ VK_F16, -/* 69 */ VK_F17, -/* 6a */ VK_F18, -/* 6b */ VK_F19, -/* 6c */ VK_F20, -/* 6d */ VK_F21, -/* 6e */ VK_F22, -/* 6f */ VK_F23, -/* 70 */ VK_EMPTY, -/* 71 */ VK_EMPTY, -/* 72 */ VK_EMPTY, -/* 73 */ VK_EMPTY, -/* 74 */ VK_EMPTY, -/* 75 */ VK_EMPTY, -/* 76 */ VK_EMPTY, -/* 77 */ VK_F24, -/* 78 */ VK_EMPTY, -/* 79 */ VK_EMPTY, -/* 7a */ VK_EMPTY, -/* 7b */ VK_EMPTY, -/* 7c */ VK_EMPTY, -/* 7d */ VK_EMPTY, -/* 7e */ VK_EMPTY, -/* 7f */ VK_EMPTY, -/* 80 */ VK_EMPTY, -/* 00 */ 0 -}; - -ROSDATA VSC_VK extcode0_to_vk[] = { - { 0, 0 }, -}; - -ROSDATA VSC_VK extcode1_to_vk[] = { - { 0, 0 }, -}; - -ROSDATA VK_TO_BIT modifier_keys[] = { - { VK_SHIFT, KSHIFT }, - { VK_CONTROL, KCTRL }, - { VK_MENU, KALT }, - { 0, 0 } -}; - -ROSDATA MODIFIERS modifier_bits = { - modifier_keys, - 6, - { 0, 1, 2, 4, SHFT_INVALID, SHFT_INVALID, 3 } -}; - -#define NOCAPS 0 -#define CAPS KSHIFT /* Caps -> shift */ - -ROSDATA VK_TO_WCHARS2 key_to_chars_2mod[] = { - /* Normal vs Shifted */ - /* The numbers */ - { '1', NOCAPS, {'1', '!'} }, - { '2', NOCAPS, {'2', '"'} }, - { '3', NOCAPS, {'3', 0x00a3} }, - { '4', NOCAPS, {'4', '$'} }, - { '5', NOCAPS, {'5', '%'} }, - { '6', NOCAPS, {'6', '&'} }, - { '7', NOCAPS, {'7', '/'} }, - { '8', NOCAPS, {'8', '('} }, - { '9', NOCAPS, {'9', ')'} }, - { '0', NOCAPS, {'0', '='} }, - - /* Specials */ - /* Ctrl-_ generates US */ - { VK_OEM_2 ,NOCAPS, {'\\', '|'} }, - { VK_OEM_4 ,NOCAPS, {'\'', '?'} }, - { VK_OEM_102 ,NOCAPS, {'<', '>'} }, - { VK_OEM_COMMA ,NOCAPS, {',', ';'} }, - { VK_OEM_PERIOD ,NOCAPS, {'.', ':'} }, - { VK_OEM_MINUS ,NOCAPS, {'-', '_'} }, - /* Keys that do not have shift states */ - { VK_TAB ,NOCAPS, {'\t','\t'} }, - { VK_ADD ,NOCAPS, {'+', '+'} }, - { VK_SUBTRACT,NOCAPS, {'-', '-'} }, - { VK_MULTIPLY,NOCAPS, {'*', '*'} }, - { VK_DIVIDE ,NOCAPS, {'/', '/'} }, - { VK_ESCAPE ,NOCAPS, {'\x1b','\x1b'} }, - { VK_SPACE ,NOCAPS, {' ', ' '} }, - { VK_OEM_5 ,NOCAPS, {0x00f9, 0x00a7} },//ù§ - { 0, 0 } -}; - -ROSDATA VK_TO_WCHARS3 key_to_chars_3mod[] = { - /* Normal, Shifted, Ctrl */ - /* Legacy (telnet-style) ascii escapes */ - { VK_RETURN,0, {'\r', '\r', '\n'} }, - { 0,0 } -}; - -ROSDATA VK_TO_WCHARS4 key_to_chars_4mod[] = { - /* Normal, Shifted, Ctrl, C-S-x */ - { VK_OEM_6, NOCAPS, {0x00ec, '^', WCH_NONE, '~' } }, - { VK_OEM_3, NOCAPS, {0x00f2, 0x00e7, WCH_NONE, '@' } },//òç - { VK_OEM_7, NOCAPS, {0x00e0, 0x00b0, WCH_NONE, '#'} },//à° - - { VK_OEM_1, NOCAPS, {0x00e8, 0x00e9, '{', '['} },// èé - { VK_OEM_PLUS,NOCAPS, {'+', '*', '}', ']'} }, - - /* The alphabet */ - { 'A', CAPS, {'a', 'A', 0x01, 0x01} }, - { 'B', CAPS, {'b', 'B', 0x02, 0x02} }, - { 'C', CAPS, {'c', 'C', 0x03, 0x03} }, - { 'D', CAPS, {'d', 'D', 0x04, 0x04} }, - { 'E', CAPS, {'e', 'E', 0x05, 0x20AC} }, // eE - { 'F', CAPS, {'f', 'F', 0x06, 0x06} }, - { 'G', CAPS, {'g', 'G', 0x07, 0x07} }, - { 'H', CAPS, {'h', 'H', 0x08, 0x08} }, - { 'I', CAPS, {'i', 'I', 0x09, 0x09} }, - { 'J', CAPS, {'j', 'J', 0x0a, 0x0a} }, - { 'K', CAPS, {'k', 'K', 0x0b, 0x0b} }, - { 'L', CAPS, {'l', 'L', 0x0c, 0x0c} }, - { 'M', CAPS, {'m', 'M', 0x0d, 0x0d} }, - { 'N', CAPS, {'n', 'N', 0x0e, 0x0e} }, - { 'O', CAPS, {'o', 'O', 0x0f, 0x0f} }, - { 'P', CAPS, {'p', 'P', 0x10, 0x10} }, - { 'Q', CAPS, {'q', 'Q', 0x11, 0x11} }, - { 'R', CAPS, {'r', 'R', 0x12, 0x12} }, - { 'S', CAPS, {'s', 'S', 0x13, 0x13} }, - { 'T', CAPS, {'t', 'T', 0x14, 0x14} }, - { 'U', CAPS, {'u', 'U', 0x15, 0x15} }, - { 'V', CAPS, {'v', 'V', 0x16, 0x16} }, - { 'W', CAPS, {'w', 'W', 0x17, 0x17} }, - { 'X', CAPS, {'x', 'X', 0x18, 0x18} }, - { 'Y', CAPS, {'y', 'Y', 0x19, 0x19} }, - { 'Z', CAPS, {'z', 'Z', 0x1a, 0x1a} }, - - /* Legacy Ascii generators */ -//zz { VK_OEM_MINUS, NOCAPS, {'\'', '?', WCH_NONE, 0x1f /* US */} }, - { 0, 0 } -}; - -ROSDATA VK_TO_WCHARS1 keypad_numbers[] = { - { VK_NUMPAD0, 0, {'0'} }, - { VK_NUMPAD1, 0, {'1'} }, - { VK_NUMPAD2, 0, {'2'} }, - { VK_NUMPAD3, 0, {'3'} }, - { VK_NUMPAD4, 0, {'4'} }, - { VK_NUMPAD5, 0, {'5'} }, - { VK_NUMPAD6, 0, {'6'} }, - { VK_NUMPAD7, 0, {'7'} }, - { VK_NUMPAD8, 0, {'8'} }, - { VK_NUMPAD9, 0, {'9'} }, - { VK_DECIMAL, 0, {'.'} }, - { VK_BACK, 0, {'\010'} }, - { 0,0 } -}; - -#define vk_master(n,x) { (PVK_TO_WCHARS1)x, n, sizeof(x[0]) } - -ROSDATA VK_TO_WCHAR_TABLE vk_to_wchar_master_table[] = { - vk_master(1,keypad_numbers), - vk_master(2,key_to_chars_2mod), - vk_master(3,key_to_chars_3mod), - vk_master(4,key_to_chars_4mod), - { 0,0,0 } -}; - -ROSDATA VSC_LPWSTR key_names[] = { - { 0x00, L"" }, - { 0x01, L"Esc" }, - { 0x0e, L"Backspace" }, - { 0x0f, L"Tab" }, - { 0x1c, L"Enter" }, - { 0x1d, L"Ctrl" }, - { 0x2a, L"Shift" }, - { 0x36, L"Right Shift" }, - { 0x37, L"Num *" }, - { 0x38, L"Alt" }, - { 0x39, L"Space" }, - { 0x3a, L"Caps Lock" }, - { 0x3b, L"F1" }, - { 0x3c, L"F2" }, - { 0x3d, L"F3" }, - { 0x3e, L"F4" }, - { 0x3f, L"F5" }, - { 0x40, L"F6" }, - { 0x41, L"F7" }, - { 0x42, L"F8" }, - { 0x43, L"F9" }, - { 0x44, L"F10" }, - { 0x45, L"Pause" }, - { 0x46, L"Scroll Lock" }, - { 0x47, L"Num 7" }, - { 0x48, L"Num 8" }, - { 0x49, L"Num 9" }, - { 0x4a, L"Num -" }, - { 0x4b, L"Num 4" }, - { 0x4c, L"Num 5" }, - { 0x4d, L"Num 6" }, - { 0x4e, L"Num +" }, - { 0x4f, L"Num 1" }, - { 0x50, L"Num 2" }, - { 0x51, L"Num 3" }, - { 0x52, L"Num 0" }, - { 0x53, L"Num Del" }, - { 0x54, L"Sys Req" }, - { 0x57, L"F11" }, - { 0x58, L"F12" }, - { 0x7c, L"F13" }, - { 0x7d, L"F14" }, - { 0x7e, L"F15" }, - { 0x7f, L"F16" }, - { 0x80, L"F17" }, - { 0x81, L"F18" }, - { 0x82, L"F19" }, - { 0x83, L"F20" }, - { 0x84, L"F21" }, - { 0x85, L"F22" }, - { 0x86, L"F23" }, - { 0x87, L"F24" }, - { 0, NULL }, -}; - -ROSDATA VSC_LPWSTR extended_key_names[] = { - { 0x1c, L"Num Enter" }, - { 0x1d, L"Right Ctrl" }, - { 0x35, L"Num /" }, - { 0x37, L"Prnt Scrn" }, - { 0x38, L"Right Alt" }, - { 0x45, L"Num Lock" }, - { 0x46, L"Break" }, - { 0x47, L"Home" }, - { 0x48, L"Up" }, - { 0x49, L"Page Up" }, - { 0x4a, L"Left" }, - { 0x4c, L"Center" }, - { 0x4d, L"Right" }, - { 0x4f, L"End" }, - { 0x50, L"Down" }, - { 0x51, L"Page Down" }, - { 0x52, L"Insert" }, - { 0x53, L"Delete" }, - { 0x54, L"<ReactOS>" }, - { 0x55, L"Help" }, - { 0x56, L"Left Windows" }, - { 0x5b, L"Right Windows" }, - { 0, NULL }, -}; - -/* Finally, the master table */ -ROSDATA KBDTABLES keyboard_layout_table = { - /* modifier assignments */ - &modifier_bits, - - /* character from vk tables */ - vk_to_wchar_master_table, - - /* diacritical marks -- currently implemented by wine code */ - /* doesn't have any, anyway */ - NULL, - - /* Key names */ - (VSC_LPWSTR *)key_names, - (VSC_LPWSTR *)extended_key_names, - NULL, /* Dead key names */ - - /* scan code to virtual key maps */ - scancode_to_vk, - sizeof(scancode_to_vk) / sizeof(scancode_to_vk[0]), - extcode0_to_vk, - extcode1_to_vk, - - MAKELONG(0,1), /* Version 1.0 */ - - /* Ligatures */ - 0, - 0, - NULL -}; - -PKBDTABLES STDCALL KbdLayerDescriptor(VOID) { - return &keyboard_layout_table; -} - +/* + * ReactOS Italian Keyboard layout + * Copyright (C) 2007 ReactOS + * License: LGPL, see: LGPL.txt + * + */ + +#include <windows.h> +#include <internal/kbd.h> + +#ifdef _M_IA64 +#define ROSDATA static __declspec(allocate(".data")) +#else +#ifdef _MSC_VER +#pragma data_seg(".data") +#define ROSDATA static +#else +#define ROSDATA static __attribute__((section(".data"))) +#endif +#endif + +#define VK_EMPTY 0xff /* The non-existent VK */ +#define KSHIFT 0x001 /* Shift modifier */ +#define KCTRL 0x002 /* Ctrl modifier */ +#define KALT 0x004 /* Alt modifier */ +#define KEXT 0x100 /* Extended key code */ +#define KMULTI 0x200 /* Multi-key */ +#define KSPEC 0x400 /* Special key */ +#define KNUMP 0x800 /* Number-pad */ +#define KNUMS 0xc00 /* Special + number pad */ +#define KMEXT 0x300 /* Multi + ext */ + +#define SHFT_INVALID 0x0F + +ROSDATA USHORT scancode_to_vk[] = { +/* 00 */ VK_EMPTY, +/* 01 */ VK_ESCAPE, +/* 02 */ '1', +/* 03 */ '2', +/* 04 */ '3', +/* 05 */ '4', +/* 06 */ '5', +/* 07 */ '6', +/* 08 */ '7', +/* 09 */ '8', +/* 0a */ '9', +/* 0b */ '0', +/* 0c */ VK_OEM_4, +/* 0d */ VK_OEM_6, +/* 0e */ VK_BACK, +/* 0f */ VK_TAB, +/* 10 */ 'Q', +/* 11 */ 'W', +/* 12 */ 'E', +/* 13 */ 'R', +/* 14 */ 'T', +/* 15 */ 'Y', +/* 16 */ 'U', +/* 17 */ 'I', +/* 18 */ 'O', +/* 19 */ 'P', +/* 1a */ VK_OEM_1, +/* 1b */ VK_OEM_PLUS, +/* 1c */ VK_RETURN, +/* 1d */ VK_LCONTROL, +/* 1e */ 'A', +/* 1f */ 'S', +/* 20 */ 'D', +/* 21 */ 'F', +/* 22 */ 'G', +/* 23 */ 'H', +/* 24 */ 'J', +/* 25 */ 'K', +/* 26 */ 'L', +/* 27 */ VK_OEM_3, +/* 28 */ VK_OEM_7, +/* 29 */ VK_OEM_2, +/* 2a */ VK_LSHIFT, +/* 2b */ VK_OEM_5, +/* 2c */ 'Z', +/* 2d */ 'X', +/* 2e */ 'C', +/* 2f */ 'V', +/* 30 */ 'B', +/* 31 */ 'N', +/* 32 */ 'M', +/* 33 */ VK_OEM_COMMA, +/* 34 */ VK_OEM_PERIOD, +/* 35 */ VK_OEM_MINUS, +/* 36 */ VK_RSHIFT, +/* 37 */ VK_MULTIPLY, +/* 38 */ VK_LMENU, +/* 39 */ VK_SPACE, +/* 3a */ VK_CAPITAL, +/* 3b */ VK_F1, +/* 3c */ VK_F2, +/* 3d */ VK_F3, +/* 3e */ VK_F4, +/* 3f */ VK_F5, +/* 40 */ VK_F6, +/* 41 */ VK_F7, +/* 42 */ VK_F8, +/* 43 */ VK_F9, +/* 44 */ VK_F10, +/* 45 */ VK_NUMLOCK | KMEXT, +/* 46 */ VK_SCROLL | KMULTI, +/* 47 */ VK_HOME | KNUMS, +/* 48 */ VK_UP | KNUMS, +/* 49 */ VK_PRIOR | KNUMS, +/* 4a */ VK_SUBTRACT, +/* 4b */ VK_LEFT | KNUMS, +/* 4c */ VK_CLEAR | KNUMS, +/* 4d */ VK_RIGHT | KNUMS, +/* 4e */ VK_ADD, +/* 4f */ VK_END | KNUMS, +/* 50 */ VK_DOWN | KNUMS, +/* 51 */ VK_NEXT | KNUMS, +/* 52 */ VK_INSERT | KNUMS, +/* 53 */ VK_DELETE | KNUMS, +/* 54 */ VK_SNAPSHOT, +/* 55 */ VK_EMPTY, +/* 56 */ VK_OEM_102, +/* 57 */ VK_F11, +/* 58 */ VK_F12, +/* 59 */ VK_EMPTY, +/* 5a */ VK_CLEAR, +/* 5b */ VK_EMPTY, +/* 5c */ VK_EMPTY, +/* 5d */ VK_EMPTY, +/* 5e */ VK_EMPTY, /* EREOF */ +/* 5f */ VK_EMPTY, +/* 60 */ VK_EMPTY, +/* 61 */ VK_EMPTY, +/* 62 */ VK_EMPTY, +/* 63 */ VK_EMPTY, /* ZOOM */ +/* 64 */ VK_HELP, +/* 65 */ VK_F13, +/* 66 */ VK_F14, +/* 67 */ VK_F15, +/* 68 */ VK_F16, +/* 69 */ VK_F17, +/* 6a */ VK_F18, +/* 6b */ VK_F19, +/* 6c */ VK_F20, +/* 6d */ VK_F21, +/* 6e */ VK_F22, +/* 6f */ VK_F23, +/* 70 */ VK_EMPTY, +/* 71 */ VK_EMPTY, +/* 72 */ VK_EMPTY, +/* 73 */ VK_EMPTY, +/* 74 */ VK_EMPTY, +/* 75 */ VK_EMPTY, +/* 76 */ VK_EMPTY, +/* 77 */ VK_F24, +/* 78 */ VK_EMPTY, +/* 79 */ VK_EMPTY, +/* 7a */ VK_EMPTY, +/* 7b */ VK_EMPTY, +/* 7c */ VK_EMPTY, +/* 7d */ VK_EMPTY, +/* 7e */ VK_EMPTY, +/* 7f */ VK_EMPTY, +/* 80 */ VK_EMPTY, +/* 00 */ 0 +}; + +ROSDATA VSC_VK extcode0_to_vk[] = { + { 0, 0 }, +}; + +ROSDATA VSC_VK extcode1_to_vk[] = { + { 0, 0 }, +}; + +ROSDATA VK_TO_BIT modifier_keys[] = { + { VK_SHIFT, KSHIFT }, + { VK_CONTROL, KCTRL }, + { VK_MENU, KALT }, + { 0, 0 } +}; + +ROSDATA MODIFIERS modifier_bits = { + modifier_keys, + 6, + { 0, 1, 2, 4, SHFT_INVALID, SHFT_INVALID, 3 } +}; + +#define NOCAPS 0 +#define CAPS KSHIFT /* Caps -> shift */ + +ROSDATA VK_TO_WCHARS2 key_to_chars_2mod[] = { + /* Normal vs Shifted */ + /* The numbers */ + { '1', NOCAPS, {'1', '!'} }, + { '2', NOCAPS, {'2', '"'} }, + { '3', NOCAPS, {'3', 0x00a3} }, + { '4', NOCAPS, {'4', '$'} }, + { '5', NOCAPS, {'5', '%'} }, + { '6', NOCAPS, {'6', '&'} }, + { '7', NOCAPS, {'7', '/'} }, + { '8', NOCAPS, {'8', '('} }, + { '9', NOCAPS, {'9', ')'} }, + { '0', NOCAPS, {'0', '='} }, + + /* Specials */ + /* Ctrl-_ generates US */ + { VK_OEM_2 ,NOCAPS, {'\\', '|'} }, + { VK_OEM_4 ,NOCAPS, {'\'', '?'} }, + { VK_OEM_102 ,NOCAPS, {'<', '>'} }, + { VK_OEM_COMMA ,NOCAPS, {',', ';'} }, + { VK_OEM_PERIOD ,NOCAPS, {'.', ':'} }, + { VK_OEM_MINUS ,NOCAPS, {'-', '_'} }, + /* Keys that do not have shift states */ + { VK_TAB ,NOCAPS, {'\t','\t'} }, + { VK_ADD ,NOCAPS, {'+', '+'} }, + { VK_SUBTRACT,NOCAPS, {'-', '-'} }, + { VK_MULTIPLY,NOCAPS, {'*', '*'} }, + { VK_DIVIDE ,NOCAPS, {'/', '/'} }, + { VK_ESCAPE ,NOCAPS, {'\x1b','\x1b'} }, + { VK_SPACE ,NOCAPS, {' ', ' '} }, + { VK_OEM_5 ,NOCAPS, {0x00f9, 0x00a7} },//ù§ + { 0, 0 } +}; + +ROSDATA VK_TO_WCHARS3 key_to_chars_3mod[] = { + /* Normal, Shifted, Ctrl */ + /* Legacy (telnet-style) ascii escapes */ + { VK_RETURN,0, {'\r', '\r', '\n'} }, + { 0,0 } +}; + +ROSDATA VK_TO_WCHARS4 key_to_chars_4mod[] = { + /* Normal, Shifted, Ctrl, C-S-x */ + { VK_OEM_6, NOCAPS, {0x00ec, '^', WCH_NONE, '~' } }, + { VK_OEM_3, NOCAPS, {0x00f2, 0x00e7, WCH_NONE, '@' } },//òç + { VK_OEM_7, NOCAPS, {0x00e0, 0x00b0, WCH_NONE, '#'} },//à° + + { VK_OEM_1, NOCAPS, {0x00e8, 0x00e9, '{', '['} },// èé + { VK_OEM_PLUS,NOCAPS, {'+', '*', '}', ']'} }, + + /* The alphabet */ + { 'A', CAPS, {'a', 'A', 0x01, 0x01} }, + { 'B', CAPS, {'b', 'B', 0x02, 0x02} }, + { 'C', CAPS, {'c', 'C', 0x03, 0x03} }, + { 'D', CAPS, {'d', 'D', 0x04, 0x04} }, + { 'E', CAPS, {'e', 'E', 0x05, 0x20AC} }, // eE + { 'F', CAPS, {'f', 'F', 0x06, 0x06} }, + { 'G', CAPS, {'g', 'G', 0x07, 0x07} }, + { 'H', CAPS, {'h', 'H', 0x08, 0x08} }, + { 'I', CAPS, {'i', 'I', 0x09, 0x09} }, + { 'J', CAPS, {'j', 'J', 0x0a, 0x0a} }, + { 'K', CAPS, {'k', 'K', 0x0b, 0x0b} }, + { 'L', CAPS, {'l', 'L', 0x0c, 0x0c} }, + { 'M', CAPS, {'m', 'M', 0x0d, 0x0d} }, + { 'N', CAPS, {'n', 'N', 0x0e, 0x0e} }, + { 'O', CAPS, {'o', 'O', 0x0f, 0x0f} }, + { 'P', CAPS, {'p', 'P', 0x10, 0x10} }, + { 'Q', CAPS, {'q', 'Q', 0x11, 0x11} }, + { 'R', CAPS, {'r', 'R', 0x12, 0x12} }, + { 'S', CAPS, {'s', 'S', 0x13, 0x13} }, + { 'T', CAPS, {'t', 'T', 0x14, 0x14} }, + { 'U', CAPS, {'u', 'U', 0x15, 0x15} }, + { 'V', CAPS, {'v', 'V', 0x16, 0x16} }, + { 'W', CAPS, {'w', 'W', 0x17, 0x17} }, + { 'X', CAPS, {'x', 'X', 0x18, 0x18} }, + { 'Y', CAPS, {'y', 'Y', 0x19, 0x19} }, + { 'Z', CAPS, {'z', 'Z', 0x1a, 0x1a} }, + + /* Legacy Ascii generators */ +//zz { VK_OEM_MINUS, NOCAPS, {'\'', '?', WCH_NONE, 0x1f /* US */} }, + { 0, 0 } +}; + +ROSDATA VK_TO_WCHARS1 keypad_numbers[] = { + { VK_NUMPAD0, 0, {'0'} }, + { VK_NUMPAD1, 0, {'1'} }, + { VK_NUMPAD2, 0, {'2'} }, + { VK_NUMPAD3, 0, {'3'} }, + { VK_NUMPAD4, 0, {'4'} }, + { VK_NUMPAD5, 0, {'5'} }, + { VK_NUMPAD6, 0, {'6'} }, + { VK_NUMPAD7, 0, {'7'} }, + { VK_NUMPAD8, 0, {'8'} }, + { VK_NUMPAD9, 0, {'9'} }, + { VK_DECIMAL, 0, {'.'} }, + { VK_BACK, 0, {'\010'} }, + { 0,0 } +}; + +#define vk_master(n,x) { (PVK_TO_WCHARS1)x, n, sizeof(x[0]) } + +ROSDATA VK_TO_WCHAR_TABLE vk_to_wchar_master_table[] = { + vk_master(1,keypad_numbers), + vk_master(2,key_to_chars_2mod), + vk_master(3,key_to_chars_3mod), + vk_master(4,key_to_chars_4mod), + { 0,0,0 } +}; + +ROSDATA VSC_LPWSTR key_names[] = { + { 0x00, L"" }, + { 0x01, L"Esc" }, + { 0x0e, L"Backspace" }, + { 0x0f, L"Tab" }, + { 0x1c, L"Enter" }, + { 0x1d, L"Ctrl" }, + { 0x2a, L"Shift" }, + { 0x36, L"Right Shift" }, + { 0x37, L"Num *" }, + { 0x38, L"Alt" }, + { 0x39, L"Space" }, + { 0x3a, L"Caps Lock" }, + { 0x3b, L"F1" }, + { 0x3c, L"F2" }, + { 0x3d, L"F3" }, + { 0x3e, L"F4" }, + { 0x3f, L"F5" }, + { 0x40, L"F6" }, + { 0x41, L"F7" }, + { 0x42, L"F8" }, + { 0x43, L"F9" }, + { 0x44, L"F10" }, + { 0x45, L"Pause" }, + { 0x46, L"Scroll Lock" }, + { 0x47, L"Num 7" }, + { 0x48, L"Num 8" }, + { 0x49, L"Num 9" }, + { 0x4a, L"Num -" }, + { 0x4b, L"Num 4" }, + { 0x4c, L"Num 5" }, + { 0x4d, L"Num 6" }, + { 0x4e, L"Num +" }, + { 0x4f, L"Num 1" }, + { 0x50, L"Num 2" }, + { 0x51, L"Num 3" }, + { 0x52, L"Num 0" }, + { 0x53, L"Num Del" }, + { 0x54, L"Sys Req" }, + { 0x57, L"F11" }, + { 0x58, L"F12" }, + { 0x7c, L"F13" }, + { 0x7d, L"F14" }, + { 0x7e, L"F15" }, + { 0x7f, L"F16" }, + { 0x80, L"F17" }, + { 0x81, L"F18" }, + { 0x82, L"F19" }, + { 0x83, L"F20" }, + { 0x84, L"F21" }, + { 0x85, L"F22" }, + { 0x86, L"F23" }, + { 0x87, L"F24" }, + { 0, NULL }, +}; + +ROSDATA VSC_LPWSTR extended_key_names[] = { + { 0x1c, L"Num Enter" }, + { 0x1d, L"Right Ctrl" }, + { 0x35, L"Num /" }, + { 0x37, L"Prnt Scrn" }, + { 0x38, L"Right Alt" }, + { 0x45, L"Num Lock" }, + { 0x46, L"Break" }, + { 0x47, L"Home" }, + { 0x48, L"Up" }, + { 0x49, L"Page Up" }, + { 0x4a, L"Left" }, + { 0x4c, L"Center" }, + { 0x4d, L"Right" }, + { 0x4f, L"End" }, + { 0x50, L"Down" }, + { 0x51, L"Page Down" }, + { 0x52, L"Insert" }, + { 0x53, L"Delete" }, + { 0x54, L"<ReactOS>" }, + { 0x55, L"Help" }, + { 0x56, L"Left Windows" }, + { 0x5b, L"Right Windows" }, + { 0, NULL }, +}; + +/* Finally, the master table */ +ROSDATA KBDTABLES keyboard_layout_table = { + /* modifier assignments */ + &modifier_bits, + + /* character from vk tables */ + vk_to_wchar_master_table, + + /* diacritical marks -- currently implemented by wine code */ + /* doesn't have any, anyway */ + NULL, + + /* Key names */ + (VSC_LPWSTR *)key_names, + (VSC_LPWSTR *)extended_key_names, + NULL, /* Dead key names */ + + /* scan code to virtual key maps */ + scancode_to_vk, + sizeof(scancode_to_vk) / sizeof(scancode_to_vk[0]), + extcode0_to_vk, + extcode1_to_vk, + + MAKELONG(0,1), /* Version 1.0 */ + + /* Ligatures */ + 0, + 0, + NULL +}; + +PKBDTABLES STDCALL KbdLayerDescriptor(VOID) { + return &keyboard_layout_table; +} + Propchange: trunk/reactos/dll/keyboard/kbdit/kbdit.c ------------------------------------------------------------------------------ svn:eol-style = native Propchange: trunk/reactos/dll/keyboard/kbdit/kbdit.def ------------------------------------------------------------------------------ svn:eol-style = native Propchange: trunk/reactos/dll/keyboard/kbdit/kbdit.rc ------------------------------------------------------------------------------ svn:eol-style = native Propchange: trunk/reactos/dll/keyboard/kbdth/kbdth.c ------------------------------------------------------------------------------ svn:eol-style = native Propchange: trunk/reactos/dll/keyboard/kbdth/kbdth.def ------------------------------------------------------------------------------ svn:eol-style = native Propchange: trunk/reactos/dll/keyboard/kbdth/kbdth.rc ------------------------------------------------------------------------------ svn:eol-style = native Propchange: trunk/reactos/drivers/multimedia/audio/mpu401_nt4/mpu401.c ------------------------------------------------------------------------------ svn:eol-style = native Propchange: trunk/reactos/drivers/multimedia/audio/mpu401_nt4/mpu401.h ------------------------------------------------------------------------------ svn:eol-style = native Propchange: trunk/reactos/drivers/multimedia/audio/mpu401_nt4/mpu401.rc ------------------------------------------------------------------------------ svn:eol-style = native Propchange: trunk/reactos/drivers/multimedia/audio/mpu401_nt4/portio.c ------------------------------------------------------------------------------ svn:eol-style = native Propchange: trunk/reactos/drivers/multimedia/audio/mpu401_nt4/readme.txt ------------------------------------------------------------------------------ svn:eol-style = native Propchange: trunk/reactos/drivers/multimedia/audio/mpu401_nt4/sbdebug.h ------------------------------------------------------------------------------ svn:eol-style = native Propchange: trunk/reactos/drivers/multimedia/audio/mpu401_nt4/settings.c ------------------------------------------------------------------------------ svn:eol-style = native Propchange: trunk/reactos/drivers/multimedia/audio/mpu401_nt4/test.c ------------------------------------------------------------------------------ svn:eol-style = native Propchange: trunk/reactos/drivers/wdm/audio/sysaudio/main.c ------------------------------------------------------------------------------ svn:eol-style = native Propchange: trunk/reactos/drivers/wdm/audio/sysaudio/sysaudio.rc ------------------------------------------------------------------------------ svn:eol-style = native Propchange: trunk/reactos/hal/halppc/generic/beep.c ------------------------------------------------------------------------------ svn:eol-style = native Propchange: trunk/reactos/hal/halppc/generic/bus.c ------------------------------------------------------------------------------ svn:eol-style = native Modified: trunk/reactos/hal/halppc/generic/cmos.c URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/hal/halppc/generic/cmos.c?…
============================================================================== --- trunk/reactos/hal/halppc/generic/cmos.c (original) +++ trunk/reactos/hal/halppc/generic/cmos.c Fri Sep 14 21:09:45 2007 @@ -1,291 +1,291 @@ -/* - * PROJECT: ReactOS HAL - * LICENSE: GPL - See COPYING in the top level directory - * FILE: hal/halx86/generic/cmos.c - * PURPOSE: CMOS Access Routines (Real Time Clock and LastKnownGood) - * PROGRAMMERS: Alex Ionescu (alex.ionescu(a)reactos.org) - * Eric Kohl (ekohl(a)abo.rhein-zeitung.de) - */ - -/* INCLUDES ******************************************************************/ - -#include <hal.h> -#define NDEBUG -#include <debug.h> - -/* GLOBALS *******************************************************************/ - -KSPIN_LOCK HalpSystemHardwareLock; - -/* PRIVATE FUNCTIONS *********************************************************/ - -UCHAR -FORCEINLINE -HalpReadCmos(IN UCHAR Reg) -{ - /* Select the register */ - WRITE_PORT_UCHAR(CMOS_CONTROL_PORT, Reg); - - /* Query the value */ - return READ_PORT_UCHAR(CMOS_DATA_PORT); -} - -VOID -FORCEINLINE -HalpWriteCmos(IN UCHAR Reg, - IN UCHAR Value) -{ - /* Select the register */ - WRITE_PORT_UCHAR(CMOS_CONTROL_PORT, Reg); - - /* Write the value */ - WRITE_PORT_UCHAR(CMOS_DATA_PORT, Value); -} - -ULONG -NTAPI -HalpGetCmosData(IN ULONG BusNumber, - IN ULONG SlotNumber, - IN PVOID Buffer, - IN ULONG Length) -{ - PUCHAR Ptr = (PUCHAR)Buffer; - ULONG Address = SlotNumber; - ULONG Len = Length; - - /* FIXME: Acquire CMOS Lock */ - - /* Do nothing if we don't have a length */ - if (!Length) return 0; - - /* Check if this is simple CMOS */ - if (!BusNumber) - { - /* Loop the buffer up to 0xFF */ - while ((Len > 0) && (Address < 0x100)) - { - /* Read the data */ - *Ptr = HalpReadCmos((UCHAR)Address); - - /* Update position and length */ - Ptr++; - Address++; - Len--; - } - } - else if (BusNumber == 1) - { - /* Loop the buffer up to 0xFFFF */ - while ((Len > 0) && (Address < 0x10000)) - { - /* Write the data */ - *Ptr = HalpReadCmos((UCHAR)Address); - - /* Update position and length */ - Ptr++; - Address++; - Len--; - } - } - - /* FIXME: Release the CMOS Lock */ - - /* Return length read */ - return Length - Len; -} - -ULONG -NTAPI -HalpSetCmosData(IN ULONG BusNumber, - IN ULONG SlotNumber, - IN PVOID Buffer, - IN ULONG Length) -{ - PUCHAR Ptr = (PUCHAR)Buffer; - ULONG Address = SlotNumber; - ULONG Len = Length; - - /* FIXME: Acquire CMOS Lock */ - - /* Do nothing if we don't have a length */ - if (!Length) return 0; - - /* Check if this is simple CMOS */ - if (!BusNumber) - { - /* Loop the buffer up to 0xFF */ - while ((Len > 0) && (Address < 0x100)) - { - /* Write the data */ - HalpWriteCmos((UCHAR)Address, *Ptr); - - /* Update position and length */ - Ptr++; - Address++; - Len--; - } - } - else if (BusNumber == 1) - { - /* Loop the buffer up to 0xFFFF */ - while ((Len > 0) && (Address < 0x10000)) - { - /* Write the data */ - HalpWriteCmos((UCHAR)Address, *Ptr); - - /* Update position and length */ - Ptr++; - Address++; - Len--; - } - } - - /* FIXME: Release the CMOS Lock */ - - /* Return length read */ - return Length - Len; -} - -/* PUBLIC FUNCTIONS **********************************************************/ - -/* - * @implemented - */ -ARC_STATUS -NTAPI -HalGetEnvironmentVariable(IN PCH Name, - IN USHORT ValueLength, - IN PCH Value) -{ - UCHAR Val; - - /* Only variable supported on x86 */ - if (_stricmp(Name, "LastKnownGood")) return ENOENT; - - /* FIXME: Acquire CMOS Lock */ - - /* Query the current value */ - Val = HalpReadCmos(RTC_REGISTER_B) & 0x01; - - /* FIXME: Release CMOS lock */ - - /* Check the flag */ - if (Val) - { - /* Return false */ - strncpy(Value, "FALSE", ValueLength); - } - else - { - /* Return true */ - strncpy(Value, "TRUE", ValueLength); - } - - /* Return success */ - return ESUCCESS; -} - -/* - * @implemented - */ -ARC_STATUS -NTAPI -HalSetEnvironmentVariable(IN PCH Name, - IN PCH Value) -{ - UCHAR Val; - - /* Only variable supported on x86 */ - if (_stricmp(Name, "LastKnownGood")) return ENOMEM; - - /* Check if this is true or false */ - if (!_stricmp(Value, "TRUE")) - { - /* It's true, acquire CMOS lock (FIXME) */ - - /* Read the current value and add the flag */ - Val = HalpReadCmos(RTC_REGISTER_B) | 1; - } - else if (!_stricmp(Value, "FALSE")) - { - /* It's false, acquire CMOS lock (FIXME) */ - - /* Read the current value and mask out the flag */ - Val = HalpReadCmos(RTC_REGISTER_B) & ~1; - } - else - { - /* Fail */ - return ENOMEM; - } - - /* Write new value */ - HalpWriteCmos(RTC_REGISTER_B, Val); - - /* Release the lock and return success */ - return ESUCCESS; -} - -/* - * @implemented - */ -BOOLEAN -NTAPI -HalQueryRealTimeClock(OUT PTIME_FIELDS Time) -{ - /* FIXME: Acquire CMOS Lock */ - - /* Loop while update is in progress */ - while ((HalpReadCmos(RTC_REGISTER_A)) & RTC_REG_A_UIP); - - /* Set the time data */ - Time->Second = BCD_INT(HalpReadCmos(0)); - Time->Minute = BCD_INT(HalpReadCmos(2)); - Time->Hour = BCD_INT(HalpReadCmos(4)); - Time->Weekday = BCD_INT(HalpReadCmos(6)); - Time->Day = BCD_INT(HalpReadCmos(7)); - Time->Month = BCD_INT(HalpReadCmos(8)); - Time->Year = BCD_INT(HalpReadCmos(9)); - Time->Milliseconds = 0; - - /* FIXME: Check century byte */ - - /* Compensate for the century field */ - Time->Year += (Time->Year > 80) ? 1900: 2000; - - /* FIXME: Release CMOS Lock */ - - /* Always return TRUE */ - return TRUE; -} - -/* - * @implemented - */ -BOOLEAN -NTAPI -HalSetRealTimeClock(IN PTIME_FIELDS Time) -{ - /* FIXME: Acquire CMOS Lock */ - - /* Loop while update is in progress */ - while ((HalpReadCmos(RTC_REGISTER_A)) & RTC_REG_A_UIP); - - /* Write time fields to CMOS RTC */ - HalpWriteCmos(0, INT_BCD(Time->Second)); - HalpWriteCmos(2, INT_BCD(Time->Minute)); - HalpWriteCmos(4, INT_BCD(Time->Hour)); - HalpWriteCmos(6, INT_BCD(Time->Weekday)); - HalpWriteCmos(7, INT_BCD(Time->Day)); - HalpWriteCmos(8, INT_BCD(Time->Month)); - HalpWriteCmos(9, INT_BCD(Time->Year % 100)); - - /* FIXME: Set the century byte */ - - /* FIXME: Release the CMOS Lock */ - - /* Always return TRUE */ - return TRUE; -} - -/* EOF */ +/* + * PROJECT: ReactOS HAL + * LICENSE: GPL - See COPYING in the top level directory + * FILE: hal/halx86/generic/cmos.c + * PURPOSE: CMOS Access Routines (Real Time Clock and LastKnownGood) + * PROGRAMMERS: Alex Ionescu (alex.ionescu(a)reactos.org) + * Eric Kohl (ekohl(a)abo.rhein-zeitung.de) + */ + +/* INCLUDES ******************************************************************/ + +#include <hal.h> +#define NDEBUG +#include <debug.h> + +/* GLOBALS *******************************************************************/ + +KSPIN_LOCK HalpSystemHardwareLock; + +/* PRIVATE FUNCTIONS *********************************************************/ + +UCHAR +FORCEINLINE +HalpReadCmos(IN UCHAR Reg) +{ + /* Select the register */ + WRITE_PORT_UCHAR(CMOS_CONTROL_PORT, Reg); + + /* Query the value */ + return READ_PORT_UCHAR(CMOS_DATA_PORT); +} + +VOID +FORCEINLINE +HalpWriteCmos(IN UCHAR Reg, + IN UCHAR Value) +{ + /* Select the register */ + WRITE_PORT_UCHAR(CMOS_CONTROL_PORT, Reg); + + /* Write the value */ + WRITE_PORT_UCHAR(CMOS_DATA_PORT, Value); +} + +ULONG +NTAPI +HalpGetCmosData(IN ULONG BusNumber, + IN ULONG SlotNumber, + IN PVOID Buffer, + IN ULONG Length) +{ + PUCHAR Ptr = (PUCHAR)Buffer; + ULONG Address = SlotNumber; + ULONG Len = Length; + + /* FIXME: Acquire CMOS Lock */ + + /* Do nothing if we don't have a length */ + if (!Length) return 0; + + /* Check if this is simple CMOS */ + if (!BusNumber) + { + /* Loop the buffer up to 0xFF */ + while ((Len > 0) && (Address < 0x100)) + { + /* Read the data */ + *Ptr = HalpReadCmos((UCHAR)Address); + + /* Update position and length */ + Ptr++; + Address++; + Len--; + } + } + else if (BusNumber == 1) + { + /* Loop the buffer up to 0xFFFF */ + while ((Len > 0) && (Address < 0x10000)) + { + /* Write the data */ + *Ptr = HalpReadCmos((UCHAR)Address); + + /* Update position and length */ + Ptr++; + Address++; + Len--; + } + } + + /* FIXME: Release the CMOS Lock */ + + /* Return length read */ + return Length - Len; +} + +ULONG +NTAPI +HalpSetCmosData(IN ULONG BusNumber, + IN ULONG SlotNumber, + IN PVOID Buffer, + IN ULONG Length) +{ + PUCHAR Ptr = (PUCHAR)Buffer; + ULONG Address = SlotNumber; + ULONG Len = Length; + + /* FIXME: Acquire CMOS Lock */ + + /* Do nothing if we don't have a length */ + if (!Length) return 0; + + /* Check if this is simple CMOS */ + if (!BusNumber) + { + /* Loop the buffer up to 0xFF */ + while ((Len > 0) && (Address < 0x100)) + { + /* Write the data */ + HalpWriteCmos((UCHAR)Address, *Ptr); + + /* Update position and length */ + Ptr++; + Address++; + Len--; + } + } + else if (BusNumber == 1) + { + /* Loop the buffer up to 0xFFFF */ + while ((Len > 0) && (Address < 0x10000)) + { + /* Write the data */ + HalpWriteCmos((UCHAR)Address, *Ptr); + + /* Update position and length */ + Ptr++; + Address++; + Len--; + } + } + + /* FIXME: Release the CMOS Lock */ + + /* Return length read */ + return Length - Len; +} + +/* PUBLIC FUNCTIONS **********************************************************/ + +/* + * @implemented + */ +ARC_STATUS +NTAPI +HalGetEnvironmentVariable(IN PCH Name, + IN USHORT ValueLength, + IN PCH Value) +{ + UCHAR Val; + + /* Only variable supported on x86 */ + if (_stricmp(Name, "LastKnownGood")) return ENOENT; + + /* FIXME: Acquire CMOS Lock */ + + /* Query the current value */ + Val = HalpReadCmos(RTC_REGISTER_B) & 0x01; + + /* FIXME: Release CMOS lock */ + + /* Check the flag */ + if (Val) + { + /* Return false */ + strncpy(Value, "FALSE", ValueLength); + } + else + { + /* Return true */ + strncpy(Value, "TRUE", ValueLength); + } + + /* Return success */ + return ESUCCESS; +} + +/* + * @implemented + */ +ARC_STATUS +NTAPI +HalSetEnvironmentVariable(IN PCH Name, + IN PCH Value) +{ + UCHAR Val; + + /* Only variable supported on x86 */ + if (_stricmp(Name, "LastKnownGood")) return ENOMEM; + + /* Check if this is true or false */ + if (!_stricmp(Value, "TRUE")) + { + /* It's true, acquire CMOS lock (FIXME) */ + + /* Read the current value and add the flag */ + Val = HalpReadCmos(RTC_REGISTER_B) | 1; + } + else if (!_stricmp(Value, "FALSE")) + { + /* It's false, acquire CMOS lock (FIXME) */ + + /* Read the current value and mask out the flag */ + Val = HalpReadCmos(RTC_REGISTER_B) & ~1; + } + else + { + /* Fail */ + return ENOMEM; + } + + /* Write new value */ + HalpWriteCmos(RTC_REGISTER_B, Val); + + /* Release the lock and return success */ + return ESUCCESS; +} + +/* + * @implemented + */ +BOOLEAN +NTAPI +HalQueryRealTimeClock(OUT PTIME_FIELDS Time) +{ + /* FIXME: Acquire CMOS Lock */ + + /* Loop while update is in progress */ + while ((HalpReadCmos(RTC_REGISTER_A)) & RTC_REG_A_UIP); + + /* Set the time data */ + Time->Second = BCD_INT(HalpReadCmos(0)); + Time->Minute = BCD_INT(HalpReadCmos(2)); + Time->Hour = BCD_INT(HalpReadCmos(4)); + Time->Weekday = BCD_INT(HalpReadCmos(6)); + Time->Day = BCD_INT(HalpReadCmos(7)); + Time->Month = BCD_INT(HalpReadCmos(8)); + Time->Year = BCD_INT(HalpReadCmos(9)); + Time->Milliseconds = 0; + + /* FIXME: Check century byte */ + + /* Compensate for the century field */ + Time->Year += (Time->Year > 80) ? 1900: 2000; + + /* FIXME: Release CMOS Lock */ + + /* Always return TRUE */ + return TRUE; +} + +/* + * @implemented + */ +BOOLEAN +NTAPI +HalSetRealTimeClock(IN PTIME_FIELDS Time) +{ + /* FIXME: Acquire CMOS Lock */ + + /* Loop while update is in progress */ + while ((HalpReadCmos(RTC_REGISTER_A)) & RTC_REG_A_UIP); + + /* Write time fields to CMOS RTC */ + HalpWriteCmos(0, INT_BCD(Time->Second)); + HalpWriteCmos(2, INT_BCD(Time->Minute)); + HalpWriteCmos(4, INT_BCD(Time->Hour)); + HalpWriteCmos(6, INT_BCD(Time->Weekday)); + HalpWriteCmos(7, INT_BCD(Time->Day)); + HalpWriteCmos(8, INT_BCD(Time->Month)); + HalpWriteCmos(9, INT_BCD(Time->Year % 100)); + + /* FIXME: Set the century byte */ + + /* FIXME: Release the CMOS Lock */ + + /* Always return TRUE */ + return TRUE; +} + +/* EOF */ Propchange: trunk/reactos/hal/halppc/generic/cmos.c ------------------------------------------------------------------------------ svn:eol-style = native Propchange: trunk/reactos/hal/halppc/generic/display.c ------------------------------------------------------------------------------ svn:eol-style = native Propchange: trunk/reactos/hal/halppc/generic/dma.c ------------------------------------------------------------------------------ svn:eol-style = native Propchange: trunk/reactos/hal/halppc/generic/drive.c ------------------------------------------------------------------------------ svn:eol-style = native Propchange: trunk/reactos/hal/halppc/generic/enum.c ------------------------------------------------------------------------------ svn:eol-style = native Propchange: trunk/reactos/hal/halppc/generic/fmutex.c ------------------------------------------------------------------------------ svn:eol-style = native Propchange: trunk/reactos/hal/halppc/generic/font.c ------------------------------------------------------------------------------ svn:eol-style = native Propchange: trunk/reactos/hal/halppc/generic/halinit.c ------------------------------------------------------------------------------ svn:eol-style = native Propchange: trunk/reactos/hal/halppc/generic/ipi.c ------------------------------------------------------------------------------ svn:eol-style = native Propchange: trunk/reactos/hal/halppc/generic/irql.c ------------------------------------------------------------------------------ svn:eol-style = native Propchange: trunk/reactos/hal/halppc/generic/isa.c ------------------------------------------------------------------------------ svn:eol-style = native Propchange: trunk/reactos/hal/halppc/generic/kdbg.c ------------------------------------------------------------------------------ svn:eol-style = native Propchange: trunk/reactos/hal/halppc/generic/mca.c ------------------------------------------------------------------------------ svn:eol-style = native Propchange: trunk/reactos/hal/halppc/generic/misc.c ------------------------------------------------------------------------------ svn:eol-style = native Propchange: trunk/reactos/hal/halppc/generic/pci.c ------------------------------------------------------------------------------ svn:eol-style = native Propchange: trunk/reactos/hal/halppc/generic/portio.c ------------------------------------------------------------------------------ svn:eol-style = native Propchange: trunk/reactos/hal/halppc/generic/processor.c ------------------------------------------------------------------------------ svn:eol-style = native Modified: trunk/reactos/hal/halppc/generic/profil.c URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/hal/halppc/generic/profil.…
============================================================================== --- trunk/reactos/hal/halppc/generic/profil.c (original) +++ trunk/reactos/hal/halppc/generic/profil.c Fri Sep 14 21:09:45 2007 @@ -1,61 +1,61 @@ -/* - * PROJECT: ReactOS HAL - * LICENSE: GPL - See COPYING in the top level directory - * FILE: hal/halx86/generic/profil.c - * PURPOSE: System Profiling - * PROGRAMMERS: Alex Ionescu (alex.ionescu(a)reactos.org) - */ - -/* INCLUDES ******************************************************************/ - -#include <hal.h> -#define NDEBUG -#include <debug.h> - -/* FUNCTIONS *****************************************************************/ - -/* - * @unimplemented - */ -VOID -NTAPI -HalStopProfileInterrupt(IN KPROFILE_SOURCE ProfileSource) -{ - KEBUGCHECK(0); - return; -} - -/* - * @unimplemented - */ -VOID -NTAPI -HalStartProfileInterrupt(IN KPROFILE_SOURCE ProfileSource) -{ - KEBUGCHECK(0); - return; -} - -/* - * @unimplemented - */ -ULONG_PTR -NTAPI -HalSetProfileInterval(IN ULONG_PTR Interval) -{ - KEBUGCHECK(0); - return Interval; -} - -ULONG HalpDecrementerRoll = 0; - -LARGE_INTEGER -KeQueryPerformanceCounter(PLARGE_INTEGER PerformanceFrequency) -{ - LARGE_INTEGER Result; - /* for now */ - if(PerformanceFrequency) PerformanceFrequency->QuadPart = 100000000; - Result.HighPart = HalpDecrementerRoll; - Result.LowPart = __rdtsc(); - return Result; -} +/* + * PROJECT: ReactOS HAL + * LICENSE: GPL - See COPYING in the top level directory + * FILE: hal/halx86/generic/profil.c + * PURPOSE: System Profiling + * PROGRAMMERS: Alex Ionescu (alex.ionescu(a)reactos.org) + */ + +/* INCLUDES ******************************************************************/ + +#include <hal.h> +#define NDEBUG +#include <debug.h> + +/* FUNCTIONS *****************************************************************/ + +/* + * @unimplemented + */ +VOID +NTAPI +HalStopProfileInterrupt(IN KPROFILE_SOURCE ProfileSource) +{ + KEBUGCHECK(0); + return; +} + +/* + * @unimplemented + */ +VOID +NTAPI +HalStartProfileInterrupt(IN KPROFILE_SOURCE ProfileSource) +{ + KEBUGCHECK(0); + return; +} + +/* + * @unimplemented + */ +ULONG_PTR +NTAPI +HalSetProfileInterval(IN ULONG_PTR Interval) +{ + KEBUGCHECK(0); + return Interval; +} + +ULONG HalpDecrementerRoll = 0; + +LARGE_INTEGER +KeQueryPerformanceCounter(PLARGE_INTEGER PerformanceFrequency) +{ + LARGE_INTEGER Result; + /* for now */ + if(PerformanceFrequency) PerformanceFrequency->QuadPart = 100000000; + Result.HighPart = HalpDecrementerRoll; + Result.LowPart = __rdtsc(); + return Result; +} Propchange: trunk/reactos/hal/halppc/generic/profil.c ------------------------------------------------------------------------------ svn:eol-style = native Propchange: trunk/reactos/hal/halppc/generic/pwroff.c ------------------------------------------------------------------------------ svn:eol-style = native Propchange: trunk/reactos/hal/halppc/generic/reboot.c ------------------------------------------------------------------------------ svn:eol-style = native Propchange: trunk/reactos/hal/halppc/generic/resource.c ------------------------------------------------------------------------------ svn:eol-style = native Propchange: trunk/reactos/hal/halppc/generic/spinlock.c ------------------------------------------------------------------------------ svn:eol-style = native Propchange: trunk/reactos/hal/halppc/generic/sysbus.c ------------------------------------------------------------------------------ svn:eol-style = native Propchange: trunk/reactos/hal/halppc/generic/sysinfo.c ------------------------------------------------------------------------------ svn:eol-style = native Modified: trunk/reactos/hal/halppc/generic/systimer.S URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/hal/halppc/generic/systime…
============================================================================== --- trunk/reactos/hal/halppc/generic/systimer.S (original) +++ trunk/reactos/hal/halppc/generic/systimer.S Fri Sep 14 21:09:45 2007 @@ -1,48 +1,48 @@ -/* - * FILE: hal/halx86/generic/timer.S - * COPYRIGHT: See COPYING in the top level directory - * PURPOSE: System Timer Interrupt and Management - * PROGRAMMER: Alex Ionescu (alex(a)relsoft.net) - */ - -/* INCLUDES ******************************************************************/ - -#include <asm.h> -#include <internal/i386/asmmacro.S> -.intel_syntax noprefix - -/* FUNCTIONS *****************************************************************/ - -.globl _HalpClockInterrupt@0 -.func HalpClockInterrupt@0 -_HalpClockInterrupt@0: - - /* Enter trap */ - INT_PROLOG Hci, DoPushFakeErrorCode - - /* Push vector and make stack for IRQL */ - push 0x30 - sub esp, 4 - - /* Begin the interrupt */ - push esp - push 0x30 - push CLOCK2_LEVEL - call _HalBeginSystemInterrupt@12 - - /* Check if it's spurious */ - or al, al - jz Spurious - - /* Do a tick */ - mov eax, 100000 - jmp _KeUpdateSystemTime@0 - -Spurious: - - /* Exit the interrupt */ - add esp, 8 - mov esi, $ - jmp _Kei386EoiHelper@0 -.endfunc - +/* + * FILE: hal/halx86/generic/timer.S + * COPYRIGHT: See COPYING in the top level directory + * PURPOSE: System Timer Interrupt and Management + * PROGRAMMER: Alex Ionescu (alex(a)relsoft.net) + */ + +/* INCLUDES ******************************************************************/ + +#include <asm.h> +#include <internal/i386/asmmacro.S> +.intel_syntax noprefix + +/* FUNCTIONS *****************************************************************/ + +.globl _HalpClockInterrupt@0 +.func HalpClockInterrupt@0 +_HalpClockInterrupt@0: + + /* Enter trap */ + INT_PROLOG Hci, DoPushFakeErrorCode + + /* Push vector and make stack for IRQL */ + push 0x30 + sub esp, 4 + + /* Begin the interrupt */ + push esp + push 0x30 + push CLOCK2_LEVEL + call _HalBeginSystemInterrupt@12 + + /* Check if it's spurious */ + or al, al + jz Spurious + + /* Do a tick */ + mov eax, 100000 + jmp _KeUpdateSystemTime@0 + +Spurious: + + /* Exit the interrupt */ + add esp, 8 + mov esi, $ + jmp _Kei386EoiHelper@0 +.endfunc + Propchange: trunk/reactos/hal/halppc/generic/systimer.S ------------------------------------------------------------------------------ svn:eol-style = native Propchange: trunk/reactos/hal/halppc/generic/time.c ------------------------------------------------------------------------------ svn:eol-style = native Propchange: trunk/reactos/hal/halppc/generic/timer.c ------------------------------------------------------------------------------ svn:eol-style = native Propchange: trunk/reactos/hal/halppc/include/apic.h ------------------------------------------------------------------------------ svn:eol-style = native Propchange: trunk/reactos/hal/halppc/include/bus.h ------------------------------------------------------------------------------ svn:eol-style = native Propchange: trunk/reactos/hal/halppc/include/hal.h ------------------------------------------------------------------------------ svn:eol-style = native Propchange: trunk/reactos/hal/halppc/include/haldma.h ------------------------------------------------------------------------------ svn:eol-style = native Propchange: trunk/reactos/hal/halppc/include/halirq.h ------------------------------------------------------------------------------ svn:eol-style = native Propchange: trunk/reactos/hal/halppc/include/halp.h ------------------------------------------------------------------------------ svn:eol-style = native Propchange: trunk/reactos/hal/halppc/include/ioapic.h ------------------------------------------------------------------------------ svn:eol-style = native Propchange: trunk/reactos/hal/halppc/include/mps.h ------------------------------------------------------------------------------ svn:eol-style = native Propchange: trunk/reactos/hal/halppc/up/halinit_up.c ------------------------------------------------------------------------------ svn:eol-style = native Propchange: trunk/reactos/hal/halppc/up/halup.rc ------------------------------------------------------------------------------ svn:eol-style = native
17 years, 3 months
1
0
0
0
[hpoussin] 29036: Clean up .rbuild files and make them xml compliant Inspired by bug 2627
by hpoussin@svn.reactos.org
Author: hpoussin Date: Fri Sep 14 21:07:53 2007 New Revision: 29036 URL:
http://svn.reactos.org/svn/reactos?rev=29036&view=rev
Log: Clean up .rbuild files and make them xml compliant Inspired by bug 2627 Removed: trunk/reactos/lib/3rdparty/zlib/zlib_common.rbuild Modified: trunk/reactos/ReactOS-generic.rbuild trunk/reactos/ReactOS-i386.rbuild trunk/reactos/ReactOS-ppc.rbuild trunk/reactos/base/applications/applications.rbuild trunk/reactos/base/applications/cacls/cacls.rbuild trunk/reactos/base/applications/calc/calc.rbuild trunk/reactos/base/applications/charmap/charmap.rbuild trunk/reactos/base/applications/cmdutils/cmdutils.rbuild trunk/reactos/base/applications/cmdutils/dbgprint/dbgprint.rbuild trunk/reactos/base/applications/cmdutils/find/find.rbuild trunk/reactos/base/applications/cmdutils/more/more.rbuild trunk/reactos/base/applications/control/control.rbuild trunk/reactos/base/applications/games/games.rbuild trunk/reactos/base/applications/games/solitaire/solitaire.rbuild trunk/reactos/base/applications/games/winemine/winemine.rbuild trunk/reactos/base/applications/hh/hh.rbuild trunk/reactos/base/applications/hostname/hostname.rbuild trunk/reactos/base/applications/logoff/logoff.rbuild trunk/reactos/base/applications/mmc/mmc.rbuild trunk/reactos/base/applications/msconfig/msconfig.rbuild trunk/reactos/base/applications/mscutils/devmgmt/devmgmt.rbuild trunk/reactos/base/applications/mscutils/directory.rbuild trunk/reactos/base/applications/mscutils/servman/servman.rbuild trunk/reactos/base/applications/network/arp/arp.rbuild trunk/reactos/base/applications/network/dwnl/dwnl.rbuild trunk/reactos/base/applications/network/finger/finger.rbuild trunk/reactos/base/applications/network/ftp/ftp.rbuild trunk/reactos/base/applications/network/ipconfig/ipconfig.rbuild trunk/reactos/base/applications/network/net/net.rbuild trunk/reactos/base/applications/network/netstat/netstat.rbuild trunk/reactos/base/applications/network/network.rbuild trunk/reactos/base/applications/network/ping/ping.rbuild trunk/reactos/base/applications/network/route/route.rbuild trunk/reactos/base/applications/network/telnet/telnet.rbuild trunk/reactos/base/applications/network/tracert/tracert.rbuild trunk/reactos/base/applications/network/whois/whois.rbuild trunk/reactos/base/applications/notepad/notepad.rbuild trunk/reactos/base/applications/regedit/clb/clb.rbuild trunk/reactos/base/applications/regedit/regedit.rbuild trunk/reactos/base/applications/sc/sc.rbuild trunk/reactos/base/applications/screensavers/cylfrac/cylfrac.rbuild trunk/reactos/base/applications/screensavers/logon/logon.rbuild trunk/reactos/base/applications/screensavers/matrix/matrix.rbuild trunk/reactos/base/applications/screensavers/screensavers.rbuild trunk/reactos/base/applications/screensavers/scrnsave/scrnsave.rbuild trunk/reactos/base/applications/screensavers/starfield/starfield.rbuild trunk/reactos/base/applications/shutdown/shutdown.rbuild trunk/reactos/base/applications/sndvol32/sndvol32.rbuild trunk/reactos/base/applications/taskmgr/taskmgr.rbuild trunk/reactos/base/applications/winhelp/winhelp.rbuild trunk/reactos/base/applications/wordpad/wordpad.rbuild trunk/reactos/base/base.rbuild trunk/reactos/base/services/dhcp/dhcp.rbuild trunk/reactos/base/services/eventlog/eventlog.rbuild trunk/reactos/base/services/rpcss/rpcss.rbuild trunk/reactos/base/services/services.rbuild trunk/reactos/base/services/tcpsvcs/tcpsvcs.rbuild trunk/reactos/base/services/umpnpmgr/umpnpmgr.rbuild trunk/reactos/base/setup/reactos/reactos.rbuild trunk/reactos/base/setup/setup.rbuild trunk/reactos/base/setup/setup/setup.rbuild trunk/reactos/base/setup/usetup/usetup.rbuild trunk/reactos/base/setup/vmwinst/vmwinst.rbuild trunk/reactos/base/setup/welcome/welcome.rbuild trunk/reactos/base/shell/cmd/cmd.rbuild trunk/reactos/base/shell/explorer-new/explorer.rbuild trunk/reactos/base/shell/explorer/explorer.rbuild trunk/reactos/base/shell/explorer/notifyhook/notifyhook.rbuild trunk/reactos/base/shell/shell.rbuild trunk/reactos/base/system/autochk/autochk.rbuild trunk/reactos/base/system/expand/expand.rbuild trunk/reactos/base/system/format/format.rbuild trunk/reactos/base/system/lsass/lsass.rbuild trunk/reactos/base/system/msiexec/msiexec.rbuild trunk/reactos/base/system/regsvr32/regsvr32.rbuild trunk/reactos/base/system/rundll32/rundll32.rbuild trunk/reactos/base/system/services/services.rbuild trunk/reactos/base/system/smss/smss.rbuild trunk/reactos/base/system/system.rbuild trunk/reactos/base/system/userinit/userinit.rbuild trunk/reactos/base/system/winlogon/winlogon.rbuild trunk/reactos/baseaddress.rbuild trunk/reactos/boot/boot.rbuild trunk/reactos/boot/bootdata/bootcd/bootcd.rbuild trunk/reactos/boot/bootdata/bootcdregtest/bootcdregtest.rbuild trunk/reactos/boot/bootdata/bootdata.rbuild trunk/reactos/boot/bootdata/livecd/livecd.rbuild trunk/reactos/boot/bootdata/livecdregtest/livecdregtest.rbuild trunk/reactos/boot/freeldr/bootsect/bootsect.rbuild trunk/reactos/boot/freeldr/fdebug/fdebug.rbuild trunk/reactos/boot/freeldr/freeldr.rbuild trunk/reactos/boot/freeldr/freeldr/freeldr.rbuild trunk/reactos/boot/freeldr/freeldr/freeldr_arch.rbuild trunk/reactos/boot/freeldr/freeldr/freeldr_base.rbuild trunk/reactos/boot/freeldr/freeldr/freeldr_base64k.rbuild trunk/reactos/boot/freeldr/freeldr/freeldr_main.rbuild trunk/reactos/boot/freeldr/freeldr/freeldr_startup.rbuild trunk/reactos/boot/freeldr/freeldr/setupldr.rbuild trunk/reactos/boot/freeldr/freeldr/setupldr_main.rbuild trunk/reactos/boot/freeldr/install/installfreeldr.rbuild trunk/reactos/config-ppc.template.rbuild trunk/reactos/config.template.rbuild trunk/reactos/dll/3rdparty/3rdparty.rbuild trunk/reactos/dll/3rdparty/freetype/freetype.rbuild trunk/reactos/dll/3rdparty/mesa32/mesa32.rbuild trunk/reactos/dll/cpl/access/access.rbuild trunk/reactos/dll/cpl/appwiz/appwiz.rbuild trunk/reactos/dll/cpl/cpl.rbuild trunk/reactos/dll/cpl/desk/desk.rbuild trunk/reactos/dll/cpl/hdwwiz/hdwwiz.rbuild trunk/reactos/dll/cpl/input/input.rbuild trunk/reactos/dll/cpl/intl/intl.rbuild trunk/reactos/dll/cpl/main/main.rbuild trunk/reactos/dll/cpl/mmsys/mmsys.rbuild trunk/reactos/dll/cpl/ncpa/ncpa.rbuild trunk/reactos/dll/cpl/odbccp32/odbccp32.rbuild trunk/reactos/dll/cpl/powercfg/powercfg.rbuild trunk/reactos/dll/cpl/sysdm/sysdm.rbuild trunk/reactos/dll/cpl/timedate/timedate.rbuild trunk/reactos/dll/cpl/usrmgr/usrmgr.rbuild trunk/reactos/dll/directx/d3d8/d3d8.rbuild trunk/reactos/dll/directx/d3d8thk/d3d8thk.rbuild trunk/reactos/dll/directx/d3d9/d3d9.rbuild trunk/reactos/dll/directx/ddraw/ddraw.rbuild trunk/reactos/dll/directx/devenum/devenum.rbuild trunk/reactos/dll/directx/dinput/dinput.rbuild trunk/reactos/dll/directx/dinput8/dinput8.rbuild trunk/reactos/dll/directx/directx.rbuild trunk/reactos/dll/directx/dplay/dplay.rbuild trunk/reactos/dll/directx/dplayx/dplayx.rbuild trunk/reactos/dll/directx/dsound/dsound.rbuild trunk/reactos/dll/directx/dxdiagn/dxdiagn.rbuild trunk/reactos/dll/directx/wine/d3d8/d3d8.rbuild trunk/reactos/dll/directx/wine/wine.rbuild trunk/reactos/dll/directx/wine/wined3d/wined3d.rbuild trunk/reactos/dll/dll.rbuild trunk/reactos/dll/keyboard/kbdbe/kbdbe.rbuild trunk/reactos/dll/keyboard/kbdbur/kbdbur.rbuild (contents, props changed) trunk/reactos/dll/keyboard/kbdda/kbdda.rbuild trunk/reactos/dll/keyboard/kbddv/kbddv.rbuild trunk/reactos/dll/keyboard/kbdes/kbdes.rbuild trunk/reactos/dll/keyboard/kbdfi/kbdfi.rbuild (contents, props changed) trunk/reactos/dll/keyboard/kbdfr/kbdfr.rbuild trunk/reactos/dll/keyboard/kbdgr/kbdgr.rbuild trunk/reactos/dll/keyboard/kbdhe/kbdhe.rbuild trunk/reactos/dll/keyboard/kbdheb/kbdheb.rbuild trunk/reactos/dll/keyboard/kbdhu/kbdhu.rbuild trunk/reactos/dll/keyboard/kbdit/kbdit.rbuild (contents, props changed) trunk/reactos/dll/keyboard/kbdja/kbdja.rbuild trunk/reactos/dll/keyboard/kbdno/kbdno.rbuild trunk/reactos/dll/keyboard/kbdpl1/kbdpl1.rbuild trunk/reactos/dll/keyboard/kbdpo/kbdpo.rbuild trunk/reactos/dll/keyboard/kbdru/kbdru.rbuild trunk/reactos/dll/keyboard/kbdsg/kbdsg.rbuild trunk/reactos/dll/keyboard/kbdsk/kbdsk.rbuild trunk/reactos/dll/keyboard/kbdsw/kbdsw.rbuild trunk/reactos/dll/keyboard/kbdth/kbdth.rbuild (contents, props changed) trunk/reactos/dll/keyboard/kbduk/kbduk.rbuild trunk/reactos/dll/keyboard/kbdur/kbdur.rbuild trunk/reactos/dll/keyboard/kbdus/kbdus.rbuild trunk/reactos/dll/keyboard/keyboard.rbuild trunk/reactos/dll/ntdll/ntdll.rbuild trunk/reactos/dll/win32/cfgmgr32/cfgmgr32.rbuild trunk/reactos/dll/win32/gdiplus/gdiplus.rbuild trunk/reactos/dll/win32/kernel32/kernel32.rbuild trunk/reactos/dll/win32/samsrv/samsrv.rbuild trunk/reactos/dll/win32/setupapi/setupapi.rbuild trunk/reactos/dll/win32/shellext/shellext.rbuild trunk/reactos/dll/win32/win32.rbuild trunk/reactos/dll/win32/winmm/winmm.rbuild trunk/reactos/drivers/base/beep/beep.rbuild trunk/reactos/drivers/base/bootvid/bootvid.rbuild trunk/reactos/drivers/base/directory.rbuild trunk/reactos/drivers/base/kdcom/kdcom.rbuild trunk/reactos/drivers/base/null/null.rbuild trunk/reactos/drivers/bus/acpi/acpi.rbuild trunk/reactos/drivers/bus/directory.rbuild trunk/reactos/drivers/bus/isapnp/isapnp.rbuild trunk/reactos/drivers/bus/pci/pci.rbuild trunk/reactos/drivers/drivers.rbuild trunk/reactos/drivers/filesystems/cdfs/cdfs.rbuild trunk/reactos/drivers/filesystems/directory.rbuild trunk/reactos/drivers/filesystems/fs_rec/fs_rec.rbuild trunk/reactos/drivers/filesystems/msfs/msfs.rbuild trunk/reactos/drivers/filesystems/mup/mup.rbuild trunk/reactos/drivers/filesystems/npfs/npfs.rbuild trunk/reactos/drivers/filesystems/npfs_new/npfs.rbuild trunk/reactos/drivers/filesystems/ntfs/ntfs.rbuild trunk/reactos/drivers/filesystems/vfat/vfatfs.rbuild trunk/reactos/drivers/input/directory.rbuild trunk/reactos/drivers/input/i8042prt/i8042prt.rbuild trunk/reactos/drivers/input/kbdclass/kbdclass.rbuild trunk/reactos/drivers/input/mouclass/mouclass.rbuild trunk/reactos/drivers/input/sermouse/sermouse.rbuild trunk/reactos/drivers/ksfilter/directory.rbuild trunk/reactos/drivers/ksfilter/ks/ks.rbuild trunk/reactos/drivers/multimedia/audio/directory.rbuild trunk/reactos/drivers/multimedia/audio/mpu401_nt4/mpu401.rbuild (contents, props changed) trunk/reactos/drivers/multimedia/audio/sb16_nt4/sb16_nt4.rbuild trunk/reactos/drivers/multimedia/audio/sndblst/sndblst.rbuild trunk/reactos/drivers/multimedia/audio/sound/sound.rbuild trunk/reactos/drivers/multimedia/directory.rbuild trunk/reactos/drivers/network/afd/afd.rbuild trunk/reactos/drivers/network/dd/directory.rbuild trunk/reactos/drivers/network/dd/ne2000/ne2000.rbuild trunk/reactos/drivers/network/dd/pcnet/pcnet.rbuild trunk/reactos/drivers/network/directory.rbuild trunk/reactos/drivers/network/ndis/ndis.rbuild trunk/reactos/drivers/network/tcpip/tcpip.rbuild trunk/reactos/drivers/network/tdi/tdi.rbuild trunk/reactos/drivers/network/wshtcpip/wshtcpip.rbuild trunk/reactos/drivers/parallel/directory.rbuild trunk/reactos/drivers/parallel/parallel/parallel.rbuild trunk/reactos/drivers/serial/directory.rbuild trunk/reactos/drivers/serial/serenum/serenum.rbuild trunk/reactos/drivers/serial/serial/serial.rbuild trunk/reactos/drivers/setup/blue/blue.rbuild trunk/reactos/drivers/setup/directory.rbuild trunk/reactos/drivers/storage/class/cdrom/cdrom.rbuild trunk/reactos/drivers/storage/class/class2/class2.rbuild trunk/reactos/drivers/storage/class/directory.rbuild trunk/reactos/drivers/storage/class/disk/disk.rbuild trunk/reactos/drivers/storage/directory.rbuild trunk/reactos/drivers/storage/floppy/floppy.rbuild trunk/reactos/drivers/storage/ide/atapi/atapi.rbuild trunk/reactos/drivers/storage/ide/directory.rbuild trunk/reactos/drivers/storage/ide/pciide/pciide.rbuild trunk/reactos/drivers/storage/ide/pciidex/pciidex.rbuild trunk/reactos/drivers/storage/port/buslogic/buslogic.rbuild trunk/reactos/drivers/storage/port/directory.rbuild trunk/reactos/drivers/storage/port/diskdump/diskdump.rbuild trunk/reactos/drivers/storage/scsiport/scsiport.rbuild trunk/reactos/drivers/usb/directory.rbuild trunk/reactos/drivers/usb/nt4compat/directory.rbuild trunk/reactos/drivers/usb/nt4compat/usbdriver/usbdriver.rbuild trunk/reactos/drivers/usb/usbd/usbd.rbuild trunk/reactos/drivers/usb/usbhub/usbhub.rbuild trunk/reactos/drivers/usb/usbstor/usbstor.rbuild trunk/reactos/drivers/video/directory.rbuild trunk/reactos/drivers/video/displays/directory.rbuild trunk/reactos/drivers/video/displays/framebuf/framebuf.rbuild trunk/reactos/drivers/video/displays/vga/vgaddi.rbuild trunk/reactos/drivers/video/miniport/directory.rbuild trunk/reactos/drivers/video/miniport/vbe/vbemp.rbuild trunk/reactos/drivers/video/miniport/vga/vgamp.rbuild trunk/reactos/drivers/video/miniport/xboxvmp/xboxvmp.rbuild trunk/reactos/drivers/video/videoprt/videoprt.rbuild trunk/reactos/drivers/wdm/audio/backpln/directory.rbuild trunk/reactos/drivers/wdm/audio/backpln/portcls/portcls.rbuild trunk/reactos/drivers/wdm/audio/directory.rbuild trunk/reactos/drivers/wdm/audio/drivers/directory.rbuild trunk/reactos/drivers/wdm/audio/drivers/mpu401/mpu401.rbuild trunk/reactos/drivers/wdm/audio/drivers/sb16/sb16.rbuild trunk/reactos/drivers/wdm/audio/drm/directory.rbuild trunk/reactos/drivers/wdm/audio/drm/drmk/drmk.rbuild trunk/reactos/drivers/wdm/audio/legacy/directory.rbuild trunk/reactos/drivers/wdm/audio/legacy/wdmaud/wdmaud.rbuild trunk/reactos/drivers/wdm/audio/sysaudio/sysaudio.rbuild (contents, props changed) trunk/reactos/drivers/wdm/wdm.rbuild trunk/reactos/drivers/wmi/wmilib.rbuild trunk/reactos/hal/hal.rbuild trunk/reactos/hal/hal/hal.rbuild trunk/reactos/hal/halppc/directory.rbuild (contents, props changed) trunk/reactos/hal/halppc/generic/generic.rbuild (contents, props changed) trunk/reactos/hal/halppc/up/halup.rbuild (contents, props changed) trunk/reactos/hal/halx86/directory.rbuild trunk/reactos/hal/halx86/generic/generic.rbuild trunk/reactos/hal/halx86/mp/halmp.rbuild trunk/reactos/hal/halx86/up/halup.rbuild trunk/reactos/hal/halx86/xbox/halxbox.rbuild trunk/reactos/include/directory.rbuild trunk/reactos/include/dxsdk/dxsdk.rbuild trunk/reactos/include/psdk/psdk.rbuild trunk/reactos/include/reactos/idl/idl.rbuild trunk/reactos/include/reactos/reactos.rbuild trunk/reactos/include/reactos/wine/wineheaders.rbuild trunk/reactos/lib/3rdparty/3rdparty.rbuild trunk/reactos/lib/3rdparty/adns/adns.rbuild trunk/reactos/lib/3rdparty/bzip2/bzip2.rbuild trunk/reactos/lib/3rdparty/expat/expat.rbuild trunk/reactos/lib/3rdparty/libwine/libwine.rbuild trunk/reactos/lib/3rdparty/libxml2/libxml2.rbuild trunk/reactos/lib/3rdparty/mingw/mingw.rbuild trunk/reactos/lib/3rdparty/zlib/zlib.rbuild trunk/reactos/lib/cmlib/cmlib.rbuild trunk/reactos/lib/debugsup/debugsup.rbuild trunk/reactos/lib/drivers/chew/chew.rbuild trunk/reactos/lib/drivers/csq/csq.rbuild trunk/reactos/lib/drivers/directory.rbuild trunk/reactos/lib/drivers/ip/ip.rbuild trunk/reactos/lib/drivers/oskittcp/oskittcp.rbuild trunk/reactos/lib/epsapi/epsapi.rbuild trunk/reactos/lib/fslib/directory.rbuild trunk/reactos/lib/fslib/vfatlib/vfatlib.rbuild trunk/reactos/lib/fslib/vfatxlib/vfatxlib.rbuild trunk/reactos/lib/inflib/inflib.rbuild trunk/reactos/lib/lib.rbuild trunk/reactos/lib/pseh/pseh.rbuild trunk/reactos/lib/recyclebin/recyclebin.rbuild trunk/reactos/lib/rossym/rossym.rbuild trunk/reactos/lib/rtl/rtl.rbuild trunk/reactos/lib/sdk/crt/crt.rbuild trunk/reactos/lib/sdk/dxguid/dxguid.rbuild trunk/reactos/lib/sdk/libcntpr/libcntpr.rbuild trunk/reactos/lib/sdk/nt/nt.rbuild trunk/reactos/lib/sdk/sdk.rbuild trunk/reactos/lib/sdk/strmiids/strmiids.rbuild trunk/reactos/lib/sdk/uuid/uuid.rbuild trunk/reactos/lib/sdk/wdmguid/wdmguid.rbuild trunk/reactos/lib/smlib/smlib.rbuild trunk/reactos/lib/win32ksys/win32ksys.rbuild trunk/reactos/media/drivers/drivers.rbuild trunk/reactos/media/drivers/etc/etc.rbuild trunk/reactos/media/fonts/fonts.rbuild trunk/reactos/media/inf/inf.rbuild trunk/reactos/media/media.rbuild trunk/reactos/media/nls/nls.rbuild trunk/reactos/modules/directory.rbuild trunk/reactos/modules/empty.rbuild trunk/reactos/ntoskrnl/ntoskrnl.rbuild trunk/reactos/subsystems/csr/csr.rbuild trunk/reactos/subsystems/csr/csrsrv/csrsrv.rbuild trunk/reactos/subsystems/ntvdm/ntvdm.rbuild trunk/reactos/subsystems/subsystems.rbuild trunk/reactos/subsystems/win/basesrv/basesrv.rbuild trunk/reactos/subsystems/win/directory.rbuild trunk/reactos/subsystems/win/winsrv/winsrv.rbuild trunk/reactos/subsystems/win32/csrss/csrss.rbuild trunk/reactos/subsystems/win32/csrss/win32csr/win32csr.rbuild trunk/reactos/subsystems/win32/win32.rbuild trunk/reactos/subsystems/win32/win32k/win32k.rbuild trunk/reactos/tools/rbuild/tests/data/automaticdependency.rbuild trunk/reactos/tools/rbuild/tests/data/automaticdependency_include.rbuild trunk/reactos/tools/rbuild/tests/data/cdfile.rbuild trunk/reactos/tools/rbuild/tests/data/compilationunit.rbuild trunk/reactos/tools/rbuild/tests/data/define.rbuild trunk/reactos/tools/rbuild/tests/data/if.rbuild trunk/reactos/tools/rbuild/tests/data/include.rbuild trunk/reactos/tools/rbuild/tests/data/invoke.rbuild trunk/reactos/tools/rbuild/tests/data/linkerflag.rbuild trunk/reactos/tools/rbuild/tests/data/module.rbuild trunk/reactos/tools/rbuild/tests/data/project.rbuild trunk/reactos/tools/rbuild/tests/data/symbol.rbuild [This mail would be too long, it was shortened to contain the URLs only.] Modified: trunk/reactos/ReactOS-generic.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/ReactOS-generic.rbuild?rev…
Modified: trunk/reactos/ReactOS-i386.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/ReactOS-i386.rbuild?rev=29…
Modified: trunk/reactos/ReactOS-ppc.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/ReactOS-ppc.rbuild?rev=290…
Modified: trunk/reactos/base/applications/applications.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/applicat…
Modified: trunk/reactos/base/applications/cacls/cacls.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/cacls/ca…
Modified: trunk/reactos/base/applications/calc/calc.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/calc/cal…
Modified: trunk/reactos/base/applications/charmap/charmap.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/charmap/…
Modified: trunk/reactos/base/applications/cmdutils/cmdutils.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/cmdutils…
Modified: trunk/reactos/base/applications/cmdutils/dbgprint/dbgprint.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/cmdutils…
Modified: trunk/reactos/base/applications/cmdutils/find/find.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/cmdutils…
Modified: trunk/reactos/base/applications/cmdutils/more/more.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/cmdutils…
Modified: trunk/reactos/base/applications/control/control.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/control/…
Modified: trunk/reactos/base/applications/games/games.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/games/ga…
Modified: trunk/reactos/base/applications/games/solitaire/solitaire.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/games/so…
Modified: trunk/reactos/base/applications/games/winemine/winemine.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/games/wi…
Modified: trunk/reactos/base/applications/hh/hh.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/hh/hh.rb…
Modified: trunk/reactos/base/applications/hostname/hostname.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/hostname…
Modified: trunk/reactos/base/applications/logoff/logoff.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/logoff/l…
Modified: trunk/reactos/base/applications/mmc/mmc.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/mmc/mmc.…
Modified: trunk/reactos/base/applications/msconfig/msconfig.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/msconfig…
Modified: trunk/reactos/base/applications/mscutils/devmgmt/devmgmt.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/mscutils…
Modified: trunk/reactos/base/applications/mscutils/directory.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/mscutils…
Modified: trunk/reactos/base/applications/mscutils/servman/servman.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/mscutils…
Modified: trunk/reactos/base/applications/network/arp/arp.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/network/…
Modified: trunk/reactos/base/applications/network/dwnl/dwnl.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/network/…
Modified: trunk/reactos/base/applications/network/finger/finger.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/network/…
Modified: trunk/reactos/base/applications/network/ftp/ftp.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/network/…
Modified: trunk/reactos/base/applications/network/ipconfig/ipconfig.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/network/…
Modified: trunk/reactos/base/applications/network/net/net.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/network/…
Modified: trunk/reactos/base/applications/network/netstat/netstat.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/network/…
Modified: trunk/reactos/base/applications/network/network.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/network/…
Modified: trunk/reactos/base/applications/network/ping/ping.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/network/…
Modified: trunk/reactos/base/applications/network/route/route.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/network/…
Modified: trunk/reactos/base/applications/network/telnet/telnet.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/network/…
Modified: trunk/reactos/base/applications/network/tracert/tracert.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/network/…
Modified: trunk/reactos/base/applications/network/whois/whois.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/network/…
Modified: trunk/reactos/base/applications/notepad/notepad.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/notepad/…
Modified: trunk/reactos/base/applications/regedit/clb/clb.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/regedit/…
Modified: trunk/reactos/base/applications/regedit/regedit.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/regedit/…
Modified: trunk/reactos/base/applications/sc/sc.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/sc/sc.rb…
Modified: trunk/reactos/base/applications/screensavers/cylfrac/cylfrac.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/screensa…
Modified: trunk/reactos/base/applications/screensavers/logon/logon.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/screensa…
Modified: trunk/reactos/base/applications/screensavers/matrix/matrix.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/screensa…
Modified: trunk/reactos/base/applications/screensavers/screensavers.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/screensa…
Modified: trunk/reactos/base/applications/screensavers/scrnsave/scrnsave.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/screensa…
Modified: trunk/reactos/base/applications/screensavers/starfield/starfield.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/screensa…
Modified: trunk/reactos/base/applications/shutdown/shutdown.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/shutdown…
Modified: trunk/reactos/base/applications/sndvol32/sndvol32.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/sndvol32…
Modified: trunk/reactos/base/applications/taskmgr/taskmgr.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/taskmgr/…
Modified: trunk/reactos/base/applications/winhelp/winhelp.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/winhelp/…
Modified: trunk/reactos/base/applications/wordpad/wordpad.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/wordpad/…
Modified: trunk/reactos/base/base.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/base.rbuild?rev=29036…
Modified: trunk/reactos/base/services/dhcp/dhcp.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/services/dhcp/dhcp.rb…
Modified: trunk/reactos/base/services/eventlog/eventlog.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/services/eventlog/eve…
Modified: trunk/reactos/base/services/rpcss/rpcss.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/services/rpcss/rpcss.…
Modified: trunk/reactos/base/services/services.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/services/services.rbu…
Modified: trunk/reactos/base/services/tcpsvcs/tcpsvcs.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/services/tcpsvcs/tcps…
Modified: trunk/reactos/base/services/umpnpmgr/umpnpmgr.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/services/umpnpmgr/ump…
Modified: trunk/reactos/base/setup/reactos/reactos.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/setup/reactos/reactos…
Modified: trunk/reactos/base/setup/setup.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/setup/setup.rbuild?re…
Modified: trunk/reactos/base/setup/setup/setup.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/setup/setup/setup.rbu…
Modified: trunk/reactos/base/setup/usetup/usetup.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/setup/usetup/usetup.r…
Modified: trunk/reactos/base/setup/vmwinst/vmwinst.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/setup/vmwinst/vmwinst…
Modified: trunk/reactos/base/setup/welcome/welcome.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/setup/welcome/welcome…
Modified: trunk/reactos/base/shell/cmd/cmd.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/shell/cmd/cmd.rbuild?…
Modified: trunk/reactos/base/shell/explorer-new/explorer.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/shell/explorer-new/ex…
Modified: trunk/reactos/base/shell/explorer/explorer.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/shell/explorer/explor…
Modified: trunk/reactos/base/shell/explorer/notifyhook/notifyhook.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/shell/explorer/notify…
Modified: trunk/reactos/base/shell/shell.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/shell/shell.rbuild?re…
Modified: trunk/reactos/base/system/autochk/autochk.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/system/autochk/autoch…
Modified: trunk/reactos/base/system/expand/expand.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/system/expand/expand.…
Modified: trunk/reactos/base/system/format/format.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/system/format/format.…
Modified: trunk/reactos/base/system/lsass/lsass.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/system/lsass/lsass.rb…
Modified: trunk/reactos/base/system/msiexec/msiexec.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/system/msiexec/msiexe…
Modified: trunk/reactos/base/system/regsvr32/regsvr32.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/system/regsvr32/regsv…
Modified: trunk/reactos/base/system/rundll32/rundll32.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/system/rundll32/rundl…
Modified: trunk/reactos/base/system/services/services.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/system/services/servi…
Modified: trunk/reactos/base/system/smss/smss.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/system/smss/smss.rbui…
Modified: trunk/reactos/base/system/system.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/system/system.rbuild?…
Modified: trunk/reactos/base/system/userinit/userinit.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/system/userinit/useri…
Modified: trunk/reactos/base/system/winlogon/winlogon.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/system/winlogon/winlo…
Modified: trunk/reactos/baseaddress.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/baseaddress.rbuild?rev=290…
Modified: trunk/reactos/boot/boot.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/boot/boot.rbuild?rev=29036…
Modified: trunk/reactos/boot/bootdata/bootcd/bootcd.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/boot/bootdata/bootcd/bootc…
Modified: trunk/reactos/boot/bootdata/bootcdregtest/bootcdregtest.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/boot/bootdata/bootcdregtes…
Modified: trunk/reactos/boot/bootdata/bootdata.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/boot/bootdata/bootdata.rbu…
Modified: trunk/reactos/boot/bootdata/livecd/livecd.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/boot/bootdata/livecd/livec…
Modified: trunk/reactos/boot/bootdata/livecdregtest/livecdregtest.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/boot/bootdata/livecdregtes…
Modified: trunk/reactos/boot/freeldr/bootsect/bootsect.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/boot/freeldr/bootsect/boot…
Modified: trunk/reactos/boot/freeldr/fdebug/fdebug.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/boot/freeldr/fdebug/fdebug…
Modified: trunk/reactos/boot/freeldr/freeldr.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/boot/freeldr/freeldr.rbuil…
Modified: trunk/reactos/boot/freeldr/freeldr/freeldr.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/boot/freeldr/freeldr/freel…
Modified: trunk/reactos/boot/freeldr/freeldr/freeldr_arch.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/boot/freeldr/freeldr/freel…
Modified: trunk/reactos/boot/freeldr/freeldr/freeldr_base.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/boot/freeldr/freeldr/freel…
Modified: trunk/reactos/boot/freeldr/freeldr/freeldr_base64k.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/boot/freeldr/freeldr/freel…
Modified: trunk/reactos/boot/freeldr/freeldr/freeldr_main.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/boot/freeldr/freeldr/freel…
Modified: trunk/reactos/boot/freeldr/freeldr/freeldr_startup.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/boot/freeldr/freeldr/freel…
Modified: trunk/reactos/boot/freeldr/freeldr/setupldr.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/boot/freeldr/freeldr/setup…
Modified: trunk/reactos/boot/freeldr/freeldr/setupldr_main.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/boot/freeldr/freeldr/setup…
Modified: trunk/reactos/boot/freeldr/install/installfreeldr.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/boot/freeldr/install/insta…
Modified: trunk/reactos/config-ppc.template.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/config-ppc.template.rbuild…
Modified: trunk/reactos/config.template.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/config.template.rbuild?rev…
Modified: trunk/reactos/dll/3rdparty/3rdparty.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/3rdparty/3rdparty.rbui…
Modified: trunk/reactos/dll/3rdparty/freetype/freetype.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/3rdparty/freetype/free…
Modified: trunk/reactos/dll/3rdparty/mesa32/mesa32.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/3rdparty/mesa32/mesa32…
Modified: trunk/reactos/dll/cpl/access/access.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/cpl/access/access.rbui…
Modified: trunk/reactos/dll/cpl/appwiz/appwiz.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/cpl/appwiz/appwiz.rbui…
Modified: trunk/reactos/dll/cpl/cpl.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/cpl/cpl.rbuild?rev=290…
Modified: trunk/reactos/dll/cpl/desk/desk.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/cpl/desk/desk.rbuild?r…
Modified: trunk/reactos/dll/cpl/hdwwiz/hdwwiz.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/cpl/hdwwiz/hdwwiz.rbui…
Modified: trunk/reactos/dll/cpl/input/input.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/cpl/input/input.rbuild…
Modified: trunk/reactos/dll/cpl/intl/intl.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/cpl/intl/intl.rbuild?r…
Modified: trunk/reactos/dll/cpl/main/main.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/cpl/main/main.rbuild?r…
Modified: trunk/reactos/dll/cpl/mmsys/mmsys.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/cpl/mmsys/mmsys.rbuild…
Modified: trunk/reactos/dll/cpl/ncpa/ncpa.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/cpl/ncpa/ncpa.rbuild?r…
Modified: trunk/reactos/dll/cpl/odbccp32/odbccp32.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/cpl/odbccp32/odbccp32.…
Modified: trunk/reactos/dll/cpl/powercfg/powercfg.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/cpl/powercfg/powercfg.…
Modified: trunk/reactos/dll/cpl/sysdm/sysdm.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/cpl/sysdm/sysdm.rbuild…
Modified: trunk/reactos/dll/cpl/timedate/timedate.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/cpl/timedate/timedate.…
Modified: trunk/reactos/dll/cpl/usrmgr/usrmgr.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/cpl/usrmgr/usrmgr.rbui…
Modified: trunk/reactos/dll/directx/d3d8/d3d8.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/directx/d3d8/d3d8.rbui…
Modified: trunk/reactos/dll/directx/d3d8thk/d3d8thk.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/directx/d3d8thk/d3d8th…
Modified: trunk/reactos/dll/directx/d3d9/d3d9.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/directx/d3d9/d3d9.rbui…
Modified: trunk/reactos/dll/directx/ddraw/ddraw.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/directx/ddraw/ddraw.rb…
Modified: trunk/reactos/dll/directx/devenum/devenum.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/directx/devenum/devenu…
Modified: trunk/reactos/dll/directx/dinput/dinput.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/directx/dinput/dinput.…
Modified: trunk/reactos/dll/directx/dinput8/dinput8.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/directx/dinput8/dinput…
Modified: trunk/reactos/dll/directx/directx.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/directx/directx.rbuild…
Modified: trunk/reactos/dll/directx/dplay/dplay.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/directx/dplay/dplay.rb…
Modified: trunk/reactos/dll/directx/dplayx/dplayx.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/directx/dplayx/dplayx.…
Modified: trunk/reactos/dll/directx/dsound/dsound.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/directx/dsound/dsound.…
Modified: trunk/reactos/dll/directx/dxdiagn/dxdiagn.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/directx/dxdiagn/dxdiag…
Modified: trunk/reactos/dll/directx/wine/d3d8/d3d8.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/directx/wine/d3d8/d3d8…
Modified: trunk/reactos/dll/directx/wine/wine.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/directx/wine/wine.rbui…
Modified: trunk/reactos/dll/directx/wine/wined3d/wined3d.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/directx/wine/wined3d/w…
Modified: trunk/reactos/dll/dll.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/dll.rbuild?rev=29036&r…
Modified: trunk/reactos/dll/keyboard/kbdbe/kbdbe.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/keyboard/kbdbe/kbdbe.r…
Modified: trunk/reactos/dll/keyboard/kbdbur/kbdbur.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/keyboard/kbdbur/kbdbur…
Modified: trunk/reactos/dll/keyboard/kbdda/kbdda.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/keyboard/kbdda/kbdda.r…
Modified: trunk/reactos/dll/keyboard/kbddv/kbddv.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/keyboard/kbddv/kbddv.r…
Modified: trunk/reactos/dll/keyboard/kbdes/kbdes.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/keyboard/kbdes/kbdes.r…
Modified: trunk/reactos/dll/keyboard/kbdfi/kbdfi.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/keyboard/kbdfi/kbdfi.r…
Modified: trunk/reactos/dll/keyboard/kbdfr/kbdfr.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/keyboard/kbdfr/kbdfr.r…
Modified: trunk/reactos/dll/keyboard/kbdgr/kbdgr.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/keyboard/kbdgr/kbdgr.r…
Modified: trunk/reactos/dll/keyboard/kbdhe/kbdhe.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/keyboard/kbdhe/kbdhe.r…
Modified: trunk/reactos/dll/keyboard/kbdheb/kbdheb.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/keyboard/kbdheb/kbdheb…
Modified: trunk/reactos/dll/keyboard/kbdhu/kbdhu.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/keyboard/kbdhu/kbdhu.r…
Modified: trunk/reactos/dll/keyboard/kbdit/kbdit.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/keyboard/kbdit/kbdit.r…
Modified: trunk/reactos/dll/keyboard/kbdja/kbdja.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/keyboard/kbdja/kbdja.r…
Modified: trunk/reactos/dll/keyboard/kbdno/kbdno.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/keyboard/kbdno/kbdno.r…
Modified: trunk/reactos/dll/keyboard/kbdpl1/kbdpl1.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/keyboard/kbdpl1/kbdpl1…
Modified: trunk/reactos/dll/keyboard/kbdpo/kbdpo.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/keyboard/kbdpo/kbdpo.r…
Modified: trunk/reactos/dll/keyboard/kbdru/kbdru.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/keyboard/kbdru/kbdru.r…
Modified: trunk/reactos/dll/keyboard/kbdsg/kbdsg.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/keyboard/kbdsg/kbdsg.r…
Modified: trunk/reactos/dll/keyboard/kbdsk/kbdsk.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/keyboard/kbdsk/kbdsk.r…
Modified: trunk/reactos/dll/keyboard/kbdsw/kbdsw.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/keyboard/kbdsw/kbdsw.r…
Modified: trunk/reactos/dll/keyboard/kbdth/kbdth.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/keyboard/kbdth/kbdth.r…
Modified: trunk/reactos/dll/keyboard/kbduk/kbduk.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/keyboard/kbduk/kbduk.r…
Modified: trunk/reactos/dll/keyboard/kbdur/kbdur.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/keyboard/kbdur/kbdur.r…
Modified: trunk/reactos/dll/keyboard/kbdus/kbdus.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/keyboard/kbdus/kbdus.r…
Modified: trunk/reactos/dll/keyboard/keyboard.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/keyboard/keyboard.rbui…
Modified: trunk/reactos/dll/ntdll/ntdll.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/ntdll/ntdll.rbuild?rev…
Modified: trunk/reactos/dll/win32/cfgmgr32/cfgmgr32.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/cfgmgr32/cfgmgr3…
Modified: trunk/reactos/dll/win32/gdiplus/gdiplus.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/gdiplus/gdiplus.…
Modified: trunk/reactos/dll/win32/kernel32/kernel32.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/kernel32/kernel3…
Modified: trunk/reactos/dll/win32/samsrv/samsrv.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/samsrv/samsrv.rb…
Modified: trunk/reactos/dll/win32/setupapi/setupapi.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/setupapi/setupap…
Modified: trunk/reactos/dll/win32/shellext/shellext.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/shellext/shellex…
Modified: trunk/reactos/dll/win32/win32.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/win32.rbuild?rev…
Modified: trunk/reactos/dll/win32/winmm/winmm.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/winmm/winmm.rbui…
Modified: trunk/reactos/drivers/base/beep/beep.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/base/beep/beep.rbu…
Modified: trunk/reactos/drivers/base/bootvid/bootvid.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/base/bootvid/bootv…
Modified: trunk/reactos/drivers/base/directory.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/base/directory.rbu…
Modified: trunk/reactos/drivers/base/kdcom/kdcom.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/base/kdcom/kdcom.r…
Modified: trunk/reactos/drivers/base/null/null.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/base/null/null.rbu…
Modified: trunk/reactos/drivers/bus/acpi/acpi.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/bus/acpi/acpi.rbui…
Modified: trunk/reactos/drivers/bus/directory.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/bus/directory.rbui…
Modified: trunk/reactos/drivers/bus/isapnp/isapnp.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/bus/isapnp/isapnp.…
Modified: trunk/reactos/drivers/bus/pci/pci.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/bus/pci/pci.rbuild…
Modified: trunk/reactos/drivers/drivers.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/drivers.rbuild?rev…
Modified: trunk/reactos/drivers/filesystems/cdfs/cdfs.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/filesystems/cdfs/c…
Modified: trunk/reactos/drivers/filesystems/directory.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/filesystems/direct…
Modified: trunk/reactos/drivers/filesystems/fs_rec/fs_rec.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/filesystems/fs_rec…
Modified: trunk/reactos/drivers/filesystems/msfs/msfs.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/filesystems/msfs/m…
Modified: trunk/reactos/drivers/filesystems/mup/mup.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/filesystems/mup/mu…
Modified: trunk/reactos/drivers/filesystems/npfs/npfs.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/filesystems/npfs/n…
Modified: trunk/reactos/drivers/filesystems/npfs_new/npfs.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/filesystems/npfs_n…
Modified: trunk/reactos/drivers/filesystems/ntfs/ntfs.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/filesystems/ntfs/n…
Modified: trunk/reactos/drivers/filesystems/vfat/vfatfs.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/filesystems/vfat/v…
Modified: trunk/reactos/drivers/input/directory.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/input/directory.rb…
Modified: trunk/reactos/drivers/input/i8042prt/i8042prt.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/input/i8042prt/i80…
Modified: trunk/reactos/drivers/input/kbdclass/kbdclass.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/input/kbdclass/kbd…
Modified: trunk/reactos/drivers/input/mouclass/mouclass.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/input/mouclass/mou…
Modified: trunk/reactos/drivers/input/sermouse/sermouse.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/input/sermouse/ser…
Modified: trunk/reactos/drivers/ksfilter/directory.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/ksfilter/directory…
Modified: trunk/reactos/drivers/ksfilter/ks/ks.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/ksfilter/ks/ks.rbu…
Modified: trunk/reactos/drivers/multimedia/audio/directory.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/multimedia/audio/d…
Modified: trunk/reactos/drivers/multimedia/audio/mpu401_nt4/mpu401.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/multimedia/audio/m…
Modified: trunk/reactos/drivers/multimedia/audio/sb16_nt4/sb16_nt4.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/multimedia/audio/s…
Modified: trunk/reactos/drivers/multimedia/audio/sndblst/sndblst.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/multimedia/audio/s…
Modified: trunk/reactos/drivers/multimedia/audio/sound/sound.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/multimedia/audio/s…
Modified: trunk/reactos/drivers/multimedia/directory.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/multimedia/directo…
Modified: trunk/reactos/drivers/network/afd/afd.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/network/afd/afd.rb…
Modified: trunk/reactos/drivers/network/dd/directory.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/network/dd/directo…
Modified: trunk/reactos/drivers/network/dd/ne2000/ne2000.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/network/dd/ne2000/…
Modified: trunk/reactos/drivers/network/dd/pcnet/pcnet.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/network/dd/pcnet/p…
Modified: trunk/reactos/drivers/network/directory.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/network/directory.…
Modified: trunk/reactos/drivers/network/ndis/ndis.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/network/ndis/ndis.…
Modified: trunk/reactos/drivers/network/tcpip/tcpip.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/network/tcpip/tcpi…
Modified: trunk/reactos/drivers/network/tdi/tdi.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/network/tdi/tdi.rb…
Modified: trunk/reactos/drivers/network/wshtcpip/wshtcpip.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/network/wshtcpip/w…
Modified: trunk/reactos/drivers/parallel/directory.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/parallel/directory…
Modified: trunk/reactos/drivers/parallel/parallel/parallel.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/parallel/parallel/…
Modified: trunk/reactos/drivers/serial/directory.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/serial/directory.r…
Modified: trunk/reactos/drivers/serial/serenum/serenum.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/serial/serenum/ser…
Modified: trunk/reactos/drivers/serial/serial/serial.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/serial/serial/seri…
Modified: trunk/reactos/drivers/setup/blue/blue.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/setup/blue/blue.rb…
Modified: trunk/reactos/drivers/setup/directory.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/setup/directory.rb…
Modified: trunk/reactos/drivers/storage/class/cdrom/cdrom.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/storage/class/cdro…
Modified: trunk/reactos/drivers/storage/class/class2/class2.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/storage/class/clas…
Modified: trunk/reactos/drivers/storage/class/directory.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/storage/class/dire…
Modified: trunk/reactos/drivers/storage/class/disk/disk.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/storage/class/disk…
Modified: trunk/reactos/drivers/storage/directory.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/storage/directory.…
Modified: trunk/reactos/drivers/storage/floppy/floppy.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/storage/floppy/flo…
Modified: trunk/reactos/drivers/storage/ide/atapi/atapi.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/storage/ide/atapi/…
Modified: trunk/reactos/drivers/storage/ide/directory.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/storage/ide/direct…
Modified: trunk/reactos/drivers/storage/ide/pciide/pciide.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/storage/ide/pciide…
Modified: trunk/reactos/drivers/storage/ide/pciidex/pciidex.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/storage/ide/pciide…
Modified: trunk/reactos/drivers/storage/port/buslogic/buslogic.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/storage/port/buslo…
Modified: trunk/reactos/drivers/storage/port/directory.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/storage/port/direc…
Modified: trunk/reactos/drivers/storage/port/diskdump/diskdump.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/storage/port/diskd…
Modified: trunk/reactos/drivers/storage/scsiport/scsiport.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/storage/scsiport/s…
Modified: trunk/reactos/drivers/usb/directory.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/usb/directory.rbui…
Modified: trunk/reactos/drivers/usb/nt4compat/directory.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/usb/nt4compat/dire…
Modified: trunk/reactos/drivers/usb/nt4compat/usbdriver/usbdriver.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/usb/nt4compat/usbd…
Modified: trunk/reactos/drivers/usb/usbd/usbd.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/usb/usbd/usbd.rbui…
Modified: trunk/reactos/drivers/usb/usbhub/usbhub.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/usb/usbhub/usbhub.…
Modified: trunk/reactos/drivers/usb/usbstor/usbstor.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/usb/usbstor/usbsto…
Modified: trunk/reactos/drivers/video/directory.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/video/directory.rb…
Modified: trunk/reactos/drivers/video/displays/directory.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/video/displays/dir…
Modified: trunk/reactos/drivers/video/displays/framebuf/framebuf.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/video/displays/fra…
Modified: trunk/reactos/drivers/video/displays/vga/vgaddi.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/video/displays/vga…
Modified: trunk/reactos/drivers/video/miniport/directory.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/video/miniport/dir…
Modified: trunk/reactos/drivers/video/miniport/vbe/vbemp.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/video/miniport/vbe…
Modified: trunk/reactos/drivers/video/miniport/vga/vgamp.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/video/miniport/vga…
Modified: trunk/reactos/drivers/video/miniport/xboxvmp/xboxvmp.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/video/miniport/xbo…
Modified: trunk/reactos/drivers/video/videoprt/videoprt.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/video/videoprt/vid…
Modified: trunk/reactos/drivers/wdm/audio/backpln/directory.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/wdm/audio/backpln/…
Modified: trunk/reactos/drivers/wdm/audio/backpln/portcls/portcls.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/wdm/audio/backpln/…
Modified: trunk/reactos/drivers/wdm/audio/directory.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/wdm/audio/director…
Modified: trunk/reactos/drivers/wdm/audio/drivers/directory.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/wdm/audio/drivers/…
Modified: trunk/reactos/drivers/wdm/audio/drivers/mpu401/mpu401.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/wdm/audio/drivers/…
Modified: trunk/reactos/drivers/wdm/audio/drivers/sb16/sb16.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/wdm/audio/drivers/…
Modified: trunk/reactos/drivers/wdm/audio/drm/directory.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/wdm/audio/drm/dire…
Modified: trunk/reactos/drivers/wdm/audio/drm/drmk/drmk.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/wdm/audio/drm/drmk…
Modified: trunk/reactos/drivers/wdm/audio/legacy/directory.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/wdm/audio/legacy/d…
Modified: trunk/reactos/drivers/wdm/audio/legacy/wdmaud/wdmaud.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/wdm/audio/legacy/w…
Modified: trunk/reactos/drivers/wdm/audio/sysaudio/sysaudio.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/wdm/audio/sysaudio…
Modified: trunk/reactos/drivers/wdm/wdm.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/wdm/wdm.rbuild?rev…
Modified: trunk/reactos/drivers/wmi/wmilib.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/wmi/wmilib.rbuild?…
Modified: trunk/reactos/hal/hal.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/hal/hal.rbuild?rev=29036&r…
Modified: trunk/reactos/hal/hal/hal.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/hal/hal/hal.rbuild?rev=290…
Modified: trunk/reactos/hal/halppc/directory.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/hal/halppc/directory.rbuil…
Modified: trunk/reactos/hal/halppc/generic/generic.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/hal/halppc/generic/generic…
Modified: trunk/reactos/hal/halppc/up/halup.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/hal/halppc/up/halup.rbuild…
Modified: trunk/reactos/hal/halx86/directory.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/hal/halx86/directory.rbuil…
Modified: trunk/reactos/hal/halx86/generic/generic.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/hal/halx86/generic/generic…
Modified: trunk/reactos/hal/halx86/mp/halmp.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/hal/halx86/mp/halmp.rbuild…
Modified: trunk/reactos/hal/halx86/up/halup.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/hal/halx86/up/halup.rbuild…
Modified: trunk/reactos/hal/halx86/xbox/halxbox.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/hal/halx86/xbox/halxbox.rb…
Modified: trunk/reactos/include/directory.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/include/directory.rbuild?r…
Modified: trunk/reactos/include/dxsdk/dxsdk.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/include/dxsdk/dxsdk.rbuild…
Modified: trunk/reactos/include/psdk/psdk.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/include/psdk/psdk.rbuild?r…
Modified: trunk/reactos/include/reactos/idl/idl.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/include/reactos/idl/idl.rb…
Modified: trunk/reactos/include/reactos/reactos.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/include/reactos/reactos.rb…
Modified: trunk/reactos/include/reactos/wine/wineheaders.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/include/reactos/wine/wineh…
Modified: trunk/reactos/lib/3rdparty/3rdparty.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/lib/3rdparty/3rdparty.rbui…
Modified: trunk/reactos/lib/3rdparty/adns/adns.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/lib/3rdparty/adns/adns.rbu…
Modified: trunk/reactos/lib/3rdparty/bzip2/bzip2.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/lib/3rdparty/bzip2/bzip2.r…
Modified: trunk/reactos/lib/3rdparty/expat/expat.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/lib/3rdparty/expat/expat.r…
Modified: trunk/reactos/lib/3rdparty/libwine/libwine.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/lib/3rdparty/libwine/libwi…
Modified: trunk/reactos/lib/3rdparty/libxml2/libxml2.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/lib/3rdparty/libxml2/libxm…
Modified: trunk/reactos/lib/3rdparty/mingw/mingw.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/lib/3rdparty/mingw/mingw.r…
Modified: trunk/reactos/lib/3rdparty/zlib/zlib.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/lib/3rdparty/zlib/zlib.rbu…
Removed: trunk/reactos/lib/3rdparty/zlib/zlib_common.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/lib/3rdparty/zlib/zlib_com…
Modified: trunk/reactos/lib/cmlib/cmlib.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/lib/cmlib/cmlib.rbuild?rev…
Modified: trunk/reactos/lib/debugsup/debugsup.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/lib/debugsup/debugsup.rbui…
Modified: trunk/reactos/lib/drivers/chew/chew.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/lib/drivers/chew/chew.rbui…
Modified: trunk/reactos/lib/drivers/csq/csq.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/lib/drivers/csq/csq.rbuild…
Modified: trunk/reactos/lib/drivers/directory.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/lib/drivers/directory.rbui…
Modified: trunk/reactos/lib/drivers/ip/ip.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/lib/drivers/ip/ip.rbuild?r…
Modified: trunk/reactos/lib/drivers/oskittcp/oskittcp.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/lib/drivers/oskittcp/oskit…
Modified: trunk/reactos/lib/epsapi/epsapi.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/lib/epsapi/epsapi.rbuild?r…
Modified: trunk/reactos/lib/fslib/directory.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/lib/fslib/directory.rbuild…
Modified: trunk/reactos/lib/fslib/vfatlib/vfatlib.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/lib/fslib/vfatlib/vfatlib.…
Modified: trunk/reactos/lib/fslib/vfatxlib/vfatxlib.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/lib/fslib/vfatxlib/vfatxli…
Modified: trunk/reactos/lib/inflib/inflib.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/lib/inflib/inflib.rbuild?r…
Modified: trunk/reactos/lib/lib.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/lib/lib.rbuild?rev=29036&r…
Modified: trunk/reactos/lib/pseh/pseh.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/lib/pseh/pseh.rbuild?rev=2…
Modified: trunk/reactos/lib/recyclebin/recyclebin.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/lib/recyclebin/recyclebin.…
Modified: trunk/reactos/lib/rossym/rossym.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/lib/rossym/rossym.rbuild?r…
Modified: trunk/reactos/lib/rtl/rtl.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/lib/rtl/rtl.rbuild?rev=290…
Modified: trunk/reactos/lib/sdk/crt/crt.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/lib/sdk/crt/crt.rbuild?rev…
Modified: trunk/reactos/lib/sdk/dxguid/dxguid.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/lib/sdk/dxguid/dxguid.rbui…
Modified: trunk/reactos/lib/sdk/libcntpr/libcntpr.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/lib/sdk/libcntpr/libcntpr.…
Modified: trunk/reactos/lib/sdk/nt/nt.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/lib/sdk/nt/nt.rbuild?rev=2…
Modified: trunk/reactos/lib/sdk/sdk.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/lib/sdk/sdk.rbuild?rev=290…
Modified: trunk/reactos/lib/sdk/strmiids/strmiids.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/lib/sdk/strmiids/strmiids.…
Modified: trunk/reactos/lib/sdk/uuid/uuid.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/lib/sdk/uuid/uuid.rbuild?r…
Modified: trunk/reactos/lib/sdk/wdmguid/wdmguid.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/lib/sdk/wdmguid/wdmguid.rb…
Modified: trunk/reactos/lib/smlib/smlib.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/lib/smlib/smlib.rbuild?rev…
Modified: trunk/reactos/lib/win32ksys/win32ksys.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/lib/win32ksys/win32ksys.rb…
Modified: trunk/reactos/media/drivers/drivers.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/media/drivers/drivers.rbui…
Modified: trunk/reactos/media/drivers/etc/etc.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/media/drivers/etc/etc.rbui…
Modified: trunk/reactos/media/fonts/fonts.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/media/fonts/fonts.rbuild?r…
Modified: trunk/reactos/media/inf/inf.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/media/inf/inf.rbuild?rev=2…
Modified: trunk/reactos/media/media.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/media/media.rbuild?rev=290…
Modified: trunk/reactos/media/nls/nls.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/media/nls/nls.rbuild?rev=2…
Modified: trunk/reactos/modules/directory.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/modules/directory.rbuild?r…
Modified: trunk/reactos/modules/empty.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/modules/empty.rbuild?rev=2…
Modified: trunk/reactos/ntoskrnl/ntoskrnl.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/ntoskrnl.rbuild?r…
Modified: trunk/reactos/subsystems/csr/csr.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/subsystems/csr/csr.rbuild?…
Modified: trunk/reactos/subsystems/csr/csrsrv/csrsrv.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/subsystems/csr/csrsrv/csrs…
Modified: trunk/reactos/subsystems/ntvdm/ntvdm.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/subsystems/ntvdm/ntvdm.rbu…
Modified: trunk/reactos/subsystems/subsystems.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/subsystems/subsystems.rbui…
Modified: trunk/reactos/subsystems/win/basesrv/basesrv.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/subsystems/win/basesrv/bas…
Modified: trunk/reactos/subsystems/win/directory.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/subsystems/win/directory.r…
Modified: trunk/reactos/subsystems/win/winsrv/winsrv.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/subsystems/win/winsrv/wins…
Modified: trunk/reactos/subsystems/win32/csrss/csrss.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/subsystems/win32/csrss/csr…
Modified: trunk/reactos/subsystems/win32/csrss/win32csr/win32csr.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/subsystems/win32/csrss/win…
Modified: trunk/reactos/subsystems/win32/win32.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/subsystems/win32/win32.rbu…
Modified: trunk/reactos/subsystems/win32/win32k/win32k.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/subsystems/win32/win32k/wi…
Modified: trunk/reactos/tools/rbuild/tests/data/automaticdependency.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/tools/rbuild/tests/data/au…
Modified: trunk/reactos/tools/rbuild/tests/data/automaticdependency_include.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/tools/rbuild/tests/data/au…
Modified: trunk/reactos/tools/rbuild/tests/data/cdfile.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/tools/rbuild/tests/data/cd…
Modified: trunk/reactos/tools/rbuild/tests/data/compilationunit.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/tools/rbuild/tests/data/co…
Modified: trunk/reactos/tools/rbuild/tests/data/define.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/tools/rbuild/tests/data/de…
Modified: trunk/reactos/tools/rbuild/tests/data/if.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/tools/rbuild/tests/data/if…
Modified: trunk/reactos/tools/rbuild/tests/data/include.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/tools/rbuild/tests/data/in…
Modified: trunk/reactos/tools/rbuild/tests/data/invoke.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/tools/rbuild/tests/data/in…
Modified: trunk/reactos/tools/rbuild/tests/data/linkerflag.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/tools/rbuild/tests/data/li…
Modified: trunk/reactos/tools/rbuild/tests/data/module.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/tools/rbuild/tests/data/mo…
Modified: trunk/reactos/tools/rbuild/tests/data/project.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/tools/rbuild/tests/data/pr…
Modified: trunk/reactos/tools/rbuild/tests/data/symbol.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/tools/rbuild/tests/data/sy…
17 years, 3 months
1
0
0
0
[jimtabor] 29035: - Setting up for the User32 part of the win32k rewrite. - Pass window handle and pointer to the current teb callback. This will allow easy and fast read access for user space programs. - Next will be ValidateHwnd and the rest. - https://www.microsoft.com/msj/0397/hood/hood0397.aspx - http://www.winterdom.com/dev/ui/wnd.html - http://www.mvps.org/user32/modal.html - http://www.tech-archive.net/Archive/Development/microsoft.public.win32.programmer.kernel/2006-05/msg00522.html
by jimtabor@svn.reactos.org
Author: jimtabor Date: Fri Sep 14 19:34:41 2007 New Revision: 29035 URL:
http://svn.reactos.org/svn/reactos?rev=29035&view=rev
Log: - Setting up for the User32 part of the win32k rewrite. - Pass window handle and pointer to the current teb callback. This will allow easy and fast read access for user space programs. - Next will be ValidateHwnd and the rest. -
https://www.microsoft.com/msj/0397/hood/hood0397.aspx
-
http://www.winterdom.com/dev/ui/wnd.html
-
http://www.mvps.org/user32/modal.html
-
http://www.tech-archive.net/Archive/Development/microsoft.public.win32.prog…
Modified: trunk/reactos/subsystems/win32/win32k/ntuser/callback.c Modified: trunk/reactos/subsystems/win32/win32k/ntuser/callback.c URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/subsystems/win32/win32k/nt…
============================================================================== --- trunk/reactos/subsystems/win32/win32k/ntuser/callback.c (original) +++ trunk/reactos/subsystems/win32/win32k/ntuser/callback.c Fri Sep 14 19:34:41 2007 @@ -106,6 +106,34 @@ } } + +// +// Pass the Current Window handle and pointer to the Client Callback. +// This will help user space programs speed up read access with the window object. +// +static VOID +IntSetTebWndCallback (HWND * hWnd, PVOID * pWnd) +{ + HWND hWndS = *hWnd; + PWINDOW_OBJECT Window = UserGetWindowObject(*hWnd); + PTEB Teb = NtCurrentTeb(); + + *hWnd = Teb->Win32ClientInfo.hWND; + *pWnd = Teb->Win32ClientInfo.pvWND; + + Teb->Win32ClientInfo.hWND = hWndS; + Teb->Win32ClientInfo.pvWND = (PVOID) Window; +} + +static VOID +IntRestoreTebWndCallback (HWND hWnd, PVOID pWnd) +{ + PTEB Teb = NtCurrentTeb(); + + Teb->Win32ClientInfo.hWND = hWnd; + Teb->Win32ClientInfo.pvWND = pWnd; +} + /* FUNCTIONS *****************************************************************/ VOID STDCALL @@ -116,7 +144,7 @@ LRESULT Result) { SENDASYNCPROC_CALLBACK_ARGUMENTS Arguments; - PVOID ResultPointer; + PVOID ResultPointer, pWnd; ULONG ResultLength; NTSTATUS Status; @@ -126,6 +154,8 @@ Arguments.Context = CompletionCallbackContext; Arguments.Result = Result; + IntSetTebWndCallback (&hWnd, &pWnd); + UserLeaveCo(); Status = KeUserModeCallback(USER32_CALLBACK_SENDASYNCPROC, @@ -135,6 +165,8 @@ &ResultLength); UserEnterCo(); + + IntRestoreTebWndCallback (hWnd, pWnd); if (!NT_SUCCESS(Status)) { @@ -155,7 +187,7 @@ WINDOWPROC_CALLBACK_ARGUMENTS StackArguments; PWINDOWPROC_CALLBACK_ARGUMENTS Arguments; NTSTATUS Status; - PVOID ResultPointer; + PVOID ResultPointer, pWnd; ULONG ResultLength; ULONG ArgumentLength; LRESULT Result; @@ -187,6 +219,8 @@ ResultPointer = NULL; ResultLength = ArgumentLength; + IntSetTebWndCallback (&Wnd, &pWnd); + UserLeaveCo(); Status = KeUserModeCallback(USER32_CALLBACK_WINDOWPROC, @@ -207,6 +241,8 @@ _SEH_END; UserEnterCo(); + + IntRestoreTebWndCallback (Wnd, pWnd); if (!NT_SUCCESS(Status)) {
17 years, 3 months
1
0
0
0
[winesync] 29034: Autosyncing with Wine HEAD
by winesync@svn.reactos.org
Author: winesync Date: Fri Sep 14 12:03:04 2007 New Revision: 29034 URL:
http://svn.reactos.org/svn/reactos?rev=29034&view=rev
Log: Autosyncing with Wine HEAD Modified: trunk/reactos/dll/win32/imm32/imm.c trunk/reactos/dll/win32/imm32/imm32.rbuild trunk/reactos/dll/win32/imm32/imm32.spec Modified: trunk/reactos/dll/win32/imm32/imm.c URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/imm32/imm.c?rev=…
============================================================================== --- trunk/reactos/dll/win32/imm32/imm.c (original) +++ trunk/reactos/dll/win32/imm32/imm.c Fri Sep 14 12:03:04 2007 @@ -2,7 +2,7 @@ * IMM32 library * * Copyright 1998 Patrik Stridvall - * Copyright 2002, 2003 CodeWeavers, Aric Stewart + * Copyright 2002, 2003, 2007 CodeWeavers, Aric Stewart * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -28,6 +28,7 @@ #include "winerror.h" #include "wine/debug.h" #include "imm.h" +#include "ddk/imm.h" #include "winnls.h" WINE_DEFAULT_DEBUG_CHANNEL(imm); @@ -36,25 +37,21 @@ static void (*pX11DRV_ForceXIMReset)(HWND); +typedef struct tagIMCCInternal +{ + DWORD dwLock; + DWORD dwSize; +} IMCCInternal; + typedef struct tagInputContextData { - LPBYTE CompositionString; - LPBYTE CompositionReadingString; - LPBYTE ResultString; - LPBYTE ResultReadingString; - DWORD dwCompStringSize; /* buffer size */ - DWORD dwCompStringLength; /* string length (in bytes) */ - DWORD dwCompReadStringSize; - DWORD dwResultStringSize; - DWORD dwResultReadStringSize; - HWND hwnd; - BOOL bOpen; BOOL bInternalState; BOOL bRead; BOOL bInComposition; - LOGFONTW font; HFONT textfont; - COMPOSITIONFORM CompForm; + + DWORD dwLock; + INPUTCONTEXT IMC; } InputContextData; static InputContextData *root_context = NULL; @@ -77,24 +74,33 @@ */ static LRESULT WINAPI IME_WindowProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam); -static void UpdateDataInDefaultIMEWindow(HWND hwnd); +static void UpdateDataInDefaultIMEWindow(HWND hwnd, BOOL showable); static void ImmInternalPostIMEMessage(UINT, WPARAM, LPARAM); static void ImmInternalSetOpenStatus(BOOL fOpen); +static HIMCC updateResultStr(HIMCC old, LPWSTR resultstr, DWORD len); static VOID IMM_PostResult(InputContextData *data) { unsigned int i; + LPCOMPOSITIONSTRING compstr; + LPBYTE compdata; + LPWSTR ResultStr; + HIMCC newCompStr; + TRACE("Posting result as IME_CHAR\n"); - - for (i = 0; i < data->dwResultStringSize / sizeof (WCHAR); i++) - ImmInternalPostIMEMessage (WM_IME_CHAR, ((WCHAR*)data->ResultString)[i], - 1); + compdata = ImmLockIMCC(root_context->IMC.hCompStr); + compstr = (LPCOMPOSITIONSTRING)compdata; + ResultStr = (LPWSTR)(compdata + compstr->dwResultStrOffset); + + for (i = 0; i < compstr->dwResultStrLen; i++) + ImmInternalPostIMEMessage (WM_IME_CHAR, ResultStr[i], 1); + + ImmUnlockIMCC(root_context->IMC.hCompStr); /* clear the buffer */ - if (data->dwResultStringSize) - HeapFree(GetProcessHeap(),0,data->ResultString); - data->dwResultStringSize = 0; - data->ResultString = NULL; + newCompStr = updateResultStr(root_context->IMC.hCompStr, NULL, 0); + ImmDestroyIMCC(root_context->IMC.hCompStr); + root_context->IMC.hCompStr = newCompStr; } static void IMM_Register(void) @@ -164,8 +170,8 @@ { HWND target = GetFocus(); if (!target) - PostMessageW(root_context->hwnd,msg,wParam,lParam); - else + PostMessageW(root_context->IMC.hWnd,msg,wParam,lParam); + else PostMessageW(target, msg, wParam, lParam); } @@ -173,7 +179,7 @@ { HWND target; - target = root_context->hwnd; + target = root_context->IMC.hWnd; if (!target) target = GetFocus(); if (target) @@ -186,36 +192,302 @@ { TRACE("Setting internal state to %s\n",(fOpen)?"OPEN":"CLOSED"); - root_context->bOpen = fOpen; + root_context->IMC.fOpen = fOpen; root_context->bInternalState = fOpen; if (fOpen == FALSE) { ShowWindow(hwndDefault,SW_HIDE); - - if (root_context->dwCompStringSize) - HeapFree(GetProcessHeap(),0,root_context->CompositionString); - if (root_context->dwCompReadStringSize) - HeapFree(GetProcessHeap(),0,root_context->CompositionReadingString); - if (root_context->dwResultStringSize) - HeapFree(GetProcessHeap(),0,root_context->ResultString); - if (root_context->dwResultReadStringSize) - HeapFree(GetProcessHeap(),0,root_context->ResultReadingString); - root_context->dwCompStringSize = 0; - root_context->dwCompStringLength = 0; - root_context->CompositionString = NULL; - root_context->dwCompReadStringSize = 0; - root_context->CompositionReadingString = NULL; - root_context->dwResultStringSize = 0; - root_context->ResultString = NULL; - root_context->dwResultReadStringSize = 0; - root_context->ResultReadingString = NULL; + ImmDestroyIMCC(root_context->IMC.hCompStr); + root_context->IMC.hCompStr = NULL; } else ShowWindow(hwndDefault, SW_SHOWNOACTIVATE); ImmInternalSendIMENotify(IMN_SETOPENSTATUS, 0); } + +static int updateField(DWORD origLen, DWORD origOffset, DWORD currentOffset, + LPBYTE target, LPBYTE source, DWORD* lenParam, + DWORD* offsetParam, BOOL wchars ) +{ + if (origLen > 0 && origOffset > 0) + { + int truelen = origLen; + if (wchars) + truelen *= sizeof(WCHAR); + + memcpy(&target[currentOffset], &source[origOffset], truelen); + + *lenParam = origLen; + *offsetParam = currentOffset; + currentOffset += truelen; + } + return currentOffset; +} + +static HIMCC updateCompStr(HIMCC old, LPWSTR compstr, DWORD len) +{ + /* we need to make sure the CompStr, CompClaus and CompAttr fields are all + * set and correct */ + int needed_size; + HIMCC rc; + LPBYTE newdata = NULL; + LPBYTE olddata = NULL; + LPCOMPOSITIONSTRING new_one; + LPCOMPOSITIONSTRING lpcs = NULL; + INT current_offset = 0; + + TRACE("%s, %i\n",debugstr_wn(compstr,len),len); + + if (old != NULL) + { + olddata = ImmLockIMCC(old); + lpcs = (LPCOMPOSITIONSTRING)olddata; + } + + needed_size = sizeof(COMPOSITIONSTRING) + len * sizeof(WCHAR) + + len + sizeof(DWORD) * 2; + + if (lpcs != NULL) + { + needed_size += lpcs->dwCompReadAttrLen; + needed_size += lpcs->dwCompReadClauseLen; + needed_size += lpcs->dwCompReadStrLen * sizeof(DWORD); + needed_size += lpcs->dwResultReadClauseLen; + needed_size += lpcs->dwResultReadStrLen * sizeof(DWORD); + needed_size += lpcs->dwResultClauseLen; + needed_size += lpcs->dwResultStrLen * sizeof(DWORD); + needed_size += lpcs->dwPrivateSize; + } + rc = ImmCreateIMCC(needed_size); + newdata = ImmLockIMCC(rc); + new_one = (LPCOMPOSITIONSTRING)newdata; + + new_one->dwSize = needed_size; + current_offset = sizeof(COMPOSITIONSTRING); + if (lpcs != NULL) + { + current_offset = updateField(lpcs->dwCompReadAttrLen, + lpcs->dwCompReadAttrOffset, + current_offset, newdata, olddata, + &new_one->dwCompReadAttrLen, + &new_one->dwCompReadAttrOffset, FALSE); + + current_offset = updateField(lpcs->dwCompReadClauseLen, + lpcs->dwCompReadClauseOffset, + current_offset, newdata, olddata, + &new_one->dwCompReadClauseLen, + &new_one->dwCompReadClauseOffset, FALSE); + + current_offset = updateField(lpcs->dwCompReadStrLen, + lpcs->dwCompReadStrOffset, + current_offset, newdata, olddata, + &new_one->dwCompReadStrLen, + &new_one->dwCompReadStrOffset, TRUE); + + /* new CompAttr, CompClause, CompStr, dwCursorPos */ + new_one->dwDeltaStart = 0; + + current_offset = updateField(lpcs->dwResultReadClauseLen, + lpcs->dwResultReadClauseOffset, + current_offset, newdata, olddata, + &new_one->dwResultReadClauseLen, + &new_one->dwResultReadClauseOffset, FALSE); + + current_offset = updateField(lpcs->dwResultReadStrLen, + lpcs->dwResultReadStrOffset, + current_offset, newdata, olddata, + &new_one->dwResultReadStrLen, + &new_one->dwResultReadStrOffset, TRUE); + + current_offset = updateField(lpcs->dwResultClauseLen, + lpcs->dwResultClauseOffset, + current_offset, newdata, olddata, + &new_one->dwResultClauseLen, + &new_one->dwResultClauseOffset, FALSE); + + current_offset = updateField(lpcs->dwResultStrLen, + lpcs->dwResultStrOffset, + current_offset, newdata, olddata, + &new_one->dwResultStrLen, + &new_one->dwResultStrOffset, TRUE); + + current_offset = updateField(lpcs->dwPrivateSize, + lpcs->dwPrivateOffset, + current_offset, newdata, olddata, + &new_one->dwPrivateSize, + &new_one->dwPrivateOffset, FALSE); + } + + /* set new data */ + /* CompAttr */ + new_one->dwCompAttrLen = len; + if (len > 0) + { + new_one->dwCompAttrOffset = current_offset; + memset(&newdata[current_offset],ATTR_INPUT,len); + current_offset += len; + } + + /* CompClause */ + if (len > 0) + { + new_one->dwCompClauseLen = sizeof(DWORD) * 2; + new_one->dwCompClauseOffset = current_offset; + *(DWORD*)(&newdata[current_offset]) = 0; + current_offset += sizeof(DWORD); + *(DWORD*)(&newdata[current_offset]) = len; + current_offset += sizeof(DWORD); + } + + /* CompStr */ + new_one->dwCompStrLen = len; + if (len > 0) + { + new_one->dwCompStrOffset = current_offset; + memcpy(&newdata[current_offset],compstr,len*sizeof(WCHAR)); + } + + /* CursorPos */ + new_one->dwCursorPos = len; + + ImmUnlockIMCC(rc); + if (lpcs) + ImmUnlockIMCC(old); + + return rc; +} + +static HIMCC updateResultStr(HIMCC old, LPWSTR resultstr, DWORD len) +{ + /* we need to make sure the ResultStr and ResultClause fields are all + * set and correct */ + int needed_size; + HIMCC rc; + LPBYTE newdata = NULL; + LPBYTE olddata = NULL; + LPCOMPOSITIONSTRING new_one; + LPCOMPOSITIONSTRING lpcs = NULL; + INT current_offset = 0; + + TRACE("%s, %i\n",debugstr_wn(resultstr,len),len); + + if (old != NULL) + { + olddata = ImmLockIMCC(old); + lpcs = (LPCOMPOSITIONSTRING)olddata; + } + + needed_size = sizeof(COMPOSITIONSTRING) + len * sizeof(WCHAR) + + sizeof(DWORD) * 2; + + if (lpcs != NULL) + { + needed_size += lpcs->dwCompReadAttrLen; + needed_size += lpcs->dwCompReadClauseLen; + needed_size += lpcs->dwCompReadStrLen * sizeof(DWORD); + needed_size += lpcs->dwCompAttrLen; + needed_size += lpcs->dwCompClauseLen; + needed_size += lpcs->dwCompStrLen * sizeof(DWORD); + needed_size += lpcs->dwResultReadClauseLen; + needed_size += lpcs->dwResultReadStrLen * sizeof(DWORD); + needed_size += lpcs->dwPrivateSize; + } + rc = ImmCreateIMCC(needed_size); + newdata = ImmLockIMCC(rc); + new_one = (LPCOMPOSITIONSTRING)newdata; + + new_one->dwSize = needed_size; + current_offset = sizeof(COMPOSITIONSTRING); + if (lpcs != NULL) + { + current_offset = updateField(lpcs->dwCompReadAttrLen, + lpcs->dwCompReadAttrOffset, + current_offset, newdata, olddata, + &new_one->dwCompReadAttrLen, + &new_one->dwCompReadAttrOffset, FALSE); + + current_offset = updateField(lpcs->dwCompReadClauseLen, + lpcs->dwCompReadClauseOffset, + current_offset, newdata, olddata, + &new_one->dwCompReadClauseLen, + &new_one->dwCompReadClauseOffset, FALSE); + + current_offset = updateField(lpcs->dwCompReadStrLen, + lpcs->dwCompReadStrOffset, + current_offset, newdata, olddata, + &new_one->dwCompReadStrLen, + &new_one->dwCompReadStrOffset, TRUE); + + current_offset = updateField(lpcs->dwCompAttrLen, + lpcs->dwCompAttrOffset, + current_offset, newdata, olddata, + &new_one->dwCompAttrLen, + &new_one->dwCompAttrOffset, FALSE); + + current_offset = updateField(lpcs->dwCompClauseLen, + lpcs->dwCompClauseOffset, + current_offset, newdata, olddata, + &new_one->dwCompClauseLen, + &new_one->dwCompClauseOffset, FALSE); + + current_offset = updateField(lpcs->dwCompStrLen, + lpcs->dwCompStrOffset, + current_offset, newdata, olddata, + &new_one->dwCompStrLen, + &new_one->dwCompStrOffset, TRUE); + + new_one->dwCursorPos = lpcs->dwCursorPos; + new_one->dwDeltaStart = 0; + + current_offset = updateField(lpcs->dwResultReadClauseLen, + lpcs->dwResultReadClauseOffset, + current_offset, newdata, olddata, + &new_one->dwResultReadClauseLen, + &new_one->dwResultReadClauseOffset, FALSE); + + current_offset = updateField(lpcs->dwResultReadStrLen, + lpcs->dwResultReadStrOffset, + current_offset, newdata, olddata, + &new_one->dwResultReadStrLen, + &new_one->dwResultReadStrOffset, TRUE); + + /* new ResultClause , ResultStr */ + + current_offset = updateField(lpcs->dwPrivateSize, + lpcs->dwPrivateOffset, + current_offset, newdata, olddata, + &new_one->dwPrivateSize, + &new_one->dwPrivateOffset, FALSE); + } + + /* set new data */ + /* ResultClause */ + if (len > 0) + { + new_one->dwResultClauseLen = sizeof(DWORD) * 2; + new_one->dwResultClauseOffset = current_offset; + *(DWORD*)(&newdata[current_offset]) = 0; + current_offset += sizeof(DWORD); + *(DWORD*)(&newdata[current_offset]) = len; + current_offset += sizeof(DWORD); + } + + /* ResultStr */ + new_one->dwResultStrLen = len; + if (len > 0) + { + new_one->dwResultStrOffset = current_offset; + memcpy(&newdata[current_offset],resultstr,len*sizeof(WCHAR)); + } + ImmUnlockIMCC(rc); + if (lpcs) + ImmUnlockIMCC(old); + + return rc; +} + /*********************************************************************** @@ -242,25 +514,25 @@ /* * If already associated just return */ - if (data->hwnd == hWnd) + if (data->IMC.hWnd == hWnd) return hIMC; - if (IsWindow(data->hwnd)) + if (IsWindow(data->IMC.hWnd)) { /* * Post a message that your context is switching */ - SendMessageW(data->hwnd, WM_IME_SETCONTEXT, FALSE, ISC_SHOWUIALL); - } - - data->hwnd = hWnd; - - if (IsWindow(data->hwnd)) + SendMessageW(data->IMC.hWnd, WM_IME_SETCONTEXT, FALSE, ISC_SHOWUIALL); + } + + data->IMC.hWnd = hWnd; + + if (IsWindow(data->IMC.hWnd)) { /* * Post a message that your context is switching */ - SendMessageW(data->hwnd, WM_IME_SETCONTEXT, TRUE, ISC_SHOWUIALL); + SendMessageW(data->IMC.hWnd, WM_IME_SETCONTEXT, TRUE, ISC_SHOWUIALL); } /* @@ -313,8 +585,7 @@ { InputContextData *new_context; - new_context = HeapAlloc(GetProcessHeap(),0,sizeof(InputContextData)); - ZeroMemory(new_context,sizeof(InputContextData)); + new_context = HeapAlloc(GetProcessHeap(),HEAP_ZERO_MEMORY,sizeof(InputContextData)); return (HIMC)new_context; } @@ -330,14 +601,11 @@ if (hIMC) { - if (data->dwCompStringSize) - HeapFree(GetProcessHeap(),0,data->CompositionString); - if (data->dwCompReadStringSize) - HeapFree(GetProcessHeap(),0,data->CompositionReadingString); - if (data->dwResultStringSize) - HeapFree(GetProcessHeap(),0,data->ResultString); - if (data->dwResultReadStringSize) - HeapFree(GetProcessHeap(),0,data->ResultReadingString); + ImmDestroyIMCC(root_context->IMC.hCompStr); + ImmDestroyIMCC(root_context->IMC.hCandInfo); + ImmDestroyIMCC(root_context->IMC.hGuideLine); + ImmDestroyIMCC(root_context->IMC.hPrivate); + ImmDestroyIMCC(root_context->IMC.hMsgBuf); if (data->textfont) { @@ -513,88 +781,99 @@ CHAR *buf; LONG rc = 0; InputContextData *data = (InputContextData*)hIMC; + LPCOMPOSITIONSTRING compstr; + LPBYTE compdata; TRACE("(%p, 0x%x, %p, %d)\n", hIMC, dwIndex, lpBuf, dwBufLen); if (!data) return FALSE; - if (dwIndex == GCS_RESULTSTR) - { - TRACE("GSC_RESULTSTR %p %i\n",data->ResultString, - data->dwResultStringSize); - - buf = HeapAlloc( GetProcessHeap(), 0, data->dwResultStringSize * 3 ); - rc = WideCharToMultiByte(CP_ACP, 0, (LPWSTR)data->ResultString, - data->dwResultStringSize / sizeof(WCHAR), buf, - data->dwResultStringSize * 3, NULL, NULL); + if (!data->IMC.hCompStr) + return FALSE; + + compdata = ImmLockIMCC(data->IMC.hCompStr); + compstr = (LPCOMPOSITIONSTRING)compdata; + + if (dwIndex == GCS_RESULTSTR && compstr->dwResultStrLen > 0 && + compstr->dwResultStrOffset > 0) + { + LPWSTR ResultStr = (LPWSTR)(compdata + compstr->dwResultStrOffset); + + TRACE("GSC_RESULTSTR %p %i\n",ResultStr, + compstr->dwResultStrLen); + + buf = HeapAlloc( GetProcessHeap(), 0, compstr->dwResultStrLen * 3 ); + rc = WideCharToMultiByte(CP_ACP, 0, ResultStr, + compstr->dwResultStrLen , buf, + compstr->dwResultStrLen * 3, NULL, NULL); if (dwBufLen >= rc) memcpy(lpBuf,buf,rc); data->bRead = TRUE; HeapFree( GetProcessHeap(), 0, buf ); } - else if (dwIndex == GCS_COMPSTR) - { - TRACE("GSC_COMPSTR %p %i\n", data->CompositionString, data->dwCompStringLength); - - buf = HeapAlloc( GetProcessHeap(), 0, data->dwCompStringLength * 3 ); - rc = WideCharToMultiByte(CP_ACP, 0,(LPWSTR)data->CompositionString, - data->dwCompStringLength/ sizeof(WCHAR), buf, - data->dwCompStringLength* 3, NULL, NULL); + else if (dwIndex == GCS_COMPSTR && compstr->dwCompStrLen > 0 && + compstr->dwCompStrOffset > 0) + { + LPWSTR CompString = (LPWSTR)(compdata + compstr->dwCompStrOffset); + + TRACE("GSC_COMPSTR %p %i\n", CompString, compstr->dwCompStrLen); + + buf = HeapAlloc( GetProcessHeap(), 0, compstr->dwCompStrLen * 3 ); + rc = WideCharToMultiByte(CP_ACP, 0, CompString, + compstr->dwCompStrLen, buf, + compstr->dwCompStrLen * 3, NULL, NULL); if (dwBufLen >= rc) memcpy(lpBuf,buf,rc); HeapFree( GetProcessHeap(), 0, buf ); } - else if (dwIndex == GCS_COMPATTR) - { - TRACE("GSC_COMPATTR %p %i\n", data->CompositionString, data->dwCompStringLength); - - rc = WideCharToMultiByte(CP_ACP, 0, (LPWSTR)data->CompositionString, - data->dwCompStringLength/ sizeof(WCHAR), NULL, - 0, NULL, NULL); - + else if (dwIndex == GCS_COMPATTR && compstr->dwCompAttrLen > 0 && + compstr->dwCompAttrOffset > 0) + { + LPWSTR Compattr = (LPWSTR)(compdata + compstr->dwCompAttrOffset); + TRACE("GSC_COMPATTR %p %i\n", Compattr , compstr->dwCompAttrLen); + + rc = compstr->dwCompAttrLen; if (dwBufLen >= rc) - { - int i=0; - for (i = 0; i < rc; i++) - ((LPBYTE)lpBuf)[i] = ATTR_INPUT; - } - } - else if (dwIndex == GCS_COMPCLAUSE) - { - TRACE("GSC_COMPCLAUSE %p %i\n", data->CompositionString, data->dwCompStringLength); - - rc = WideCharToMultiByte(CP_ACP, 0, (LPWSTR)data->CompositionString, - data->dwCompStringLength/ sizeof(WCHAR), NULL, - 0, NULL, NULL); - - if (dwBufLen >= sizeof(DWORD)*2) - { - ((LPDWORD)lpBuf)[0] = 0; - ((LPDWORD)lpBuf)[1] = rc; - } - rc = sizeof(DWORD)*2; - } - else if (dwIndex == GCS_RESULTCLAUSE) - { - TRACE("GSC_RESULTCLAUSE %p %i\n", data->ResultString, data->dwResultStringSize); - - rc = WideCharToMultiByte(CP_ACP, 0, (LPWSTR)data->ResultString, - data->dwResultStringSize/ sizeof(WCHAR), NULL, - 0, NULL, NULL); - - if (dwBufLen >= sizeof(DWORD)*2) - { - ((LPDWORD)lpBuf)[0] = 0; - ((LPDWORD)lpBuf)[1] = rc; - } - rc = sizeof(DWORD)*2; + memcpy(lpBuf,Compattr,rc); + } + else if (dwIndex == GCS_COMPCLAUSE && compstr->dwCompClauseLen > 0 && + compstr->dwCompClauseOffset > 0) + { + LPWSTR Compclause = (LPWSTR)(compdata + compstr->dwCompClauseOffset); + TRACE("GSC_COMPCLAUSE %p %i\n", Compclause, compstr->dwCompClauseLen); + + rc = compstr->dwCompClauseLen; + if (dwBufLen >= compstr->dwCompClauseLen) + memcpy(lpBuf,Compclause,rc); + } + else if (dwIndex == GCS_RESULTCLAUSE && compstr->dwResultClauseLen > 0 && + compstr->dwResultClauseOffset > 0) + { + LPWSTR Resultclause = (LPWSTR)(compdata + compstr->dwResultClauseOffset); + TRACE("GSC_RESULTCLAUSE %p %i\n", Resultclause, compstr->dwResultClauseLen); + + rc = compstr->dwResultClauseLen; + if (dwBufLen >= compstr->dwResultClauseLen) + memcpy(lpBuf,Resultclause,rc); + } + else if (dwIndex == GCS_CURSORPOS) + { + TRACE("GSC_CURSORPOS\n"); + rc = compstr->dwCursorPos; + } + else if (dwIndex == GCS_DELTASTART) + { + TRACE("GCS_DELTASTART\n"); + rc = compstr->dwDeltaStart; } else { FIXME("Unhandled index 0x%x\n",dwIndex); } + + ImmUnlockIMCC(data->IMC.hCompStr); return rc; } @@ -608,71 +887,93 @@ { LONG rc = 0; InputContextData *data = (InputContextData*)hIMC; + LPCOMPOSITIONSTRING compstr; + LPBYTE compdata; TRACE("(%p, 0x%x, %p, %d)\n", hIMC, dwIndex, lpBuf, dwBufLen); if (!data) return FALSE; - if (dwIndex == GCS_RESULTSTR) - { + if (!data->IMC.hCompStr) + return FALSE; + + compdata = ImmLockIMCC(data->IMC.hCompStr); + compstr = (LPCOMPOSITIONSTRING)compdata; + + if (dwIndex == GCS_RESULTSTR && compstr->dwResultStrLen > 0 && + compstr->dwResultStrOffset > 0) + { + LPWSTR ResultStr = (LPWSTR)(compdata + compstr->dwResultStrOffset); data->bRead = TRUE; - - if (dwBufLen >= data->dwResultStringSize) - memcpy(lpBuf,data->ResultString,data->dwResultStringSize); - - rc = data->dwResultStringSize; - } - else if (dwIndex == GCS_RESULTREADSTR) - { - if (dwBufLen >= data->dwResultReadStringSize) - memcpy(lpBuf,data->ResultReadingString, - data->dwResultReadStringSize); - - rc = data->dwResultReadStringSize; - } - else if (dwIndex == GCS_COMPSTR) - { - if (dwBufLen >= data->dwCompStringLength) - memcpy(lpBuf,data->CompositionString,data->dwCompStringLength); - - rc = data->dwCompStringLength; - } - else if (dwIndex == GCS_COMPATTR) - { - unsigned int len = data->dwCompStringLength; - - if (dwBufLen >= len) - { - unsigned int i=0; - for (i = 0; i < len; i++) - ((LPBYTE)lpBuf)[i] = ATTR_INPUT; - } - - rc = len; - } - else if (dwIndex == GCS_COMPCLAUSE) - { - if (dwBufLen >= sizeof(DWORD)*2) - { - ((LPDWORD)lpBuf)[0] = 0; - ((LPDWORD)lpBuf)[1] = data->dwCompStringLength/sizeof(WCHAR); - } - rc = sizeof(DWORD)*2; - } - else if (dwIndex == GCS_COMPREADSTR) - { - if (dwBufLen >= data->dwCompReadStringSize) - memcpy(lpBuf,data->CompositionReadingString, - data->dwCompReadStringSize); - - rc = data->dwCompReadStringSize; - } + rc = compstr->dwResultStrLen * sizeof(WCHAR); + + if (dwBufLen >= rc) + memcpy(lpBuf,ResultStr,rc); + } + else if (dwIndex == GCS_RESULTREADSTR && compstr->dwResultReadStrLen > 0 && + compstr->dwResultReadStrOffset > 0) + { + LPWSTR ResultReadString = (LPWSTR)(compdata + compstr->dwResultReadStrOffset); + + rc = compstr->dwResultReadStrLen * sizeof(WCHAR); + if (dwBufLen >= rc) + memcpy(lpBuf,ResultReadString,rc); + } + else if (dwIndex == GCS_COMPSTR && compstr->dwCompStrLen > 0 && + compstr->dwCompStrOffset > 0) + { + LPWSTR CompString = (LPWSTR)(compdata + compstr->dwCompStrOffset); + rc = compstr->dwCompStrLen * sizeof(WCHAR); + if (dwBufLen >= rc) + memcpy(lpBuf,CompString,rc); + } + else if (dwIndex == GCS_COMPATTR && compstr->dwCompAttrLen > 0 && + compstr->dwCompAttrOffset > 0) + { + + LPWSTR Compattr = (LPWSTR)(compdata + compstr->dwCompAttrOffset); + + rc = compstr->dwCompAttrLen; + if (dwBufLen >= rc) + memcpy(lpBuf,Compattr,rc); + } + else if (dwIndex == GCS_COMPCLAUSE && compstr->dwCompClauseLen > 0 && + compstr->dwCompClauseOffset > 0) + { + LPWSTR Compclause = (LPWSTR)(compdata + compstr->dwCompClauseOffset); + + rc = compstr->dwCompClauseLen; + if (dwBufLen >= compstr->dwCompClauseLen) + memcpy(lpBuf,Compclause,rc); + } + else if (dwIndex == GCS_COMPREADSTR && compstr->dwCompReadStrLen > 0 && + compstr->dwCompReadStrOffset > 0) + { + LPWSTR CompReadString = (LPWSTR)(compdata + compstr->dwCompReadStrOffset); + + rc = compstr->dwCompReadStrLen * sizeof(WCHAR); + + if (dwBufLen >= rc) + memcpy(lpBuf,CompReadString,rc); + } + else if (dwIndex == GCS_CURSORPOS) + { + TRACE("GSC_CURSORPOS\n"); + rc = compstr->dwCursorPos; + } + else if (dwIndex == GCS_DELTASTART) + { + TRACE("GCS_DELTASTART\n"); + rc = compstr->dwDeltaStart; + } else { FIXME("Unhandled index 0x%x\n",dwIndex); } + ImmUnlockIMCC(data->IMC.hCompStr); + return rc; } @@ -688,7 +989,7 @@ if (!data) return FALSE; - memcpy(lpCompForm,&(data->CompForm),sizeof(COMPOSITIONFORM)); + memcpy(lpCompForm,&(data->IMC.cfCompForm),sizeof(COMPOSITIONFORM)); return 1; } @@ -703,7 +1004,7 @@ if (!root_context) return NULL; - root_context->hwnd = hWnd; + root_context->IMC.hWnd = hWnd; return (HIMC)root_context; } @@ -876,7 +1177,7 @@ return FALSE; FIXME("(%p): semi-stub\n", hIMC); - return data->bOpen; + return data->IMC.fOpen; } /*********************************************************************** @@ -1022,7 +1323,7 @@ { BOOL rc = FALSE; - TRACE("(%p, %x, %d, %ld)\n", hWndIME, msg, wParam, lParam); + TRACE("(%p, %x, %ld, %ld)\n", hWndIME, msg, wParam, lParam); if ((msg >= WM_IME_STARTCOMPOSITION && msg <= WM_IME_KEYLAST) || (msg >= WM_IME_SETCONTEXT && msg <= WM_IME_KEYUP) || (msg == WM_MSIME_SERVICE) || @@ -1052,7 +1353,7 @@ HWND hWndIME, UINT msg, WPARAM wParam, LPARAM lParam) { BOOL rc = FALSE; - TRACE("(%p, %d, %d, %ld): stub\n", hWndIME, msg, wParam, lParam); + TRACE("(%p, %d, %ld, %ld): stub\n", hWndIME, msg, wParam, lParam); if ((msg >= WM_IME_STARTCOMPOSITION && msg <= WM_IME_KEYLAST) || (msg >= WM_IME_SETCONTEXT && msg <= WM_IME_KEYUP) || (msg == WM_MSIME_SERVICE) || @@ -1093,56 +1394,60 @@ { case CPS_CANCEL: TRACE("%s - %s\n","NI_COMPOSITIONSTR","CPS_CANCEL"); - if (pX11DRV_ForceXIMReset) - pX11DRV_ForceXIMReset(root_context->hwnd); - if (root_context->dwCompStringSize) { - HeapFree(GetProcessHeap(),0, - root_context->CompositionString); - root_context->dwCompStringSize = 0; - root_context->dwCompStringLength = 0; - root_context->CompositionString = NULL; + HIMCC newCompStr; + if (pX11DRV_ForceXIMReset) + pX11DRV_ForceXIMReset(root_context->IMC.hWnd); + + newCompStr = updateCompStr(root_context->IMC.hCompStr, NULL, 0); + ImmDestroyIMCC(root_context->IMC.hCompStr); + root_context->IMC.hCompStr = newCompStr; + ImmInternalPostIMEMessage(WM_IME_COMPOSITION, 0, GCS_COMPSTR); + rc = TRUE; } - rc = TRUE; break; case CPS_COMPLETE: TRACE("%s - %s\n","NI_COMPOSITIONSTR","CPS_COMPLETE"); if (hIMC != (HIMC)FROM_IME && pX11DRV_ForceXIMReset) - pX11DRV_ForceXIMReset(root_context->hwnd); - - if (root_context->dwResultStringSize) + pX11DRV_ForceXIMReset(root_context->IMC.hWnd); { - HeapFree(GetProcessHeap(),0,root_context->ResultString); - root_context->dwResultStringSize = 0; - root_context->ResultString = NULL; - } - if (root_context->dwCompStringLength) - { - root_context->ResultString = HeapAlloc( - GetProcessHeap(), 0, root_context->dwCompStringLength); - root_context->dwResultStringSize = - root_context->dwCompStringLength; - - memcpy(root_context->ResultString, - root_context->CompositionString, - root_context->dwCompStringLength); - - HeapFree(GetProcessHeap(),0, - root_context->CompositionString); - - root_context->dwCompStringSize = 0; - root_context->dwCompStringLength = 0; - root_context->CompositionString = NULL; - root_context->bRead = FALSE; - - ImmInternalPostIMEMessage(WM_IME_COMPOSITION, 0, + HIMCC newCompStr; + DWORD cplen; + LPWSTR cpstr; + LPCOMPOSITIONSTRING cs = NULL; + LPBYTE cdata = NULL; + + /* clear existing result */ + newCompStr = updateResultStr(root_context->IMC.hCompStr, NULL, 0); + ImmDestroyIMCC(root_context->IMC.hCompStr); + root_context->IMC.hCompStr = newCompStr; + + cdata = ImmLockIMCC(root_context->IMC.hCompStr); + cs = (LPCOMPOSITIONSTRING)cdata; + cplen = cs->dwCompStrLen; + cpstr = (LPWSTR)&(cdata[cs->dwCompStrOffset]); + ImmUnlockIMCC(root_context->IMC.hCompStr); + if (cplen > 0) + { + WCHAR param = cpstr[0]; + newCompStr = updateResultStr(root_context->IMC.hCompStr, cpstr, cplen); + ImmDestroyIMCC(root_context->IMC.hCompStr); + root_context->IMC.hCompStr = newCompStr; + newCompStr = updateCompStr(root_context->IMC.hCompStr, NULL, 0); + ImmDestroyIMCC(root_context->IMC.hCompStr); + root_context->IMC.hCompStr = newCompStr; + + root_context->bRead = FALSE; + + ImmInternalPostIMEMessage(WM_IME_COMPOSITION, 0, GCS_COMPSTR); - ImmInternalPostIMEMessage(WM_IME_COMPOSITION, - root_context->ResultString[0], + ImmInternalPostIMEMessage(WM_IME_COMPOSITION, + param, GCS_RESULTSTR|GCS_RESULTCLAUSE); + } ImmInternalPostIMEMessage(WM_IME_ENDCOMPOSITION, 0, 0); root_context->bInComposition = FALSE; @@ -1177,7 +1482,7 @@ default: ERR("Unknown\n"); } - + return rc; } @@ -1239,8 +1544,8 @@ if (!data) return FALSE; - memcpy(&data->font,lplf,sizeof(LOGFONTA)); - MultiByteToWideChar(CP_ACP, 0, lplf->lfFaceName, -1, data->font.lfFaceName, + memcpy(&data->IMC.lfFont.W,lplf,sizeof(LOGFONTA)); + MultiByteToWideChar(CP_ACP, 0, lplf->lfFaceName, -1, data->IMC.lfFont.W.lfFaceName, LF_FACESIZE); ImmInternalSendIMENotify(IMN_SETCOMPOSITIONFONT, 0); @@ -1251,7 +1556,7 @@ data->textfont = NULL; } - data->textfont = CreateFontIndirectW(&data->font); + data->textfont = CreateFontIndirectW(&data->IMC.lfFont.W); return TRUE; } @@ -1266,7 +1571,7 @@ if (!data) return FALSE; - memcpy(&data->font,lplf,sizeof(LOGFONTW)); + memcpy(&data->IMC.lfFont.W,lplf,sizeof(LOGFONTW)); ImmInternalSendIMENotify(IMN_SETCOMPOSITIONFONT, 0); if (data->textfont) @@ -1274,7 +1579,7 @@ DeleteObject(data->textfont); data->textfont = NULL; } - data->textfont = CreateFontIndirectW(&data->font); + data->textfont = CreateFontIndirectW(&data->IMC.lfFont.W); return TRUE; } @@ -1353,35 +1658,33 @@ if (dwIndex == SCS_SETSTR) { - if (!root_context->bInComposition) - { + HIMCC newCompStr; + if (!root_context->bInComposition) + { ImmInternalPostIMEMessage(WM_IME_STARTCOMPOSITION, 0, 0); root_context->bInComposition = TRUE; - } - - flags = GCS_COMPSTR; - - if (root_context->dwCompStringLength) - HeapFree(GetProcessHeap(),0,root_context->CompositionString); - - root_context->dwCompStringLength = dwCompLen; - root_context->dwCompStringSize = dwCompLen; - - if (dwCompLen && lpComp) - { - root_context->CompositionString = HeapAlloc(GetProcessHeap(), 0, - dwCompLen); - memcpy(root_context->CompositionString,lpComp,dwCompLen); + } + + flags = GCS_COMPSTR; + + if (dwCompLen && lpComp) + { + newCompStr = updateCompStr(root_context->IMC.hCompStr, (LPWSTR)lpComp, dwCompLen / sizeof(WCHAR)); + ImmDestroyIMCC(root_context->IMC.hCompStr); + root_context->IMC.hCompStr = newCompStr; wParam = ((const WCHAR*)lpComp)[0]; - flags |= GCS_COMPCLAUSE | GCS_COMPATTR; - } - else - root_context->CompositionString = NULL; - - } - - UpdateDataInDefaultIMEWindow(hwndDefault); + flags |= GCS_COMPCLAUSE | GCS_COMPATTR | GCS_DELTASTART; + } + else + { + newCompStr = updateCompStr(root_context->IMC.hCompStr, NULL, 0); + ImmDestroyIMCC(root_context->IMC.hCompStr); + root_context->IMC.hCompStr = newCompStr; + } + } + + UpdateDataInDefaultIMEWindow(hwndDefault,FALSE); ImmInternalPostIMEMessage(WM_IME_COMPOSITION, wParam, flags); @@ -1405,7 +1708,7 @@ if (!data) return FALSE; - memcpy(&data->CompForm,lpCompForm,sizeof(COMPOSITIONFORM)); + memcpy(&data->IMC.cfCompForm,lpCompForm,sizeof(COMPOSITIONFORM)); if (IsWindowVisible(hwndDefault)) { @@ -1457,7 +1760,7 @@ if (fOpen != data->bInternalState) { if (fOpen == FALSE && pX11DRV_ForceXIMReset) - pX11DRV_ForceXIMReset(data->hwnd); + pX11DRV_ForceXIMReset(data->IMC.hWnd); if (fOpen == FALSE) ImmInternalPostIMEMessage(WM_IME_ENDCOMPOSITION,0,0); @@ -1467,7 +1770,7 @@ ImmInternalSetOpenStatus(fOpen); ImmInternalSetOpenStatus(!fOpen); - if (data->bOpen == FALSE) + if (data->IMC.fOpen == FALSE) ImmInternalPostIMEMessage(WM_IME_ENDCOMPOSITION,0,0); else ImmInternalPostIMEMessage(WM_IME_STARTCOMPOSITION,0,0); @@ -1547,6 +1850,125 @@ return 0; } +/*********************************************************************** +* ImmLockIMC(IMM32.@) +*/ +LPINPUTCONTEXT WINAPI ImmLockIMC(HIMC hIMC) +{ + InputContextData *data = (InputContextData*)hIMC; + + if (!data) + return NULL; + data->dwLock++; + return &data->IMC; +} + +/*********************************************************************** +* ImmUnlockIMC(IMM32.@) +*/ +BOOL WINAPI ImmUnlockIMC(HIMC hIMC) +{ + InputContextData *data = (InputContextData*)hIMC; + data->dwLock--; + return (data->dwLock!=0); +} + +/*********************************************************************** +* ImmGetIMCLockCount(IMM32.@) +*/ +DWORD WINAPI ImmGetIMCLockCount(HIMC hIMC) +{ + InputContextData *data = (InputContextData*)hIMC; + return data->dwLock; +} + +/*********************************************************************** +* ImmCreateIMCC(IMM32.@) +*/ +HIMCC WINAPI ImmCreateIMCC(DWORD size) +{ + IMCCInternal *internal; + int real_size = size + sizeof(IMCCInternal); + + internal = HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, real_size); + if (internal == NULL) + return NULL; + + internal->dwSize = size; + return (HIMCC)internal; +} + +/*********************************************************************** +* ImmDestroyIMCC(IMM32.@) +*/ +HIMCC WINAPI ImmDestroyIMCC(HIMCC block) +{ + HeapFree(GetProcessHeap(),0,block); + return NULL; +} + +/*********************************************************************** +* ImmLockIMCC(IMM32.@) +*/ +LPVOID WINAPI ImmLockIMCC(HIMCC imcc) +{ + IMCCInternal *internal; + internal = (IMCCInternal*) imcc; + + internal->dwLock ++; + return internal + 1; +} + +/*********************************************************************** +* ImmUnlockIMCC(IMM32.@) +*/ +BOOL WINAPI ImmUnlockIMCC(HIMCC imcc) +{ + IMCCInternal *internal; + internal = (IMCCInternal*) imcc; + + internal->dwLock --; + return (internal->dwLock!=0); +} + +/*********************************************************************** +* ImmGetIMCCLockCount(IMM32.@) +*/ +DWORD WINAPI ImmGetIMCCLockCount(HIMCC imcc) +{ + IMCCInternal *internal; + internal = (IMCCInternal*) imcc; + + return internal->dwLock; +} + +/*********************************************************************** +* ImmReSizeIMCC(IMM32.@) +*/ +HIMCC WINAPI ImmReSizeIMCC(HIMCC imcc, DWORD size) +{ + IMCCInternal *internal,*newone; + int real_size = size + sizeof(IMCCInternal); + + internal = (IMCCInternal*) imcc; + + newone = HeapReAlloc(GetProcessHeap(), 0, internal, real_size); + newone->dwSize = size; + + return newone; +} + +/*********************************************************************** +* ImmGetIMCCSize(IMM32.@) +*/ +DWORD WINAPI ImmGetIMCCSize(HIMCC imcc) +{ + IMCCInternal *internal; + internal = (IMCCInternal*) imcc; + + return internal->dwSize; +} + /***** * Internal functions to help with IME window management */ @@ -1555,69 +1977,137 @@ PAINTSTRUCT ps; RECT rect; HDC hdc = BeginPaint(hwnd,&ps); + LPCOMPOSITIONSTRING compstr; + LPBYTE compdata = NULL; + HMONITOR monitor; + MONITORINFO mon_info; + INT offX=0, offY=0; + GetClientRect(hwnd,&rect); FillRect(hdc, &rect, (HBRUSH)(COLOR_WINDOW + 1)); - if (root_context->dwCompStringLength && root_context->CompositionString) + compdata = ImmLockIMCC(root_context->IMC.hCompStr); + compstr = (LPCOMPOSITIONSTRING)compdata; + + if (compstr->dwCompStrLen && compstr->dwCompStrOffset) { SIZE size; POINT pt; HFONT oldfont = NULL; - + LPWSTR CompString; + + CompString = (LPWSTR)(compdata + compstr->dwCompStrOffset); if (root_context->textfont) oldfont = SelectObject(hdc,root_context->textfont); - GetTextExtentPoint32W(hdc, (LPWSTR)root_context->CompositionString, - root_context->dwCompStringLength / sizeof(WCHAR), - &size); + GetTextExtentPoint32W(hdc, CompString, compstr->dwCompStrLen, &size); pt.x = size.cx; pt.y = size.cy; LPtoDP(hdc,&pt,1); - if (root_context->CompForm.dwStyle == CFS_POINT || - root_context->CompForm.dwStyle == CFS_FORCE_POSITION) + /* + * How this works based on tests on windows: + * CFS_POINT: then we start our window at the point and grow it as large + * as it needs to be for the string. + * CFS_RECT: we still use the ptCurrentPos as a starting point and our + * window is only as large as we need for the string, but we do not + * grow such that our window exceeds the given rect. Wrapping if + * needed and possible. If our ptCurrentPos is outside of our rect + * then no window is displayed. + * CFS_FORCE_POSITION: appears to behave just like CFS_POINT + * maybe becase the default MSIME does not do any IME adjusting. + */ + if (root_context->IMC.cfCompForm.dwStyle != CFS_DEFAULT) { - POINT cpt = root_context->CompForm.ptCurrentPos; - ClientToScreen(root_context->hwnd,&cpt); + POINT cpt = root_context->IMC.cfCompForm.ptCurrentPos; + ClientToScreen(root_context->IMC.hWnd,&cpt); rect.left = cpt.x; rect.top = cpt.y; + rect.right = rect.left + pt.x; + rect.bottom = rect.top + pt.y; + offX=offY=10; + monitor = MonitorFromPoint(cpt, MONITOR_DEFAULTTOPRIMARY); + } + else /* CFS_DEFAULT */ + { + /* Windows places the default IME window in the bottom left */ + HWND target = root_context->IMC.hWnd; + if (!target) target = GetFocus(); + + GetWindowRect(target,&rect); + rect.top = rect.bottom; rect.right = rect.left + pt.x + 20; rect.bottom = rect.top + pt.y + 20; + offX=offY=10; + monitor = MonitorFromWindow(target, MONITOR_DEFAULTTOPRIMARY); } - else if (root_context->CompForm.dwStyle == CFS_RECT) + + if (root_context->IMC.cfCompForm.dwStyle == CFS_RECT) { - POINT cpt; - cpt.x = root_context->CompForm.rcArea.left; - cpt.y = root_context->CompForm.rcArea.top; - ClientToScreen(root_context->hwnd,&cpt); - rect.left = cpt.x; - rect.top = cpt.y; - cpt.x = root_context->CompForm.rcArea.right; - cpt.y = root_context->CompForm.rcArea.bottom; - ClientToScreen(root_context->hwnd,&cpt); - rect.right = cpt.x; - rect.bottom = cpt.y; + RECT client; + client =root_context->IMC.cfCompForm.rcArea; + MapWindowPoints( root_context->IMC.hWnd, 0, (POINT *)&client, 2 ); + IntersectRect(&rect,&rect,&client); + /* TODO: Wrap the input if needed */ } - else + + if (root_context->IMC.cfCompForm.dwStyle == CFS_DEFAULT) { - rect.right = rect.left + pt.x + 20; - rect.bottom = rect.top + pt.y + 20; + /* make sure we are on the desktop */ + mon_info.cbSize = sizeof(mon_info); + GetMonitorInfoW(monitor, &mon_info); + + if (rect.bottom > mon_info.rcWork.bottom) + { + int shift = rect.bottom - mon_info.rcWork.bottom; + rect.top -= shift; + rect.bottom -= shift; + } + if (rect.left < 0) + { + rect.right -= rect.left; + rect.left = 0; + } + if (rect.right > mon_info.rcWork.right) + { + int shift = rect.right - mon_info.rcWork.right; + rect.left -= shift; + rect.right -= shift; + } } - MoveWindow(hwnd, rect.left, rect.top, rect.right - rect.left , - rect.bottom - rect.top, FALSE); - TextOutW(hdc, 10,10,(LPWSTR)root_context->CompositionString, - root_context->dwCompStringLength / sizeof(WCHAR)); + + SetWindowPos(hwnd, HWND_TOPMOST, rect.left, rect.top, rect.right - rect.left, rect.bottom - rect.top, SWP_NOACTIVATE); + + TextOutW(hdc, offX,offY, CompString, compstr->dwCompStrLen); if (oldfont) SelectObject(hdc,oldfont); } + + ImmUnlockIMCC(root_context->IMC.hCompStr); + EndPaint(hwnd,&ps); } -static void UpdateDataInDefaultIMEWindow(HWND hwnd) -{ +static void UpdateDataInDefaultIMEWindow(HWND hwnd, BOOL showable) +{ + LPCOMPOSITIONSTRING compstr; + + if (root_context->IMC.hCompStr) + compstr = ImmLockIMCC(root_context->IMC.hCompStr); + else + compstr = NULL; + + if (compstr == NULL || compstr->dwCompStrLen == 0) + ShowWindow(hwndDefault,SW_HIDE); + else if (showable) + ShowWindow(hwndDefault,SW_SHOWNOACTIVATE); + RedrawWindow(hwnd,NULL,NULL,RDW_ERASENOW|RDW_INVALIDATE); + + if (compstr != NULL) + ImmUnlockIMCC(root_context->IMC.hCompStr); } /* @@ -1657,12 +2147,12 @@ if (lParam & GCS_RESULTSTR) IMM_PostResult(root_context); else - UpdateDataInDefaultIMEWindow(hwnd); + UpdateDataInDefaultIMEWindow(hwnd,TRUE); break; case WM_IME_STARTCOMPOSITION: TRACE("IME message %s, 0x%x, 0x%x\n", "WM_IME_STARTCOMPOSITION", (UINT)wParam, (UINT)lParam); - root_context->hwnd = GetFocus(); + root_context->IMC.hWnd = GetFocus(); ShowWindow(hwndDefault,SW_SHOWNOACTIVATE); break; case WM_IME_ENDCOMPOSITION: @@ -1677,7 +2167,7 @@ case WM_IME_CONTROL: TRACE("IME message %s, 0x%x, 0x%x\n","WM_IME_CONTROL", (UINT)wParam, (UINT)lParam); - rc = 1; + rc = 1; break; case WM_IME_NOTIFY: TRACE("!! IME NOTIFY\n"); Modified: trunk/reactos/dll/win32/imm32/imm32.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/imm32/imm32.rbui…
============================================================================== --- trunk/reactos/dll/win32/imm32/imm32.rbuild (original) +++ trunk/reactos/dll/win32/imm32/imm32.rbuild Fri Sep 14 12:03:04 2007 @@ -1,4 +1,4 @@ -<module name="imm32" type="win32dll" baseaddress="${BASEADDRESS_IMM32}" installbase="system32" installname="imm32.dll" allowwarnings="true"> +<module name="imm32" type="win32dll" baseaddress="${BASEADDRESS_IMM32}" installbase="system32" installname="imm32.dll" allowwarnings="true" entrypoint="0"> <importlibrary definition="imm32.spec.def" /> <include base="imm32">.</include> <include base="ReactOS">include/reactos/wine</include> Modified: trunk/reactos/dll/win32/imm32/imm32.spec URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/imm32/imm32.spec…
============================================================================== --- trunk/reactos/dll/win32/imm32/imm32.spec (original) +++ trunk/reactos/dll/win32/imm32/imm32.spec Fri Sep 14 12:03:04 2007 @@ -4,10 +4,10 @@ @ stdcall ImmConfigureIMEA(long long long ptr) @ stdcall ImmConfigureIMEW(long long long ptr) @ stdcall ImmCreateContext() -@ stub ImmCreateIMCC +@ stdcall ImmCreateIMCC(long) @ stub ImmCreateSoftKeyboard @ stdcall ImmDestroyContext(long) -@ stub ImmDestroyIMCC +@ stdcall ImmDestroyIMCC(long) @ stub ImmDestroySoftKeyboard @ stdcall ImmDisableIME(long) @ stub ImmDisableIme @@ -39,9 +39,9 @@ @ stdcall ImmGetGuideLineA(long long ptr long) @ stdcall ImmGetGuideLineW(long long ptr long) @ stub ImmGetHotKey -@ stub ImmGetIMCCLockCount -@ stub ImmGetIMCCSize -@ stub ImmGetIMCLockCount +@ stdcall ImmGetIMCCLockCount(long) +@ stdcall ImmGetIMCCSize(long) +@ stdcall ImmGetIMCLockCount(long) @ stdcall ImmGetIMEFileNameA(long ptr long) @ stdcall ImmGetIMEFileNameW(long ptr long) @ stub ImmGetImeInfoEx @@ -67,14 +67,14 @@ @ stub ImmLoadIME @ stub ImmLoadLayout @ stub ImmLockClientImc -@ stub ImmLockIMC -@ stub ImmLockIMCC +@ stdcall ImmLockIMC(long) +@ stdcall ImmLockIMCC(long) @ stub ImmLockImeDpi @ stdcall ImmNotifyIME(long long long long) @ stub ImmPenAuxInput @ stub ImmProcessKey @ stub ImmPutImeMenuItemsIntoMappedFile -@ stub ImmReSizeIMCC +@ stdcall ImmReSizeIMCC(long long) @ stub ImmRegisterClient @ stdcall ImmRegisterWordA(long str long str) @ stdcall ImmRegisterWordW(long wstr long wstr) @@ -101,8 +101,8 @@ @ stub ImmSystemHandler @ stub ImmTranslateMessage @ stub ImmUnlockClientImc -@ stub ImmUnlockIMC -@ stub ImmUnlockIMCC +@ stdcall ImmUnlockIMC(long) +@ stdcall ImmUnlockIMCC(long) @ stub ImmUnlockImeDpi @ stdcall ImmUnregisterWordA(long str long str) @ stdcall ImmUnregisterWordW(long wstr long wstr)
17 years, 3 months
1
0
0
0
[hpoussin] 29033: Add imm.h header (enough to let Wine imm.dll compile)
by hpoussin@svn.reactos.org
Author: hpoussin Date: Fri Sep 14 12:01:57 2007 New Revision: 29033 URL:
http://svn.reactos.org/svn/reactos?rev=29033&view=rev
Log: Add imm.h header (enough to let Wine imm.dll compile) Added: trunk/reactos/include/ddk/imm.h (with props) Added: trunk/reactos/include/ddk/imm.h URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/include/ddk/imm.h?rev=2903…
============================================================================== --- trunk/reactos/include/ddk/imm.h (added) +++ trunk/reactos/include/ddk/imm.h Fri Sep 14 12:01:57 2007 @@ -1,0 +1,76 @@ +#ifndef __IMM_H +#define __IMM_H + +#if __GNUC__ >=3 +#pragma GCC system_header +#endif + +#ifdef __cplusplus +extern "C" { +#endif + +typedef struct _COMPOSITIONSTRING +{ + DWORD dwSize; + DWORD dwCompReadAttrLen; + DWORD dwCompReadAttrOffset; + DWORD dwCompReadClauseLen; + DWORD dwCompReadClauseOffset; + DWORD dwCompReadStrLen; + DWORD dwCompReadStrOffset; + DWORD dwCompAttrLen; + DWORD dwCompAttrOffset; + DWORD dwCompClauseLen; + DWORD dwCompClauseOffset; + DWORD dwCompStrLen; + DWORD dwCompStrOffset; + DWORD dwCursorPos; + DWORD dwDeltaStart; + DWORD dwResultReadClauseLen; + DWORD dwResultReadClauseOffset; + DWORD dwResultReadStrLen; + DWORD dwResultReadStrOffset; + DWORD dwResultClauseLen; + DWORD dwResultClauseOffset; + DWORD dwResultStrLen; + DWORD dwResultStrOffset; + DWORD dwPrivateSize; + DWORD dwPrivateOffset; +} COMPOSITIONSTRING, *LPCOMPOSITIONSTRING; + +typedef struct _INPUTCONTEXT +{ + HWND hWnd; + BOOL fOpen; + HWND hwndImeInUse; + POINT ptStatusWndPos; + POINT ptSoftKbdPos; + DWORD fdwConversion; + DWORD fdwSentence; + union + { + LOGFONTA A; + LOGFONTW W; + } lfFont; + COMPOSITIONFORM cfCompForm; + CANDIDATEFORM cfCandForm[4]; + HIMCC hCompStr; + HIMCC hCandInfo; + HIMCC hGuideLine; + HIMCC hPrivate; + DWORD dwNumMsgBuf; + HIMCC hMsgBuf; + DWORD fdwInit; + DWORD dwReserve[3] +} INPUTCONTEXT, *PINPUTCONTEXT, *LPINPUTCONTEXT; + +HIMCC WINAPI ImmCreateIMCC(DWORD dwSize); +HIMCC WINAPI ImmDestroyIMCC(HIMCC hIMCC); +LPVOID WINAPI ImmLockIMCC(HIMCC hIMCC); +BOOL WINAPI ImmUnlockIMCC(HIMCC hIMCC); + +#ifdef __cplusplus +} +#endif + +#endif /* __IMM_H */ Propchange: trunk/reactos/include/ddk/imm.h ------------------------------------------------------------------------------ svn:eol-style = native
17 years, 3 months
1
0
0
0
[hpoussin] 29032: Autosyncing with Wine HEAD
by hpoussin@svn.reactos.org
Author: hpoussin Date: Fri Sep 14 11:22:03 2007 New Revision: 29032 URL:
http://svn.reactos.org/svn/reactos?rev=29032&view=rev
Log: Autosyncing with Wine HEAD Modified: trunk/reactos/dll/win32/comctl32/comctl32.h trunk/reactos/dll/win32/comctl32/comctl32.rbuild trunk/reactos/dll/win32/comctl32/comctl32_ros.diff trunk/reactos/dll/win32/comctl32/comctl_Fr.rc trunk/reactos/dll/win32/comctl32/comctl_No.rc trunk/reactos/dll/win32/comctl32/comctl_Pt.rc trunk/reactos/dll/win32/comctl32/comctl_Ru.rc trunk/reactos/dll/win32/comctl32/comctl_Uk.rc trunk/reactos/dll/win32/comctl32/commctrl.c trunk/reactos/dll/win32/comctl32/listview.c trunk/reactos/dll/win32/comctl32/rsrc.rc trunk/reactos/dll/win32/comctl32/tab.c trunk/reactos/dll/win32/comctl32/toolbar.c trunk/reactos/dll/win32/comctl32/tooltips.c trunk/reactos/dll/win32/comctl32/treeview.c Modified: trunk/reactos/dll/win32/comctl32/comctl32.h URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/comctl32/comctl3…
============================================================================== --- trunk/reactos/dll/win32/comctl32/comctl32.h (original) +++ trunk/reactos/dll/win32/comctl32/comctl32.h Fri Sep 14 11:22:03 2007 @@ -153,8 +153,6 @@ BOOL Str_SetPtrWtoA (LPSTR *lppDest, LPCWSTR lpSrc); #define COMCTL32_VERSION_MINOR 81 -#define WINE_FILEVERSION 5, COMCTL32_VERSION_MINOR, 4704, 1100 -#define WINE_FILEVERSIONSTR "5.81" /* Our internal stack structure of the window procedures to subclass */ typedef struct _SUBCLASSPROCS { Modified: trunk/reactos/dll/win32/comctl32/comctl32.rbuild URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/comctl32/comctl3…
============================================================================== --- trunk/reactos/dll/win32/comctl32/comctl32.rbuild (original) +++ trunk/reactos/dll/win32/comctl32/comctl32.rbuild Fri Sep 14 11:22:03 2007 @@ -1,4 +1,4 @@ -<module name="comctl32" type="win32dll" baseaddress="${BASEADDRESS_COMCTL32}" installbase="system32" installname="comctl32.dll" allowwarnings="true"> +<module name="comctl32" type="win32dll" baseaddress="${BASEADDRESS_COMCTL32}" installbase="system32" installname="comctl32.dll" allowwarnings="true" entrypoint="0"> <autoregister infsection="OleControlDlls" type="DllInstall" /> <importlibrary definition="comctl32.spec.def" /> <include base="comctl32">.</include> @@ -9,12 +9,6 @@ <define name="_WIN32_IE">0x600</define> <define name="_WIN32_WINNT">0x501</define> <define name="WINVER">0x501</define> - - <metadata - description = "Common controls used by ReactOS" - version = "Autosync" - owner = "Wine" /> - <library>wine</library> <library>user32</library> <library>gdi32</library> Modified: trunk/reactos/dll/win32/comctl32/comctl32_ros.diff URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/comctl32/comctl3…
============================================================================== --- trunk/reactos/dll/win32/comctl32/comctl32_ros.diff (original) +++ trunk/reactos/dll/win32/comctl32/comctl32_ros.diff Fri Sep 14 11:22:03 2007 @@ -1,3 +1,16 @@ +Index: commctrl.c +=================================================================== +--- commctrl.c (revision 23123) ++++ commctrl.c (working copy) +@@ -1620,7 +1620,7 @@ + * + * Draw text with shadow. + */ ++int WINAPI DrawShadowText(HDC hdc, LPCWSTR pszText, UINT cch, const RECT *rect, DWORD dwFlags, +-int WINAPI DrawShadowText(HDC hdc, LPCWSTR pszText, UINT cch, RECT *rect, DWORD dwFlags, + COLORREF crText, COLORREF crShadow, int ixOffset, int iyOffset) + { + FIXME("(%p, %s, %d, %p, %d, 0x%08x, 0x%08x, %d, %d): stub\n", hdc, debugstr_w(pszText), cch, rect, dwFlags, Index: listview.c =================================================================== --- listview.c (revision 23123) @@ -102,7 +115,7 @@ =================================================================== --- tooltips.c (revision 25790) +++ tooltips.c (working copy) -@@ -2437,7 +2437,34 @@ +@@ -2471,7 +2471,34 @@ TOOLTIPS_NotifyFormat (HWND hwnd, WPARAM wParam, LPARAM lParam) { FIXME ("hwnd=%p wParam=%lx lParam=%lx\n", hwnd, wParam, lParam); @@ -141,7 +154,7 @@ =================================================================== --- treeview.c (revision 27134) +++ treeview.c (working copy) -@@ -2839,8 +2839,6 @@ +@@ -2844,8 +2844,6 @@ } } Modified: trunk/reactos/dll/win32/comctl32/comctl_Fr.rc URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/comctl32/comctl_…
============================================================================== --- trunk/reactos/dll/win32/comctl32/comctl_Fr.rc (original) +++ trunk/reactos/dll/win32/comctl32/comctl_Fr.rc Fri Sep 14 11:22:03 2007 @@ -31,7 +31,7 @@ PUSHBUTTON "Annuler", IDCANCEL,58,122,50,14 PUSHBUTTON "&Appliquer", IDC_APPLY_BUTTON,112,122,50,14,WS_DISABLED PUSHBUTTON "Aide", IDHELP,166,122,50,14,WS_TABSTOP|WS_GROUP - CONTROL "onglet", IDC_TABCONTROL,"SysTabControl32",WS_CLIPSIBLINGS|WS_GROUP|WS_TABSTOP|TCS_MULTILINE,4,4,212,114 + CONTROL "Onglet", IDC_TABCONTROL,"SysTabControl32",WS_CLIPSIBLINGS|WS_GROUP|WS_TABSTOP|TCS_MULTILINE,4,4,212,114 END Modified: trunk/reactos/dll/win32/comctl32/comctl_No.rc URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/comctl32/comctl_…
============================================================================== --- trunk/reactos/dll/win32/comctl32/comctl_No.rc (original) +++ trunk/reactos/dll/win32/comctl32/comctl_No.rc Fri Sep 14 11:22:03 2007 @@ -16,7 +16,7 @@ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA */ -LANGUAGE LANG_NORWEGIAN, SUBLANG_NEUTRAL +LANGUAGE LANG_NORWEGIAN, SUBLANG_NORWEGIAN_BOKMAL IDD_PROPSHEET DIALOG DISCARDABLE 0, 0, 220, 140 STYLE DS_CONTEXTHELP | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE Modified: trunk/reactos/dll/win32/comctl32/comctl_Pt.rc URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/comctl32/comctl_…
============================================================================== --- trunk/reactos/dll/win32/comctl32/comctl_Pt.rc (original) +++ trunk/reactos/dll/win32/comctl32/comctl_Pt.rc Fri Sep 14 11:22:03 2007 @@ -1,6 +1,6 @@ /* * Copyright 2003 Marcelo Duarte - * Copyright 2006 Américo José Melo + * Copyright 2006-2007 Américo José Melo * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -42,7 +42,7 @@ PUSHBUTTON "Cancelar", IDCANCEL,58,122,50,14 PUSHBUTTON "&Aplicar", IDC_APPLY_BUTTON,112,122,50,14,WS_DISABLED PUSHBUTTON "Ajuda", IDHELP,166,122,50,14,WS_TABSTOP|WS_GROUP - CONTROL "Tab", IDC_TABCONTROL,"SysTabControl32",WS_CLIPSIBLINGS|WS_GROUP|WS_TABSTOP|TCS_MULTILINE,4,4,212,114 + CONTROL "Separador", IDC_TABCONTROL,"SysTabControl32",WS_CLIPSIBLINGS|WS_GROUP|WS_TABSTOP|TCS_MULTILINE,4,4,212,114 END Modified: trunk/reactos/dll/win32/comctl32/comctl_Ru.rc URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/comctl32/comctl_…
============================================================================== --- trunk/reactos/dll/win32/comctl32/comctl_Ru.rc (original) +++ trunk/reactos/dll/win32/comctl32/comctl_Ru.rc Fri Sep 14 11:22:03 2007 @@ -22,7 +22,7 @@ IDD_PROPSHEET DIALOG DISCARDABLE 0, 0, 220, 140 STYLE DS_CONTEXTHELP | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE -CAPTION "Ñâîéñòâà: %s" +CAPTION "Ñâîéñòâà äëÿ %s" FONT 8, "MS Shell Dlg" BEGIN DEFPUSHBUTTON "OK", IDOK,4,122,50,14, WS_TABSTOP | WS_GROUP Modified: trunk/reactos/dll/win32/comctl32/comctl_Uk.rc URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/comctl32/comctl_…
============================================================================== --- trunk/reactos/dll/win32/comctl32/comctl_Uk.rc (original) +++ trunk/reactos/dll/win32/comctl32/comctl_Uk.rc Fri Sep 14 11:22:03 2007 @@ -2,7 +2,6 @@ * comctl (Ukrainian resources) * * Copyright 2004 Ilya Korniyko - * 2007 Artem Reznikov * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -27,7 +26,7 @@ FONT 8, "MS Shell Dlg" BEGIN DEFPUSHBUTTON "OK", IDOK,4,122,50,14, WS_TABSTOP | WS_GROUP - PUSHBUTTON "&Ñêàñóâàòè", IDCANCEL,58,122,50,14 + PUSHBUTTON "&³äì³íà", IDCANCEL,58,122,50,14 PUSHBUTTON "&Çàñòîñóâàòè", IDC_APPLY_BUTTON,112,122,50,14,WS_DISABLED PUSHBUTTON "&Äîâ³äêà", IDHELP,166,122,50,14,WS_TABSTOP|WS_GROUP CONTROL "Tab", IDC_TABCONTROL,"SysTabControl32",WS_CLIPSIBLINGS|WS_GROUP|WS_TABSTOP|TCS_MULTILINE,4,4,212,114 @@ -42,7 +41,7 @@ PUSHBUTTON "< &Íàçàä", IDC_BACK_BUTTON,71,138,50,14 DEFPUSHBUTTON "&Äàë³ >", IDC_NEXT_BUTTON,121,138,50,14 DEFPUSHBUTTON "&Çàâåðøèòè", IDC_FINISH_BUTTON,121,138,50,14 - PUSHBUTTON "&Ñêàñóâàòè", IDCANCEL,178,138,50,14 + PUSHBUTTON "&³äì³íà", IDCANCEL,178,138,50,14 PUSHBUTTON "&Äîâ³äêà", IDHELP,235,138,50,14,WS_GROUP LTEXT "", IDC_SUNKEN_LINE,7,129,278,1,SS_SUNKEN CONTROL "Tab", IDC_TABCONTROL,"SysTabControl32",WS_CLIPSIBLINGS | WS_DISABLED,7,7,258,5 Modified: trunk/reactos/dll/win32/comctl32/commctrl.c URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/comctl32/commctr…
============================================================================== --- trunk/reactos/dll/win32/comctl32/commctrl.c (original) +++ trunk/reactos/dll/win32/comctl32/commctrl.c Fri Sep 14 11:22:03 2007 @@ -71,6 +71,58 @@ WINE_DEFAULT_DEBUG_CHANNEL(commctrl); + +#define NAME "microsoft.windows.common-controls" +#define FILE "comctl32.dll" +#define VERSION "6.0.0.0" +#define PUBLIC_KEY "6595b64144ccf1df" + +#ifdef __i386__ +#define ARCH "x86" +#elif defined __x86_64__ +#define ARCH "amd64" +#else +#define ARCH "none" +#endif + +static const char manifest[] = + "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n" + "<assembly xmlns=\"urn:schemas-microsoft-com:asm.v1\" manifestVersion=\"1.0\">\n" + " <assemblyIdentity type=\"win32\" name=\"" NAME "\" version=\"" VERSION "\" processorArchitecture=\"" ARCH "\" publicKeyToken=\"" PUBLIC_KEY "\"/>\n" + " <file name=\"" FILE "\">\n" + " <windowClass>Button</windowClass>\n" + " <windowClass>ButtonListBox</windowClass>\n" + " <windowClass>ComboBoxEx32</windowClass>\n" + " <windowClass>ComboLBox</windowClass>\n" + " <windowClass>Combobox</windowClass>\n" + " <windowClass>Edit</windowClass>\n" + " <windowClass>Listbox</windowClass>\n" + " <windowClass>NativeFontCtl</windowClass>\n" + " <windowClass>ReBarWindow32</windowClass>\n" + " <windowClass>ScrollBar</windowClass>\n" + " <windowClass>Static</windowClass>\n" + " <windowClass>SysAnimate32</windowClass>\n" + " <windowClass>SysDateTimePick32</windowClass>\n" + " <windowClass>SysHeader32</windowClass>\n" + " <windowClass>SysIPAddress32</windowClass>\n" + " <windowClass>SysLink</windowClass>\n" + " <windowClass>SysListView32</windowClass>\n" + " <windowClass>SysMonthCal32</windowClass>\n" + " <windowClass>SysPager</windowClass>\n" + " <windowClass>SysTabControl32</windowClass>\n" + " <windowClass>SysTreeView32</windowClass>\n" + " <windowClass>ToolbarWindow32</windowClass>\n" + " <windowClass>msctls_hotkey32</windowClass>\n" + " <windowClass>msctls_progress32</windowClass>\n" + " <windowClass>msctls_statusbar32</windowClass>\n" + " <windowClass>msctls_trackbar32</windowClass>\n" + " <windowClass>msctls_updown32</windowClass>\n" + " <windowClass>tooltips_class32</windowClass>\n" + " </file>\n" + "</assembly>\n"; + +static const char manifest_filename[] = ARCH "_" NAME "_" PUBLIC_KEY "_" VERSION "_none_deadbeef.manifest"; + LRESULT WINAPI COMCTL32_SubclassProc (HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam); LPWSTR COMCTL32_wSubclass = NULL; @@ -90,6 +142,47 @@ static const WCHAR strCC32SubclassInfo[] = { 'C','C','3','2','S','u','b','c','l','a','s','s','I','n','f','o',0 }; + +static BOOL create_manifest( BOOL install ) +{ + static const WCHAR winsxsW[] = {'\\','w','i','n','s','x','s',0}; + static const WCHAR manifestsW[] = {'\\','m','a','n','i','f','e','s','t','s','\\',0}; + + DWORD len, written; + WCHAR *buffer; + HANDLE file; + BOOL ret = FALSE; + + len = MultiByteToWideChar( CP_UTF8, 0, manifest_filename, sizeof(manifest_filename), NULL, 0 ); + len += GetWindowsDirectoryW( NULL, 0 ); + len += lstrlenW(winsxsW); + len += lstrlenW(manifestsW); + if (!(buffer = HeapAlloc( GetProcessHeap(), 0, len * sizeof(WCHAR) ))) return FALSE; + GetWindowsDirectoryW( buffer, len ); + lstrcatW( buffer, winsxsW ); + CreateDirectoryW( buffer, NULL ); + lstrcatW( buffer, manifestsW ); + CreateDirectoryW( buffer, NULL ); + MultiByteToWideChar( CP_UTF8, 0, manifest_filename, sizeof(manifest_filename), + buffer + lstrlenW(buffer), len ); + if (install) + { + file = CreateFileW( buffer, GENERIC_WRITE, 0, NULL, CREATE_ALWAYS, 0, NULL ); + if (file != INVALID_HANDLE_VALUE) + { + ret = (WriteFile( file, manifest, sizeof(manifest)-1, &written, NULL ) && + written == sizeof(manifest)-1); + CloseHandle( file ); + if (!ret) DeleteFileW( buffer ); + else TRACE("created %s\n", debugstr_w(buffer)); + } + } + else ret = DeleteFileW( buffer ); + + HeapFree( GetProcessHeap(), 0, buffer ); + return ret; +} + /*********************************************************************** * DllMain [Internal] @@ -917,10 +1010,9 @@ */ HRESULT WINAPI DllInstall(BOOL bInstall, LPCWSTR cmdline) { - FIXME("(%s, %s): stub\n", bInstall?"TRUE":"FALSE", - debugstr_w(cmdline)); - - return S_OK; + TRACE("(%u, %s): stub\n", bInstall, debugstr_w(cmdline)); + if (!create_manifest( bInstall )) return HRESULT_FROM_WIN32(GetLastError()); + return S_OK; } /*********************************************************************** @@ -1528,12 +1620,10 @@ * * Draw text with shadow. */ -int WINAPI DrawShadowText(HDC hdc, LPCWSTR pszText, UINT cch, const RECT *pRect, DWORD dwFlags, +int WINAPI DrawShadowText(HDC hdc, LPCWSTR pszText, UINT cch, const RECT *rect, DWORD dwFlags, COLORREF crText, COLORREF crShadow, int ixOffset, int iyOffset) { - RECT rect = *pRect; - - FIXME("(%p, %s, %d, %p, %d, 0x%08x, 0x%08x, %d, %d): stub\n", hdc, debugstr_w(pszText), cch, pRect, dwFlags, + FIXME("(%p, %s, %d, %p, %d, 0x%08x, 0x%08x, %d, %d): stub\n", hdc, debugstr_w(pszText), cch, rect, dwFlags, crText, crShadow, ixOffset, iyOffset); - return DrawTextW(hdc, pszText, cch, &rect, DT_LEFT); -} + return DrawTextW(hdc, pszText, cch, rect, DT_LEFT); +} Modified: trunk/reactos/dll/win32/comctl32/listview.c URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/comctl32/listvie…
============================================================================== --- trunk/reactos/dll/win32/comctl32/listview.c (original) +++ trunk/reactos/dll/win32/comctl32/listview.c Fri Sep 14 11:22:03 2007 @@ -6658,7 +6658,16 @@ ZeroMemory(&hdi, sizeof(HDITEMW)); column_fill_hditem(infoPtr, &hdi, nColumn, lpColumn, isW); - + + /* + * A mask not including LVCF_WIDTH turns into a mask of width, width 10 + * (can be seen in SPY) otherwise column never gets added. + */ + if (!(lpColumn->mask & LVCF_WIDTH)) { + hdi.mask |= HDI_WIDTH; + hdi.cxy = 10; + } + /* * when the iSubItem is available Windows copies it to the header lParam. It seems * to happen only in LVM_INSERTCOLUMN - not in LVM_SETCOLUMN Modified: trunk/reactos/dll/win32/comctl32/rsrc.rc URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/comctl32/rsrc.rc…
============================================================================== --- trunk/reactos/dll/win32/comctl32/rsrc.rc (original) +++ trunk/reactos/dll/win32/comctl32/rsrc.rc Fri Sep 14 11:22:03 2007 @@ -26,6 +26,13 @@ #include "comctl32.h" LANGUAGE LANG_NEUTRAL, SUBLANG_NEUTRAL + +#define WINE_FILEDESCRIPTION_STR "Wine Common Controls" +#define WINE_FILENAME_STR "comctl32.dll" +#define WINE_FILEVERSION COMCTL32_VERSION, COMCTL32_VERSION_MINOR, 4704, 1100 +#define WINE_FILEVERSIONSTR "5.81" +#define WINE_PRODUCTVERSION WINE_FILEVERSION +#define WINE_PRODUCTVERSION_STR WINE_FILEVERSIONSTR #include "wine/wine_common_ver.rc" Modified: trunk/reactos/dll/win32/comctl32/tab.c URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/comctl32/tab.c?r…
============================================================================== --- trunk/reactos/dll/win32/comctl32/tab.c (original) +++ trunk/reactos/dll/win32/comctl32/tab.c Fri Sep 14 11:22:03 2007 @@ -255,6 +255,7 @@ else { if (infoPtr->iSelected != iItem) { infoPtr->iSelected=iItem; + infoPtr->uFocus=iItem; TAB_EnsureSelectionVisible(infoPtr); TAB_InvalidateTabArea(infoPtr); } Modified: trunk/reactos/dll/win32/comctl32/toolbar.c URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/comctl32/toolbar…
============================================================================== --- trunk/reactos/dll/win32/comctl32/toolbar.c (original) +++ trunk/reactos/dll/win32/comctl32/toolbar.c Fri Sep 14 11:22:03 2007 @@ -44,7 +44,7 @@ * - TBN_GETOBJECT * - TBN_SAVE * - Button wrapping (under construction). - * - Fix TB_SETROWS. + * - Fix TB_SETROWS and Separators. * - iListGap custom draw support. * * Testing: @@ -3637,10 +3637,7 @@ { TOOLBAR_INFO *infoPtr = TOOLBAR_GetInfoPtr (hwnd); - if (infoPtr->dwStyle & TBSTYLE_WRAPABLE) - return infoPtr->nRows; - else - return 1; + return infoPtr->nRows; } @@ -4947,19 +4944,106 @@ { TOOLBAR_INFO *infoPtr = TOOLBAR_GetInfoPtr (hwnd); LPRECT lprc = (LPRECT)lParam; + int rows = LOWORD(wParam); + BOOL bLarger = HIWORD(wParam); TRACE("\n"); - if (LOWORD(wParam) > 1) { - FIXME("multiple rows not supported!\n"); - } - - if(infoPtr->nRows != LOWORD(wParam)) - { - infoPtr->nRows = LOWORD(wParam); + TRACE("Setting rows to %d (%d)\n", rows, bLarger); + + if(infoPtr->nRows != rows) + { + TBUTTON_INFO *btnPtr = infoPtr->buttons; + int curColumn = 0; /* Current column */ + int curRow = 0; /* Current row */ + int hidden = 0; /* Number of hidden buttons */ + int seps = 0; /* Number of separators */ + int idealWrap = 0; /* Ideal wrap point */ + int i; + BOOL wrap; + + /* + Calculate new size and wrap points - Under windows, setrows will + change the dimensions if needed to show the number of requested + rows (if CCS_NORESIZE is set), or will take up the whole window + (if no CCS_NORESIZE). + + Basic algorithum - If N buttons, and y rows requested, each row + contains N/y buttons. + + FIXME: Handling of separators not obvious from testing results + FIXME: Take width of window into account? + */ + + /* Loop through the buttons one by one counting key items */ + for (i = 0; i < infoPtr->nNumButtons; i++ ) + { + btnPtr[i].fsState &= ~TBSTATE_WRAP; + if (btnPtr[i].fsState & TBSTATE_HIDDEN) + hidden++; + else if (btnPtr[i].fsStyle & BTNS_SEP) + seps++; + } + + /* FIXME: Separators make this quite complex */ + if (seps) FIXME("Separators unhandled\n"); + + /* Round up so more per line, ie less rows */ + idealWrap = (infoPtr->nNumButtons - hidden + (rows-1)) / rows; + + /* Calculate ideal wrap point if we are allowed to grow, but cannot + achieve the requested number of rows. */ + if (bLarger && idealWrap > 1) + { + int resRows = (infoPtr->nNumButtons + (idealWrap-1)) / idealWrap; + int moreRows = (infoPtr->nNumButtons + (idealWrap-2)) / (idealWrap-1); + + if (resRows < rows && moreRows > rows) + { + idealWrap--; + TRACE("Changing idealWrap due to bLarger (now %d)\n", idealWrap); + } + } + + curColumn = curRow = 0; + wrap = FALSE; + TRACE("Trying to wrap at %d (%d,%d,%d)\n", idealWrap, + infoPtr->nNumButtons, hidden, rows); + + for (i = 0; i < infoPtr->nNumButtons; i++ ) + { + if (btnPtr[i].fsState & TBSTATE_HIDDEN) + continue; + + /* Step on, wrap if necessary or flag next to wrap */ + if (!wrap) { + curColumn++; + } else { + wrap = FALSE; + curColumn = 1; + curRow++; + } + + if (curColumn > (idealWrap-1)) { + wrap = TRUE; + btnPtr[i].fsState |= TBSTATE_WRAP; + } + } + + TRACE("Result - %d rows\n", curRow + 1); /* recalculate toolbar */ TOOLBAR_CalcToolbar (hwnd); + + /* Resize if necessary (Only if NORESIZE is set - odd, but basically + if NORESIZE is NOT set, then the toolbar will always be resized to + take up the whole window. With it set, sizing needs to be manual. */ + if (infoPtr->dwStyle & CCS_NORESIZE) { + SetWindowPos(hwnd, NULL, 0, 0, + infoPtr->rcBound.right - infoPtr->rcBound.left, + infoPtr->rcBound.bottom - infoPtr->rcBound.top, + SWP_NOMOVE); + } /* repaint toolbar */ InvalidateRect(hwnd, NULL, TRUE); Modified: trunk/reactos/dll/win32/comctl32/tooltips.c URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/comctl32/tooltip…
============================================================================== --- trunk/reactos/dll/win32/comctl32/tooltips.c (original) +++ trunk/reactos/dll/win32/comctl32/tooltips.c Fri Sep 14 11:22:03 2007 @@ -314,7 +314,7 @@ ZeroMemory (&ttnmdi, sizeof(NMTTDISPINFOA)); ttnmdi.hdr.hwndFrom = hwnd; ttnmdi.hdr.idFrom = toolPtr->uId; - ttnmdi.hdr.code = TTN_GETDISPINFOA; + ttnmdi.hdr.code = TTN_GETDISPINFOA; /* == TTN_NEEDTEXTA */ ttnmdi.lpszText = (LPSTR)&ttnmdi.szText; ttnmdi.uFlags = toolPtr->uFlags; ttnmdi.lParam = toolPtr->lParam; @@ -332,7 +332,6 @@ } } else if (ttnmdi.lpszText == 0) { - /* no text available */ infoPtr->szTipText[0] = '\0'; } else if (ttnmdi.lpszText != LPSTR_TEXTCALLBACKA) { @@ -347,6 +346,22 @@ ERR("recursive text callback!\n"); infoPtr->szTipText[0] = '\0'; } + + /* no text available - try calling parent instead as per native */ + /* FIXME: Unsure if SETITEM should save the value or not */ + if (infoPtr->szTipText[0] == 0x00) { + + SendMessageW(GetParent(toolPtr->hwnd), WM_NOTIFY, + (WPARAM)toolPtr->uId, (LPARAM)&ttnmdi); + + if (IS_INTRESOURCE(ttnmdi.lpszText)) { + LoadStringW(ttnmdi.hinst, LOWORD(ttnmdi.lpszText), + infoPtr->szTipText, INFOTIPSIZE); + } else if (ttnmdi.lpszText && + ttnmdi.lpszText != LPSTR_TEXTCALLBACKA) { + Str_GetPtrAtoW(ttnmdi.lpszText, infoPtr->szTipText, INFOTIPSIZE); + } + } } static void TOOLTIPS_GetDispInfoW(HWND hwnd, TOOLTIPS_INFO *infoPtr, TTTOOL_INFO *toolPtr) @@ -357,7 +372,7 @@ ZeroMemory (&ttnmdi, sizeof(NMTTDISPINFOW)); ttnmdi.hdr.hwndFrom = hwnd; ttnmdi.hdr.idFrom = toolPtr->uId; - ttnmdi.hdr.code = TTN_GETDISPINFOW; + ttnmdi.hdr.code = TTN_GETDISPINFOW; /* == TTN_NEEDTEXTW */ ttnmdi.lpszText = (LPWSTR)&ttnmdi.szText; ttnmdi.uFlags = toolPtr->uFlags; ttnmdi.lParam = toolPtr->lParam; @@ -375,7 +390,6 @@ } } else if (ttnmdi.lpszText == 0) { - /* no text available */ infoPtr->szTipText[0] = '\0'; } else if (ttnmdi.lpszText != LPSTR_TEXTCALLBACKW) { @@ -390,6 +404,23 @@ ERR("recursive text callback!\n"); infoPtr->szTipText[0] = '\0'; } + + /* no text available - try calling parent instead as per native */ + /* FIXME: Unsure if SETITEM should save the value or not */ + if (infoPtr->szTipText[0] == 0x00) { + + SendMessageW(GetParent(toolPtr->hwnd), WM_NOTIFY, + (WPARAM)toolPtr->uId, (LPARAM)&ttnmdi); + + if (IS_INTRESOURCE(ttnmdi.lpszText)) { + LoadStringW(ttnmdi.hinst, LOWORD(ttnmdi.lpszText), + infoPtr->szTipText, INFOTIPSIZE); + } else if (ttnmdi.lpszText && + ttnmdi.lpszText != LPSTR_TEXTCALLBACKW) { + Str_GetPtrW(ttnmdi.lpszText, infoPtr->szTipText, INFOTIPSIZE); + } + } + } static void @@ -538,15 +569,18 @@ if (style & TTS_BALLOON) { ptfx = rc.left + ((rc.right - rc.left) / 2); - if(rect.top - size.cy >= 0) + + /* CENTERTIP ballon tooltips default to below the field + if they fit on the screen */ + if(rc.bottom + size.cy > GetSystemMetrics(SM_CYSCREEN)) { - rect.top -= size.cy; + rect.top = rc.top - size.cy; infoPtr->bToolBelow = FALSE; } else { infoPtr->bToolBelow = TRUE; - rect.top += 20; + rect.top = rc.bottom; } rect.left = max(0, rect.left - BALLOON_STEMINDENT); } Modified: trunk/reactos/dll/win32/comctl32/treeview.c URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/comctl32/treevie…
============================================================================== --- trunk/reactos/dll/win32/comctl32/treeview.c (original) +++ trunk/reactos/dll/win32/comctl32/treeview.c Fri Sep 14 11:22:03 2007 @@ -946,6 +946,8 @@ for (item = start; item != NULL; item = TREEVIEW_GetNextListItem(infoPtr, item)) { + if (!ISVISIBLE(item) && order > 0) + TREEVIEW_ComputeItemInternalMetrics(infoPtr, item); item->visibleOrder = order; order += item->iIntegral; } @@ -2031,7 +2033,10 @@ lpRect->bottom = wineItem->rect.bottom; lpRect->left = wineItem->textOffset; - lpRect->right = wineItem->textOffset + wineItem->textWidth; + if (!wineItem->textWidth) + TREEVIEW_ComputeTextWidth(infoPtr, wineItem, 0); + + lpRect->right = wineItem->textOffset + wineItem->textWidth + 4; } else {
17 years, 3 months
1
0
0
0
[jimtabor] 29031: It does work. There is another bug in the tree!
by jimtabor@svn.reactos.org
Author: jimtabor Date: Fri Sep 14 10:37:08 2007 New Revision: 29031 URL:
http://svn.reactos.org/svn/reactos?rev=29031&view=rev
Log: It does work. There is another bug in the tree! Modified: trunk/reactos/dll/win32/user32/windows/defwnd.c Modified: trunk/reactos/dll/win32/user32/windows/defwnd.c URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/user32/windows/d…
============================================================================== --- trunk/reactos/dll/win32/user32/windows/defwnd.c (original) +++ trunk/reactos/dll/win32/user32/windows/defwnd.c Fri Sep 14 10:37:08 2007 @@ -1058,7 +1058,8 @@ } case WM_LBUTTONDBLCLK: -// return (DefWndNCLButtonDblClk(hWnd, HTCLIENT, lParam)); + return (DefWndNCLButtonDblClk(hWnd, HTCLIENT, lParam)); + case WM_NCLBUTTONDBLCLK: { return (DefWndNCLButtonDblClk(hWnd, wParam, lParam));
17 years, 3 months
1
0
0
0
[jimtabor] 29030: Need to update or sync with wine.
by jimtabor@svn.reactos.org
Author: jimtabor Date: Fri Sep 14 10:30:26 2007 New Revision: 29030 URL:
http://svn.reactos.org/svn/reactos?rev=29030&view=rev
Log: Need to update or sync with wine. Modified: trunk/reactos/dll/win32/user32/windows/defwnd.c Modified: trunk/reactos/dll/win32/user32/windows/defwnd.c URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/user32/windows/d…
============================================================================== --- trunk/reactos/dll/win32/user32/windows/defwnd.c (original) +++ trunk/reactos/dll/win32/user32/windows/defwnd.c Fri Sep 14 10:30:26 2007 @@ -1058,8 +1058,7 @@ } case WM_LBUTTONDBLCLK: - return (DefWndNCLButtonDblClk(hWnd, HTCLIENT, lParam)); - +// return (DefWndNCLButtonDblClk(hWnd, HTCLIENT, lParam)); case WM_NCLBUTTONDBLCLK: { return (DefWndNCLButtonDblClk(hWnd, wParam, lParam));
17 years, 3 months
1
0
0
0
[jimtabor] 29029: Vitaliy Margolen: Dont exit when double-clicking with right button held.
by jimtabor@svn.reactos.org
Author: jimtabor Date: Fri Sep 14 10:14:50 2007 New Revision: 29029 URL:
http://svn.reactos.org/svn/reactos?rev=29029&view=rev
Log: Vitaliy Margolen: Dont exit when double-clicking with right button held. Modified: trunk/reactos/dll/win32/user32/windows/defwnd.c Modified: trunk/reactos/dll/win32/user32/windows/defwnd.c URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/user32/windows/d…
============================================================================== --- trunk/reactos/dll/win32/user32/windows/defwnd.c (original) +++ trunk/reactos/dll/win32/user32/windows/defwnd.c Fri Sep 14 10:14:50 2007 @@ -1058,6 +1058,8 @@ } case WM_LBUTTONDBLCLK: + return (DefWndNCLButtonDblClk(hWnd, HTCLIENT, lParam)); + case WM_NCLBUTTONDBLCLK: { return (DefWndNCLButtonDblClk(hWnd, wParam, lParam));
17 years, 3 months
1
0
0
0
← Newer
1
...
26
27
28
29
30
31
32
...
59
Older →
Jump to page:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
Results per page:
10
25
50
100
200