Compare commits

...

933 Commits

Author SHA1 Message Date
Colin Finck
caccea0628 Remove all non-working applications from "downloader.xml"
svn path=/branches/ros-branch-0_3_5/; revision=34195
2008-06-29 21:00:42 +00:00
Aleksey Bragin
fc8233b459 - Revert PCNET hack.
- Merge 34154 (a correct fix instead).

svn path=/branches/ros-branch-0_3_5/; revision=34184
2008-06-29 11:34:46 +00:00
Aleksey Bragin
6dfe643467 - Merge 34180 (RTL sprintf/swprintf fix).
svn path=/branches/ros-branch-0_3_5/; revision=34182
2008-06-29 09:46:01 +00:00
Aleksey Bragin
13bc2e01e5 - Merge 34174 (partition table size estimation fix).
svn path=/branches/ros-branch-0_3_5/; revision=34176
2008-06-29 08:37:32 +00:00
Aleksey Bragin
525033afc8 - Merge 34167,34171-34172.
svn path=/branches/ros-branch-0_3_5/; revision=34173
2008-06-29 08:20:08 +00:00
Aleksey Bragin
5323f99a5c - A hack to prevent PCNET+NDIS random bugcheck during startup.
See issue #3355 for more details.

svn path=/branches/ros-branch-0_3_5/; revision=34149
2008-06-28 10:26:07 +00:00
Aleksey Bragin
2958141893 - Merge 34111, 34127 (usermode GDB fixes), 34144 (fixing broken links in downloader).
svn path=/branches/ros-branch-0_3_5/; revision=34146
2008-06-28 08:37:56 +00:00
Aleksey Bragin
cd982f8780 - Remove NLS directory from release, since it's unused.
svn path=/branches/ros-branch-0_3_5/; revision=34143
2008-06-27 21:14:02 +00:00
Colin Finck
c98f2bb9af - Set "lake.bmp" as the default wallpaper
- Add a shortcut to "Download !" to the Desktop
- Change the version number for the Explorer start menu bitmap

svn path=/branches/ros-branch-0_3_5/; revision=34116
2008-06-26 22:11:24 +00:00
Colin Finck
9c439695e9 Hack: Copy the toolbar image on our own instead of using CopyImage to solve the messed up toolbar graphics.
See r31924 for more details

svn path=/branches/ros-branch-0_3_5/; revision=34115
2008-06-26 22:03:33 +00:00
Colin Finck
4611cdd960 Import Ged's mstsc hack from the 0.3.4 branch to solve the HitTest problem.
See r31922 for more details

svn path=/branches/ros-branch-0_3_5/; revision=34114
2008-06-26 22:01:18 +00:00
Colin Finck
0283a040f7 Change the version to 0.3.5
svn path=/branches/ros-branch-0_3_5/; revision=34113
2008-06-26 21:58:36 +00:00
Jeffrey Morlan
ae7e228924 Fix infinite loop in PspDumpThreads
svn path=/trunk/; revision=34108
2008-06-26 16:23:45 +00:00
Marc Piulachs
4865f6c89b Clean up tools folder.
svn path=/trunk/; revision=34107
2008-06-26 16:01:59 +00:00
Marc Piulachs
b2f5b33c7f - remove no longer required bootsect.mak
svn path=/trunk/; revision=34106
2008-06-26 15:58:56 +00:00
Marc Piulachs
9534f47230 -Remove obsolete Makefile. Spotted by Stefan Ginsberg.
svn path=/trunk/; revision=34105
2008-06-26 15:52:22 +00:00
Daniel Reimer
7e7b3c88bb Some more RC File fixes. TBD. Rename Norsk RC Files correctly.
svn path=/trunk/; revision=34103
2008-06-26 14:14:59 +00:00
Daniel Reimer
3b767564ef Some more RC File fixes.
svn path=/trunk/; revision=34102
2008-06-26 14:14:52 +00:00
Daniel Reimer
6c4b4e1148 We do not support any Wine LANG, SUBLANG Inventions. Bye, WALON and ESPERANTO.
svn path=/trunk/; revision=34101
2008-06-26 13:39:39 +00:00
Christoph von Wittich
5616673582 don't free a UNICODE_STRING which isn't allocated
svn path=/trunk/; revision=34099
2008-06-26 12:26:31 +00:00
Christoph von Wittich
4bcfbf7b99 don't free a UNICODE_STRING which isn't allocated
svn path=/trunk/; revision=34098
2008-06-26 12:20:09 +00:00
James Tabor
eec2739a8b Patch by Jeffrey Morlan <mrnobo1024 at yahoo.com>: Rearrange code in NtGdiSelectBitmap to prevent deadlock. See bug 3333.
svn path=/trunk/; revision=34097
2008-06-26 12:05:38 +00:00
Aleksey Bragin
968033dd41 - Rewrite David Welch's Ansi function wrappers to reduce their code size, improve readability, and fix a bug of freeing of a non-allocated string. Spotted by Christoph vW.
svn path=/trunk/; revision=34096
2008-06-26 11:49:47 +00:00
Christoph von Wittich
00334059ac don't free a UNICODE_STRING which isn't allocated
svn path=/trunk/; revision=34095
2008-06-26 11:34:56 +00:00
Christoph von Wittich
d8e81826d2 don't free a UNICODE_STRING which isn't allocated
svn path=/trunk/; revision=34094
2008-06-26 10:22:24 +00:00
Christoph von Wittich
9ff626f764 don't free a UNICODE_STRING which isn't allocated
svn path=/trunk/; revision=34093
2008-06-26 09:35:59 +00:00
Aleksey Bragin
ed1f927907 Jeffrey Morlan <mrnobo1024@yahoo.com>
- Fix a major problem in pushlock implementation: if there are 2 or more
threads waiting for a lock, only one of them ever gets woken. ExfWakePushLock
is missing a break in its loop so it removes all the WaitBlocks instead of just
the last one.
- This fixes all "weird" hangs happening, including FF1.5 installer hang, VMWare Video Driver Installer hang, taskmgr tabs hang, and other similar problems.
See issue #3141 for more details.

svn path=/trunk/; revision=34092
2008-06-26 08:26:48 +00:00
ReactOS Portable Systems Group
2b63244bc8 - Fix several interlocked list functions -- they should return NULL if the list is empty.
- Fix a bug in FreeLDR-ARM, we forgot to set the RegistryLength, resulting in a corrupted registry. We can now load the system registry.
- Enable code to handle DPC, Timer and Deferred Ready cleanup (portable code that's already written).
- Enable code to handle quantum end.
- We now load all the way to IoInitSystem!IopInitializeBootDrivers.


svn path=/trunk/; revision=34091
2008-06-26 06:38:42 +00:00
Daniel Reimer
e84c1a5512 Update xcopy, winhlp32 and wordpad to Wine HEAD. I kept Fireball's changes, but plz send them to Wine, too.
The Lithuan, Ukrainian and Greek Translators of winhlp32 should do the same.

svn path=/trunk/; revision=34090
2008-06-26 06:12:44 +00:00
Daniel Reimer
88c5a596a1 Update write and winfile to wine 1.0
This gives us new Translations for write. (Norway, Netherlands, Russia, Slovak) and a updated Danish one for winfile.

svn path=/trunk/; revision=34089
2008-06-26 06:10:28 +00:00
ReactOS Portable Systems Group
241449fc0e - Save and restore the trap frame for the current thread when we take an interrupt, so that ISRs can read it.
- We use this in the clock ISR, that can now actually send the trap frame to KeUpdateSystemTime.
- Implement KeUpdateRunTime to handle time accounting and DPC rescheduling as well as Quantum End.
- Ignore quantum end for now.
- We now have a working timebase, and we're back to our earlier checkpoint around CmInitSystem1!.


svn path=/trunk/; revision=34088
2008-06-26 05:56:35 +00:00
ReactOS Portable Systems Group
227dc95404 - Fix totally broken KeUpdateSystemRuntime code... please at least read your code once before committing.
svn path=/trunk/; revision=34087
2008-06-26 05:26:10 +00:00
Aleksey Bragin
eed84f7eae - MAKELONG takes (loword, hiword), not (hiword,loword) as was used in wordpad.
svn path=/trunk/; revision=34085
2008-06-25 19:59:10 +00:00
ReactOS Portable Systems Group
d7928010a4 - We now implement the KeUpdateSystemTime routine and the HalpClockInterrupt.
- We do not yet handle all cases, most notably, timer expiration.
- There may still be some bugs to work out in the code, but it's a start.
- This regresses progress, but does not ignore time anymore.

svn path=/trunk/; revision=34084
2008-06-25 16:10:14 +00:00
Marc Piulachs
82cbbc6ac9 - Fix InstallSysSetupComponents: SetupInstallFromInfSection was being called with the wrong HINF handler
- Always check for application existence before creating the shortcut

svn path=/trunk/; revision=34083
2008-06-25 14:21:27 +00:00
Filip Navara
3c6dcb0d0d Change the logic and make the AnswerInPublic Command option opt-out instead of opt-in. Now everything except !help is allowed in public again (due to popular demand).
svn path=/trunk/; revision=34082
2008-06-25 14:13:21 +00:00
Filip Navara
3790fc1254 Fix answers to !winerror <hex number> command and to !error command.
svn path=/trunk/; revision=34081
2008-06-25 14:07:13 +00:00
Marc Piulachs
a46601a21c - miscellaneous small fixes
- add support for preventing all commands to be run on the channel by default. Now TechBot only answers some of the commands in PM
- add back the error Command

svn path=/trunk/; revision=34079
2008-06-25 13:23:59 +00:00
James Tabor
b7525df85d Jeffrey Morlan (mrnobo1024 at yahoo.com) - Fix ModifyWorldTransform multiplies. See bug 3314.
svn path=/trunk/; revision=34078
2008-06-25 11:47:12 +00:00
Colin Finck
93bd1eebe6 Jeffrey Morlan (mrnobo1024@yahoo.com)
- Fix a race condition in msgina, which occasionally led to hangs at "Loading your personal settings"

See issue #3384 for more details.

svn path=/trunk/; revision=34077
2008-06-25 11:12:42 +00:00
Aleksey Bragin
7a18c92616 - Fix broken 0-padding, spotted by Russel.
See issue #3385 for more details.

svn path=/trunk/; revision=34076
2008-06-25 09:07:41 +00:00
ReactOS Portable Systems Group
b5cddb8ef5 - Implement KiComputeTimerTableIndex and stub KeUpdateRunTime und KeUpdateSystemTime.
- Hitting checkpoint in trap.c: DPC/Timer Delivery!
- Must now implement clock interrupt in HAL.

svn path=/trunk/; revision=34075
2008-06-25 05:01:31 +00:00
Dmitry Chapyshev
3d51d8fa8a - Start implementing MediaClassInstaller function
svn path=/trunk/; revision=34074
2008-06-24 15:17:28 +00:00
Colin Finck
b79ef105f1 Get shell32 to compile warning-free
Patch by Stefan Ginsberg with minor modifications by me

svn path=/trunk/; revision=34073
2008-06-24 14:37:50 +00:00
ReactOS Portable Systems Group
aa2b83d508 - Implement MmGetPfnForProcess, MmIsPageSwapEntry.
- Fix a bug in MmDeletePageTable.
- Use MmCreateVirtualMappingForKernel when we are already in the right process context, and allow it to be used for addresses < KSEG0_BASE as well.
- We now have full memory mapped file support, and get all the way to CmInitSystem1.


svn path=/trunk/; revision=34072
2008-06-24 14:16:06 +00:00
Johannes Anderwald
f0d289f527 - fix typo
svn path=/trunk/; revision=34071
2008-06-24 12:57:56 +00:00
Johannes Anderwald
eb0b862540 - check for a valid file descriptor
svn path=/trunk/; revision=34070
2008-06-24 12:42:22 +00:00
Dmitry Chapyshev
4b8a3ba4d6 - Add stubs for more functions
svn path=/trunk/; revision=34069
2008-06-24 12:00:53 +00:00
Dmitry Chapyshev
13ddc0ef07 - Activate default layout on startup
svn path=/trunk/; revision=34068
2008-06-24 09:59:35 +00:00
Daniel Reimer
e8d6023ad5 Add Rbuild files for WineTestGUI.
I had to disable the Icons to be able to build it. They seem to be invalid.

svn path=/trunk/; revision=34067
2008-06-24 09:05:56 +00:00
Dmitry Chapyshev
2bd794488a - Update Russian translation
svn path=/trunk/; revision=34066
2008-06-24 08:10:16 +00:00
James Tabor
3780af2706 Add PS_JOIN_MASK to psdk.
svn path=/trunk/; revision=34065
2008-06-24 03:17:35 +00:00
Aleksey Bragin
97be5703d8 Cameron Gutman <aicommander@gmail.com>
- Initialize LastChanceShutdownList.
- Sndblst.sys and a bunch of other drivers using Io[Un]RegisterLastChanceShutdownNotification work now.
See issue #3331 for more details.

svn path=/trunk/; revision=34064
2008-06-23 21:36:14 +00:00
Aleksey Bragin
0f6b71ad04 Stefan Ginsberg <stefan__100__@hotmail.com>:
- Make user32 and kernel32 compile warning-free.

svn path=/trunk/; revision=34063
2008-06-23 18:57:10 +00:00
James Tabor
f99a2998d3 Fix typo.
svn path=/trunk/; revision=34062
2008-06-23 17:57:41 +00:00
ReactOS Portable Systems Group
a179aed613 - Fix broken system call handler with shitty but works system call handler.
- Fix broken .rbuild file -- not sure how this was supposed to build in the first place.
- This gets us further -- more of ARM Mm needs implementing.


svn path=/trunk/; revision=34061
2008-06-23 16:08:32 +00:00
Aleksey Bragin
bd7a8aac20 - Add a missing return in case of exception. Spotted by Stefan Ginsberg.
svn path=/trunk/; revision=34060
2008-06-23 14:55:55 +00:00
Aleksey Bragin
3a0ed2c825 - Fix CM SEH by public demand.
svn path=/trunk/; revision=34059
2008-06-23 12:45:27 +00:00
Daniel Reimer
832844b9fb Bug 3378: update for slovak by Mario Kacmar (kario@szm.sk)
Bug 3287: My network place properties not displayed correctly by Mario Kacmar (kario@szm.sk)
P.S. The Polish Translation in the previous Commit was made by Maciej Bialas, not Olaf Siejka.

svn path=/trunk/; revision=34058
2008-06-23 10:37:18 +00:00
Daniel Reimer
8ad26a0358 Bug 3367: Korean translation of regedit by Sengju Kim (admin@manateeshome.com)
Polish Translation of usrmgr by Olaf Siejka
Renamed the Rest of the Korean RC Files.

svn path=/trunk/; revision=34057
2008-06-23 09:57:46 +00:00
Daniel Reimer
ec9dd69633 Start to rename all Korean RC Files to "ko-KR.rc". "ko-KO.rc" was not correct.
svn path=/trunk/; revision=34056
2008-06-23 09:42:06 +00:00
ReactOS Portable Systems Group
8df8940a6e - The CRT sync by "fireball" is incorrect and results in a broken ntos kernel. Although it may work on i386 builds, it results in a corrupted kernel anyways. On ARM, we try to hackfix around it by not including some routines that should not be in the kernel but were being imported due to the broken crt changes.
- We do not attemp to build world anymore. We have handwritten a new ARM rbuild file that only builds what we need for our current ARM work.
- HAL and FreeLDR do not seem to have an "installpath"... why not? Added one at least for our ARM stuff, so that "make install" can drop the binaries.
- Fixed some ARM DDK macro inconsistencies, allow more drivers to build.
- It is now possible to use "make install -k" to drop a completely working ARM build onto an image due to all these changes.

svn path=/trunk/; revision=34055
2008-06-23 03:57:50 +00:00
James Tabor
835571354c Update credits.
svn path=/trunk/; revision=34054
2008-06-23 01:09:20 +00:00
Colin Finck
5882bc1cea - Rebuild the left popup menu containing the keyboard layouts on every click to take care of keyboard layout changes.
I know this is probably not the best way for doing the job, but I don't know of any other method to achieve the same.
- Change the right popup menu to only show the "Options" and "Exit" menu items (like ctfmon does)
- Add the missing 'return 0;' statements, when a message was handled

See issue #3372 for more details.

svn path=/trunk/; revision=34053
2008-06-22 21:59:27 +00:00
Colin Finck
f721678f57 Fix the messed up "freeldr_arch" rbuild file: Specify one "freeldr_arch" module and then the files to build based on the architecture, not a separate module per architecture
Patch by Alex

svn path=/trunk/; revision=34052
2008-06-22 21:43:02 +00:00
Colin Finck
955672158d Build host_wcsfuncs as a host static library, not a target static library
Fixes build for all non-Win32 hosts

svn path=/trunk/; revision=34051
2008-06-22 21:41:25 +00:00
Colin Finck
8d9b815544 Add a library "host_wcsfuncs" with implementations for UTF-16 string functions needed for some host tools
Instead of copying those functions into every host tool, which needs it (as we did previously), we can now implement them all in this library and link the host tools to it.
If USE_HOST_WCSFUNCS is not defined, the "wcsfuncs.h" file will define them to the CRT functions (so this library does not create overhead, when the code is built for the target platform)

See issue #3285 for more details.

svn path=/trunk/; revision=34050
2008-06-22 20:58:56 +00:00
Colin Finck
33c4221b1e Add support for a new environment variable ROS_GENERATE_RSYM to disable RSYM during the build
Patch by Alex

svn path=/trunk/; revision=34049
2008-06-22 18:38:12 +00:00
Colin Finck
c251e18523 Move wshtcpip to dll/win32, it's a DLL and not a driver
"Patch" by Alex

svn path=/trunk/; revision=34048
2008-06-22 18:19:19 +00:00
Aleksey Bragin
07a38cedf1 - Extend SEH to cover writing result to output arguments. Noticed by Stefan Ginsberg.
svn path=/trunk/; revision=34047
2008-06-22 16:24:15 +00:00
Aleksey Bragin
e1419be7cd SVN Maintenance: set eol-style:native for lib/sdk/crt.
svn path=/trunk/; revision=34046
2008-06-22 12:08:15 +00:00
Matthias Kupfer
39fd08d7ce - Seungju Kim <admin AT manateeshome DOT com>
- Korean translation of explorer-new added
- See issue #3368 for more details.
- Alexander Wurzinger <<Lohnegrim At gmx DOT net>
- Patch for the "CreateEnergyList failed"-Error added.
- See issue #2469 for more details.

svn path=/trunk/; revision=34045
2008-06-22 10:01:59 +00:00
Ged Murphy
7d842bd859 Don't link to libs we don't need
svn path=/trunk/; revision=34044
2008-06-21 23:27:23 +00:00
Ged Murphy
3c16ea89b9 - Auto expand the list of available tests
- Add the selected test to the main combo
- Tag the dll path to each combo item
- Run the test when the 'run' button is hit. 
We can now run all Wine tests from the GUI, but we get no feedback yet.

svn path=/trunk/; revision=34043
2008-06-21 19:19:22 +00:00
Aleksey Bragin
3ee18cdb67 - Provide a real fix for fwprintf and fputwc in case the output stream is in TEXT mode by doing a widechar to multibyte conversion.
- This should be submitted to Wine to close their bug.
See issue #3353 for more details.

svn path=/trunk/; revision=34042
2008-06-21 15:58:00 +00:00
Pierre Schweitzer
7cf55b1f25 Ext2 and NTFS:
- Remove FCB from the linked list when it's released
NTFS:
- Check we have a FCB before releasing it

svn path=/trunk/; revision=34041
2008-06-21 11:20:48 +00:00
Matthias Kupfer
1334454750 - fix hive for korean keyboard layout
Alexander Wurzinger <Lohnegrim At gmx DOT net>
- Patch to fix the "Pos InitData failed"-Error in power options.
- See issue #2469 for more details.

svn path=/trunk/; revision=34040
2008-06-21 10:08:09 +00:00
Pierre Schweitzer
3d5de429aa Bugfixes:
- Check whether we have a valid VCB before creating FCB
- Initialize FCBs list before using it...

svn path=/trunk/; revision=34039
2008-06-21 10:04:14 +00:00
Aleksey Bragin
cdd5ae5641 - vsn[w]printf -> _vsn[w]printf.
svn path=/trunk/; revision=34038
2008-06-21 10:00:59 +00:00
Aleksey Bragin
a04bcca3a3 Jeffrey Morlan <mrnobo1024@yahoo.com>
- Wrap libwine's memory allocations, avoiding msvcrt imports in kernel32
- The cause is that libwine/debug.c uses functions (malloc, free, realloc, _strdup) which are only present in a complete CRT, creating imports from msvcrt.dll in any module that uses it, including kernel32.dll. Since kernel32 is currently importing from msvcrt, kernel32 gets DLL_PROCESS_DETACHed first, creating a problem for msvcrt's DLL_PROCESS_DETACH which, as a result of a recent bugfix, now uses kernel32 functions that depend on the resources that were freed.
- Fix this by implementing those 4 functions as wrappers around the Local* APIs, in order to avoid the problematic imports.
See issue #3373 for more details.

svn path=/trunk/; revision=34037
2008-06-20 19:00:37 +00:00
Pierre Schweitzer
b22a7f63e8 Miscellaneous NTFS patch:
- Filled FCB structures with more informations
- Added them to linked list
- Set mounted volume to FILE_DEVICE_DISK_FILE_SYSTEM
- Various code cleanup

svn path=/trunk/; revision=34036
2008-06-20 18:40:57 +00:00
Ged Murphy
8683e62101 Don't forget to free the parent nodes
svn path=/trunk/; revision=34035
2008-06-20 11:39:31 +00:00
Ged Murphy
0537163f8d Save the select test info on close.
The browse dialog now lists all winetest dlls and allows selection of either all tests in all dlls, all tests within a dll, or the option to choose individual tests. (rewuires a modified winetest framework)

svn path=/trunk/; revision=34034
2008-06-20 11:20:26 +00:00
Ged Murphy
938f407a80 - build up test data for each node in the treeview and tag it
- traverse the tree recursively and free all data on close

svn path=/trunk/; revision=34033
2008-06-20 08:21:49 +00:00
Colin Finck
25f5cca19d Put a comment and an #if around the lines I changed in my previous commit, because the ##__VA_ARGS__ syntax was only tested with MSVC and GCC
svn path=/trunk/; revision=34032
2008-06-19 22:03:22 +00:00
Colin Finck
460379ac3f Reapply Ged's fix, this time correctly :-)
Thanks to hackbunny for pointing out that ##__VA_ARGS__ will strip the trailing comma and this works on both GCC and MSVC.

svn path=/trunk/; revision=34031
2008-06-19 21:57:32 +00:00
Ged Murphy
d726ab1152 revert the debug macros change, the entire codebase isn't ready for it yet
svn path=/trunk/; revision=34030
2008-06-19 21:40:08 +00:00
Ged Murphy
2db5b6cc04 Only call DbgPrintEx once for each debug macro. This stops trace info from being split over 2 lines in some tools, like DebugView.
svn path=/trunk/; revision=34029
2008-06-19 20:42:57 +00:00
Matthias Kupfer
0632ec63d8 - Template for korean keyboard layout implemented (TODO: kbdko.c needs modifications for korean keyboard layout)
- bootdata, hives and usetup modified for korean keyboard layout
- See issue #3345 for more details.
- Patch from Gabriel Ilardi <gabrielilardi [at] hotmail [dot] it> for timedate settings applied
- See issue #3251 for more details.



svn path=/trunk/; revision=34028
2008-06-19 17:58:43 +00:00
Colin Finck
fa77a22c50 GCC 4.3.x fixes for cabman and sysreg
Also clean up sysreg a bit and put all #include's for standard headers in the .h files. (they were spread around the .cpp and the .h files previously)

See issue #3370 for more details.

svn path=/trunk/; revision=34027
2008-06-19 17:07:38 +00:00
Aleksey Bragin
a00a86834c - Remove all string msvcrt->ntdll forwards: let's be consistent, either forward everything, or forward only something. I left assembly math functions though, since they are standalone and 100% identical.
- As a result, fixed a couple of incorrect functions linkage.
- Fixed a name of vsnprintf, so really msvcrt's version is used now, not RTL's one.

svn path=/trunk/; revision=34026
2008-06-19 13:08:46 +00:00
Aleksey Bragin
b1a06042c9 - Restored ACP/OEMCP/MACCP static entries (removed in 34010) - they are needed for LiveCD boot process.
svn path=/trunk/; revision=34025
2008-06-19 12:11:32 +00:00
Ged Murphy
671448e212 Add all modules within a test to the treeview
svn path=/trunk/; revision=34024
2008-06-19 11:57:14 +00:00
Aleksey Bragin
febcfe8913 - Revert 34010 completely, too much breakages. "Don't fix what's not broken".
svn path=/trunk/; revision=34023
2008-06-19 08:41:31 +00:00
Ged Murphy
b790fafdb2 add all test dlls into the treeview
svn path=/trunk/; revision=34022
2008-06-19 08:36:17 +00:00
Daniel Reimer
ab6d5a14d6 Bug 3362: Italian translation update by Paolo Devoti (devotip@tiscali.it)
svn path=/trunk/; revision=34021
2008-06-19 06:15:59 +00:00
James Tabor
a4a099099f Path does not work and it locks up the system with out any debug information. I will try to have it ready before 0.3.5 is release.
svn path=/trunk/; revision=34020
2008-06-19 01:47:57 +00:00
James Tabor
e402662f7e Set default miter limit.
svn path=/trunk/; revision=34019
2008-06-19 01:29:01 +00:00
Dmitry Chapyshev
2a4eb36d58 - Fix typos
svn path=/trunk/; revision=34018
2008-06-18 19:33:55 +00:00
Matthias Kupfer
2559061aa2 Jeffrey Morlan <mrnobo1024 AT yahoo DOT com>
- Patch for Optimizations of TextIntGetTextExtentPoint
- See issue #3366 for more details.

svn path=/trunk/; revision=34017
2008-06-18 19:15:37 +00:00
Ged Murphy
cda095c0fe The start of a GUI to make running the Wine API tests a pleasure rather than a pain.
This will plug into the new testing framework for the Wine tests, which will also publish it's results on a live website (if I can get Colin to help me with the web stuff ;) )
This is the time to pester me with requests / ideas anyone may have.

svn path=/trunk/; revision=34016
2008-06-18 19:10:39 +00:00
Dmitry Chapyshev
d73e9e4231 - Add rasacd driver (not implemented)
svn path=/trunk/; revision=34015
2008-06-18 19:00:50 +00:00
Dmitry Chapyshev
23b40d082d - Add "Alternate Sorts" keys (used by kernel32)
- Delete static codepages values (they are added in usetup)
- Add keys for powrprof/powercfg

svn path=/trunk/; revision=34014
2008-06-18 18:58:16 +00:00
Aleksey Bragin
297baed6c0 - Add a bit more DPFLTR items.
svn path=/trunk/; revision=34013
2008-06-18 17:56:07 +00:00
Dmitry Chapyshev
e612eaf998 - Small update icon
svn path=/trunk/; revision=34012
2008-06-18 16:48:25 +00:00
Dmitry Chapyshev
4cf0f9906b - Implement ReplaceFileA/W (not fully)
- Implement DnsHostnameToComputerNameA/W (not fully)
- Implement FoldStringA/W
- Implement SetCPGlobal (not tested)
- Implement TzSpecificLocalTimeToSystemTime
- Implement ReadFileScatter
- Implement WriteFileGather
- Other small changes
All based on Wine 1.0 implementation

svn path=/trunk/; revision=34010
2008-06-18 15:37:44 +00:00
Aleksey Bragin
f550691222 - Rename made-up Ob functions names to match publicly available NT names, as most of other Ob names do.
svn path=/trunk/; revision=34009
2008-06-18 12:28:29 +00:00
Aleksey Bragin
ab2b63b87b - More fixes to pushlock implementation:
* In ExTimedWaitForUnblockPushLock, check only for STATUS_SUCCESS (which is the only status return when the wait was satisfied, while other like STATUS_TIMEOUT would still be considered a success).
* In ExBlockPushlock, fix a typo when trying out an interlocked exchange with a new value - wrong value was assigned.
* In ExfAcquirePushLockShared, assign PushLock value passed to this function, not the NewValue, like it's done in ExfAcquirePushLockExclusive.
* In ExfReleaseReleasePushLockExclusive, fix a typo which led to incorrect behavior and not waking up the pushlock when it should be.

svn path=/trunk/; revision=34008
2008-06-18 11:34:10 +00:00
Matthias Kupfer
67572c740e - several german translation fixes
- missing file of issue #3365 added (see rev. 35004)

svn path=/trunk/; revision=34007
2008-06-18 11:19:07 +00:00
Aleksey Bragin
da950aee49 - Wake up a pushlock only if it wasn't waking already, not vice versa (was a typo in ExfAcquirePushLockExclusive, but was done correctly in ExfAcquirePushLockShared).
svn path=/trunk/; revision=34006
2008-06-18 09:53:38 +00:00
Matthias Kupfer
cd5d1959f0 Vytis Girdzijauskas <cman AT cman DOT us>
- Lithuanian translation of explorer-new and shimgvw
- See issue #3365 for more details.


svn path=/trunk/; revision=34005
2008-06-18 09:39:10 +00:00
James Tabor
7f2b7d7436 Implement Get/SetMiterLimit, with proper float containment.
svn path=/trunk/; revision=34004
2008-06-17 20:19:30 +00:00
Dmitry Chapyshev
9e2224d220 - Comment some languages
svn path=/trunk/; revision=34003
2008-06-17 20:11:22 +00:00
Dmitry Chapyshev
10ea44c612 - Add correct scrolling by keypress
svn path=/trunk/; revision=34002
2008-06-17 20:10:07 +00:00
Aleksey Bragin
9e8038303f Mikhail Zvyozdochkink <mzvyozd@narod.ru>
- Limit inputable max partition size to 999999 Mbs.
See issue #3356 for more details.

svn path=/trunk/; revision=34001
2008-06-17 18:42:20 +00:00
Aleksey Bragin
85dbdefb9f Daniel Zimmerman <netzimme@aim.com>
- Cosmetic fix: initialize pushlocks using a special macro, not by assigning 0 to its value.
See issue #3352 for more details.

svn path=/trunk/; revision=34000
2008-06-17 18:21:41 +00:00
James Tabor
9127f8cb64 Fix build
svn path=/trunk/; revision=33999
2008-06-17 05:33:46 +00:00
James Tabor
b5b4c9ab4b Update changes to Clip regions andregions. New support for Rao and Vis.
svn path=/trunk/; revision=33998
2008-06-17 05:19:08 +00:00
James Tabor
9dbc5faab4 Update NtUserSetSysColors.
svn path=/trunk/; revision=33997
2008-06-17 02:42:40 +00:00
Timo Kreuzer
8594831504 IntEngGradientFill: fix cleanup when calling the driver
svn path=/trunk/; revision=33996
2008-06-16 18:56:52 +00:00
Timo Kreuzer
2e105930d6 - print out when process takes too much gdi handles
- GDIOBJ_FreeObjByHandly: unlock handle table entry when object to delete was locked
- REGION_AllocRgnWithHandle: unlock region before trying to delete it on failure
Now gdi32_winetest clipping doesn't freeze ros anymore

svn path=/trunk/; revision=33995
2008-06-16 18:27:18 +00:00
Timo Kreuzer
66397a3a3f - add test for GdiGetCharDimension
- fix a test name
- comment out more tests for EngReleaseSemaphore, they cause heap corruption on ros
- convert more TEST -> RTEST

svn path=/trunk/; revision=33994
2008-06-16 15:24:05 +00:00
Timo Kreuzer
aa36da89c9 TEST -> RTEST as these succeed on ros now
svn path=/trunk/; revision=33993
2008-06-16 13:27:39 +00:00
Timo Kreuzer
e49f53ea51 comment out some tests that fail on win XP, until someone fixes them
svn path=/trunk/; revision=33992
2008-06-16 13:20:06 +00:00
Aleksey Bragin
999e377e55 - Revert .spec -> .def conversion (incorrect one also, which broke rostests compile).
svn path=/trunk/; revision=33991
2008-06-16 12:22:13 +00:00
Aleksey Bragin
89d35e62dd - More NDK fixes.
- Hackmove: Define NTDDI_VERSION in kernel32, otherwise it gets derived from WINVER version (and thus kernel32 becomes Vista). This allows to remove #undef NTDDI_VERSION from ndk/obtypes.h.

svn path=/trunk/; revision=33990
2008-06-16 09:20:47 +00:00
Aleksey Bragin
6c45a42f53 - NDK fixes (structure rename only).
svn path=/trunk/; revision=33989
2008-06-16 08:54:21 +00:00
Dmitry Chapyshev
1a6bae63ba - Small fix DeletePwrScheme
- Implement ReadGlobalPwrPolicy
- Implement ReadPwrScheme
- Implement ValidatePowerPolicies (not fully implemented)

svn path=/trunk/; revision=33988
2008-06-16 08:20:21 +00:00
Dmitry Chapyshev
31619ecee5 - Update information about powrprof
svn path=/trunk/; revision=33987
2008-06-16 06:06:38 +00:00
Dmitry Chapyshev
3b3c516d31 - Fork powrprof.dll
- Replace .spec with .def
- Implement EnumPwrSchemes
- Implement GetActivePwrScheme
- Implement DeletePwrScheme

svn path=/trunk/; revision=33986
2008-06-16 06:00:22 +00:00
Colin Finck
abae3b6913 Use a ClipRegion when collapsing, so that the TreeView works correctly.
This patch has already been submitted to Wine, but as they don't care currently, I applied it manually here and updated "comctl32_ros.diff" accordingly.

Patch by Timo Kreuzer

svn path=/trunk/; revision=33985
2008-06-15 16:05:39 +00:00
Colin Finck
6846255313 Fix yet another invalid use of WriteFile.
This patch has already been submitted to Wine, but as they don't care currently, I applied it manually here and updated "wininet_ros.diff" accordingly.

svn path=/trunk/; revision=33984
2008-06-15 16:04:03 +00:00
Daniel Reimer
5ffe9e945e Bug 3320: Czech translation update by Radek Liska (radekliska@gmail.com)
Small Update for the German USETUP by me.

svn path=/trunk/; revision=33982
2008-06-15 08:14:43 +00:00
ReactOS Portable Systems Group
69bc0881f9 - Continue cleanup, use new peripheral headers (And fix them)
- Fix ARM HAL headers and use them


svn path=/trunk/; revision=33981
2008-06-15 07:54:18 +00:00
ReactOS Portable Systems Group
480243927a - These are peripherals, not targets
svn path=/trunk/; revision=33980
2008-06-15 06:15:13 +00:00
ReactOS Portable Systems Group
b300ac4364 - Start major ARM port cleanup:
- Make use of the SARCH rbuild parameter to define the target board (default to ARM VersatilePB for now)
  - Make official ARM include directory (include/reactos/arm) and move the ARM DDK there
  - Start creating header files for different target board components.
- Update halfuncs in NDK with one missing function, and temporarily, one ARM function.

svn path=/trunk/; revision=33979
2008-06-15 06:14:02 +00:00
Dmitry Chapyshev
a52eaf94d5 - Update Russian translation
svn path=/trunk/; revision=33978
2008-06-15 06:01:53 +00:00
ReactOS Portable Systems Group
def9fa66b4 - Create cmhardwr.c for ARM, stub it out.
- Implement KiInitMachineDependent -- this is only useful for x86 and has nothing relevant to ARM, so we just return.
- Implement HalAllProcessorsStarted (again, a no-op) and HalQueryRealTimeClock (uses the RTC on the board -- uboot must set it up first).
- Make sure we get the right Sp during a system call (this is still broken though).
- We need to fix our system call handler next.


svn path=/trunk/; revision=33977
2008-06-15 05:40:27 +00:00
ReactOS Portable Systems Group
531a8ad588 - Copy/pasted a bunch of code from the i386 bootvid for text output.
- Don't implement BitBlt for now.
- Add the bootdata font file to the arm bootvid as well.
- Not sure how it's possible, but we are seeing text output on the console with this hacked-up code! The ReactOS version string appears...
- We are now getting much further in the boot cycle.


svn path=/trunk/; revision=33976
2008-06-15 04:43:22 +00:00
ReactOS Portable Systems Group
133e63adea - Implement VidSolidColorFill, VidSetScrollRegion and VidSetTextColor
- Fix a bug in VidpBuildColor


svn path=/trunk/; revision=33975
2008-06-15 04:11:21 +00:00
ReactOS Portable Systems Group
bfd0d8594d - Fix a bug in MmGetPhysicalAddress.
- Don't hang in the clock interrupt anymore, for now we'll just ignore it (but it works! :D)
- Make all unimplemented bootvid functions hang the system, so we can better stop at progress-points.
- Implement VidInitialize:
  - We allocate a 640x480@16bpp framebuffer using contiguous physical memory (our MMU code survives!).
  - We setup the LCD controller timings and framebuffer address.
  - We enable the LCD
- For debugging, we're also drawing a nice little test pattern... and it works! We have GUI Code :)


svn path=/trunk/; revision=33974
2008-06-15 03:32:52 +00:00
ReactOS Portable Systems Group
0ea44bde8f - Separate bootvid into bootvid/i386 and bootvid/arm (no code change to i386 version).
- Stub out all the bootvid functions for ARM, and add an infinite loop so we stop there.
- Remove the infinite loop from the HAL -- Hal Initialization is complete.
- We must now implement the LCD graphics functions.


svn path=/trunk/; revision=33973
2008-06-14 23:43:45 +00:00
Timo Kreuzer
86909f313f revert r26384 - this is an old hack to make console output work. We don't need this any longer since freetype / text output is fixed.
svn path=/trunk/; revision=33972
2008-06-14 23:20:22 +00:00
ReactOS Portable Systems Group
35656fd354 - Dude, we don't need to calibrate anything... we've got a 1MHz timer, which means 1us-precision. KeStallExecutionProcessor needs 1us-precision!
- Since we have two timers (ha x86!!!), set the second one as the stall timer. It's a one-shot periodic timer, set to the exact number of microseconds being waited on.
- To fully emulate stalling, we don't use a clock interrupt for it (it supports not sending one!) and just busy-loop until the value reaches 0.
- Tried it with a 10 second (10000000 us) wait and it worked -perfectly-.
- Re-implemented KeStallExecutionProcessor and got rid of the other code. Back in HalInitSystem(phase1) now...
- Also killed some DPRINT1s getting on my nerves.


svn path=/trunk/; revision=33971
2008-06-14 23:19:03 +00:00
ReactOS Portable Systems Group
fe22db7c05 - We now implement the idle loop (thanks for fixing the interrupt code...).
- We are now back to HalInitSystem just like before the previous fixes.
- Now we'll implement stall calibration and switch to the clock interrupt.


svn path=/trunk/; revision=33970
2008-06-14 22:48:30 +00:00
ReactOS Portable Systems Group
949bda1cee - Implement the basic stall interrupt to be used to calculate the factors for KeStallExecution (using NT MIPS algorithm, hope this will work)
- Also written KeStallExecution.
- Now, we are back to where we hang before Phase 1 (so Phase 1 doesn't occur anymore).
- This hang is because we used to do a DPC here, which isn't good, since IRQL is already at dispatch.
- Instead, the correct course of action is to enter the idle loop, which will schedule the phase 1 thread.
- But, we don't have an idle loop yet ;-)


svn path=/trunk/; revision=33969
2008-06-14 22:28:40 +00:00
Matthias Kupfer
8b9fa093a3 - Give listbox in explorer searchprograms dialog i18n column heads (only done for German and English, other language need to be done)
svn path=/trunk/; revision=33968
2008-06-14 22:21:44 +00:00
ReactOS Portable Systems Group
e66a86c8b9 - Fix stupid IRQL/Interrupt handling code that someone wrote ;):
- Get rid of KeSwapIrql -- both lower and higher IRQL handling was treated the same!
  - We can now re-activate the assert in the IRQL code
  - Disable interrupts before changing the interrupt mask!!!
  - And re-enable them solely if they were enabled.
  - Clear interrupts mask before setting a new one -- raising isn't always additive!
  - Fix KiInterruptHandler to perform operations in the right order.
  - Finish implementing interrupt exit code.
- Code KeArmStatusRegisterGet to read CPSR and interrupt status.
- Make debug prints a lot more readable and dont trying to acquire the stack during pool allocations.
- Setup the clock interval timer!!!
- This code regresses progress but makes stuf fwork right. We'll get better after implementing the stall interrupt.


svn path=/trunk/; revision=33967
2008-06-14 22:02:50 +00:00
Colin Finck
ff164b383d - Implement the code for the "Run" and "Shutdown" menu items, create stubs for the other custom commands
- Replace the ROS-specific STDCALL by APIENTRY for the function prototypes

svn path=/trunk/; revision=33966
2008-06-14 21:18:08 +00:00
James Tabor
e264b0b3c9 Patch by carlo bramix at libero dot it: Bug 3336 statusbar in the wrong place.
svn path=/trunk/; revision=33965
2008-06-14 17:10:55 +00:00
Matthias Kupfer
11e8d42306 Vytis Girdzijauskas <cman AT cman DOT us>
- time zone update to sync with Windows tz data
- See issue #3084 for more details.

svn path=/trunk/; revision=33964
2008-06-14 11:49:55 +00:00
Matthias Kupfer
9439a307c3 niski_ (bjauy AT go2 DOT pl)
- polish language patch for shell32.
- See issue #3338 for more details.

svn path=/trunk/; revision=33963
2008-06-14 10:23:05 +00:00
Matthias Kupfer
15ce5e598a fix/add some german translations
svn path=/trunk/; revision=33962
2008-06-14 08:51:42 +00:00
Aleksey Bragin
17f5df55c4 - Release the acquired spinlock in IoUnregisterShutdownNotification(), spotted by Cameron Gutman.
svn path=/trunk/; revision=33961
2008-06-14 08:16:22 +00:00
James Tabor
ddd1764f85 Patch by Jeffrey Morlan (mrnobo1024 at yahoo dot com, irc: Goplat), Registers ansi scroll bar proc.
svn path=/trunk/; revision=33960
2008-06-14 05:34:02 +00:00
Colin Finck
427bda68a5 Don't use MenuCleanupRosMenuItemInfo for an array of Items allocated on the heap!
This function is meant to be used for a single menu item info and just frees the memory allocated for dwTypeInfo.

Replaced this with a simple HeapFree call to free the memory for the whole array allocated in MenuGetAllRosMenuItemInfo.
Fixes a heap corruption discovered by encoded.

See issue #3349 for more details.

svn path=/trunk/; revision=33959
2008-06-14 00:00:20 +00:00
Colin Finck
aa42a19f40 Revert parts of r33578:
- First of all, MenuSetItemData is only called from InsertMenuA/W and ModifyMenuA/W.
  Therefore the passed MENUITEMINFO structure will always be empty, so it makes no sense to check for flags in this structure.
  This way, I could simplify the code block for MF_BITMAP.
- Also fType = MFT_BITMAP and fMask = MIIM_BITMAP at the same time passed to win32k don't work.
  Changing this back to only set fMask fixes bitmap menus.
- Furthermore the data for MF_OWNERDRAW is really stored in dwItemData and not in dwTypeData.
  The MSDN documentation for InsertMenu applies here, not the one for the MENUITEMINFO structure.
  This fixes owner-drawn menus like the one in Abiword.

See issue #3272 for more details.

svn path=/trunk/; revision=33958
2008-06-13 23:14:27 +00:00
Matthias Kupfer
7a0f6cc635 - german translation of explorer completed
- minor fix for label text size in german version of desk.cpl

svn path=/trunk/; revision=33957
2008-06-13 20:33:42 +00:00
James Tabor
f7a11147ec Add notes, no code change.
svn path=/trunk/; revision=33956
2008-06-13 18:19:28 +00:00
Timo Kreuzer
86853e2cea MSDB KB 145994 (http://support.microsoft.com/?scid=kb%3Ben-us%3B145994): yBaseUnit is textmetric->tmHeight not average text extent. Testing confirms that GdiGetCharDimension returns this as height. This makes dialog boxes less stretched in height. Still not identical to XP. calx.exe: On XP yBaseUnit == 13, on ROS == 14 (was 16 before)
svn path=/trunk/; revision=33955
2008-06-13 13:33:53 +00:00
Thomas Bluemel
451c7e1c69 Revert 33953. This is completely wrong! WINE doesn't quite get the ordinals right. Ordinal 200 really should be SHCreateDesktop and ordinal 201 really should be SHDesktopMessageLoop. I am currently working on a patch for this. The fact that explorer-new was able to start with these changes is just pure coincidence.
svn path=/trunk/; revision=33954
2008-06-13 13:14:08 +00:00
Dmitry Chapyshev
756f63990f - Implement AddCommasW
- Implement SHLocalAlloc
- Implement SHLocalFree
- Implement SHLocalReAlloc
explorer-new starts in reactos now!

svn path=/trunk/; revision=33953
2008-06-13 07:58:34 +00:00
Thomas Bluemel
a21b191fdf Add missing definitions
svn path=/trunk/; revision=33952
2008-06-12 23:38:09 +00:00
Timo Kreuzer
ee9c5d0a88 Patch by Jeffrey Morlan (mrnobo1024 at yahoo dot com, irc: Goplat), modified by me:
The freetype asm function FT_MulFix clobbers the edx register, but doesn't tell it to gcc explicitly, so when inlined versions were resulting in wrong results. Fix it by also marking edx as output register.
Also enable commented out code in win32k again that works correctly now.
By me:
I modified the patch to not alter any 3rd party code, but instead I copied the fuction to _ftmulfix_ros.c and also coplied the container file ftbase.c which now uses the fixed function from our private file.
This fixes a bunch of text output issues (underscore, text marking)
See issue #3346 for more details.

svn path=/trunk/; revision=33951
2008-06-12 20:50:12 +00:00
Thomas Bluemel
cdbc0773a5 Lookup DrawCaptionTemp () only once during startup
svn path=/trunk/; revision=33950
2008-06-12 16:50:57 +00:00
Thomas Bluemel
5d074bd015 Fix call to DrawCaptionTemp ()
svn path=/trunk/; revision=33949
2008-06-12 15:45:09 +00:00
Aleksey Bragin
cb467b55e9 - Fix a bug in timedate.cpl, where an incorrect color was passed.
- Add bounds checking for GetSystemMetrics both in user32 and in kernel counterpart.
- Based on a patch from bug 3316.
See issue #3316 for more details.

svn path=/trunk/; revision=33947
2008-06-12 09:50:12 +00:00
Aleksey Bragin
57da8d9f18 - Formatting cleanup for the previously patched functions.
svn path=/trunk/; revision=33946
2008-06-12 09:40:33 +00:00
Aleksey Bragin
3da8a2640d Oriol Pique <oripipa@yahoo.es>
- Minor patch to HEAP_GetPtr to include magic value in debug output.
- Fixing the parameters checking in HEAP_InitSubHeap (it is currently not used - put between #if 0 / #endif ).
- Correcting HEAP_FindFreeBlock which was logging error message as warning (while still returning NULL to caller) by changing severity of logged message.
- Implementing RtlEnumProcessHeaps (previously stubbed out).
- Fixing sanity checks in and implementation of RtlGetProcessHeaps (previously
the function was not checking for the counter value, and also was not assigning anything to the returned value; now this seems to be corrected.
- Fixing RtlValidateProcessHeaps implementation (the function was stubbed out because (most probably, I wasn't able to find a bug mentioning this) it was previously using a global lock for all heaps (which probably could cause some problems in the kernel), now it only locks heaps belonging to the given process - and this is the correct behaviour.

Aleksey Bragin <aleksey@reactos.org>
- Fix typo in ntuser.c, and low severity of debug message.
See issue #2964 for more details.

svn path=/trunk/; revision=33945
2008-06-12 09:35:24 +00:00
Aleksey Bragin
fd13a6484a - Fix two bugs in MiDoMappedCopy: MI_MAPPED_PAGES is pages, not bytes; and a misuse of TotalSize / BufferSize.
- Fix similar mistake in MiDoPoolCopy.
- Patch from bug 3341.
See issue #3341 for more details.

svn path=/trunk/; revision=33944
2008-06-12 09:18:11 +00:00
Aleksey Bragin
b21dc84f01 - Prevent a misunderstanding: kdHandleException means the debugger did NOT handle the exception. Fix the logic, and thus fix vectored exception handling which led to 2nd stage hang in qemu.
- TODO: This ContinueType thing should be reworked into a better logic.
See issue #3344 for more details.

svn path=/trunk/; revision=33943
2008-06-12 08:56:13 +00:00
Daniel Reimer
31bec7ebbf Updated Wordpad, XCopy, WInhlp32 to WIne 1.0rc4
I skipped Collibri's Typo-Fix in the German Wordpad RC File. Collibri, plz send this to Wine.

svn path=/trunk/; revision=33942
2008-06-12 06:23:44 +00:00
Daniel Reimer
6a6c9c1c6c Updated Winefile to Wine 1.0rc4.
Renamed it to Winfile, because this is the name it has under windows.

svn path=/trunk/; revision=33941
2008-06-12 06:22:23 +00:00
ReactOS Portable Systems Group
bf502620c3 - We now implement more proper context switching.
- This fixes an issue where code was using PCR->CurrentThread but x86/shared routines use PRCB->CurrentThread.
- Added a note to explain the difference, and we now set both.
- We currently stop at Phase 1 HAL Initialization.

svn path=/trunk/; revision=33940
2008-06-12 04:32:45 +00:00
Thomas Bluemel
20ebf8a9c5 Use band styles provided by the IDeskBand interface
svn path=/trunk/; revision=33939
2008-06-12 03:12:02 +00:00
Thomas Bluemel
1777cc3a03 More IBandSite support code
svn path=/trunk/; revision=33938
2008-06-12 01:14:18 +00:00
ReactOS Portable Systems Group
0bcdd3cdcc - We now implement a super-basic (and probably broken) context switching mechanism.
- We completely ignore setting the thread to the right scheduler state, and don't do any APC delivery checking, or any other work.
- We now implement a basic KiThreadStartup, which behaves properly (we believe). Doesn't handle user-mode threads yet, though.
- This gets us through PspSystemThreadStartup, and..
- We now reach Phase1InitializationDiscard! A major step has been reached, now it's time to cleanup what has been done until now and verify it to be correct.
- Then we move on... the next two things will be 1) Hal Initialization (setting up the timer) and 2) Displaying the boot logo.
- Graphics will require using the PL-110 LCD Controller.

svn path=/trunk/; revision=33937
2008-06-12 00:40:53 +00:00
ReactOS Portable Systems Group
c84fd405bf - We now implement a skeleton framework for context switching
- The only things we do are swap the stack and then display the old/new thread/stack.
- More work to be done to actually save the non-volatiles, prepare the thread state, and restore the volatiles for the new thread.
- Then we will return to the saved return address, and we should be in Phase 1 with working thread switching/scheduling.

svn path=/trunk/; revision=33935
2008-06-11 19:13:25 +00:00
ReactOS Portable Systems Group
0eec889557 - We now make appropriate space on the stack to save the old IRQL in the trap frame.
- Save the old IRQL and assert it in the interrupt handler.
- Fix KTRAP_FRAME structure.


svn path=/trunk/; revision=33934
2008-06-11 18:39:44 +00:00
ReactOS Portable Systems Group
e6d9765059 - Fix build on ARM:
- _iob is already defined as a dll_import
  - _rotl intrinsic is now implemented (should use rol instruction, but not sure on the syntax!)
  - Add a stub psctx.h for ARM
  - Added InterlockedEXchangePointers
  - Fix uninitialized variable warning in ex/resource.c
- Start to implement interrupt handling:
  - We now have a rudimentary interrupt handler that takes care of software interrupts
  - We now have a rudimentary DPC handler which takes care of switching to the next thread, if any
  - We now setup the HAL Interrupt Source -> IRQL Table (The IRQLMask Table).
  - Implemented HalGetInterruptSource, which allows us to get the interrupt # that cause the IRQ.
    Note: this wasn't needed on Alpha/PPC/MIPS NT ports, because that information is stored on the CPU,
    and the kernel could read it -- we must abstract it through the HAL.
  - Add the OldIrql to the TRAP_FRAME, we don't use it yet.
- We are now ready to context switch to the Phase 1 thread.

svn path=/trunk/; revision=33933
2008-06-11 16:48:07 +00:00
Matthias Kupfer
1f2f57762a - minor fix of german wordpad menu entry
- german translation of dialog resource of keyboard layout switcher completed including start menu entry

svn path=/trunk/; revision=33932
2008-06-11 12:31:23 +00:00
Aleksey Bragin
f80fd06171 - Fix build.
svn path=/trunk/; revision=33931
2008-06-11 12:00:09 +00:00
Aleksey Bragin
7d5306e11b - Fix typos in NDK structures.
svn path=/trunk/; revision=33930
2008-06-11 11:48:59 +00:00
Aleksey Bragin
87f175a68a - Unregress KDBG: It has to increment EIP in case of STATUS_BREAKPOINT to skip over the current instruction, but now do it inside KDBG's exception handler.
- In Kd and GDB exception handler wrappers, return FALSE if kdDoNotHandleException, and return TRUE otherwise (kdHandled / kdContinue). After my previous commit these functions were always returning FALSE / exception not handled.

svn path=/trunk/; revision=33929
2008-06-11 11:34:04 +00:00
Aleksey Bragin
8a2b9285a7 - Revert 33689 as breaking mIRC installation.
See issue #3328 for more details.

svn path=/trunk/; revision=33928
2008-06-11 09:05:39 +00:00
Aleksey Bragin
7b57917c46 - Completely rewrite most of stdio functions by merging Wine's msvcrt code adapted for ReactOS.
- Leave and refactor existing underlying linux-code based sprintf implementation into lnx_ prefixed functions.
- Misc source code and headers cleanup.
- Fixes bugs 2910, 2803.
See issue #2803 for more details.

svn path=/trunk/; revision=33927
2008-06-11 08:54:46 +00:00
James Tabor
553e9f4821 Fix warnings.
svn path=/trunk/; revision=33926
2008-06-11 04:45:42 +00:00
Thomas Bluemel
ab5a70b128 More IDeskBar support
svn path=/trunk/; revision=33925
2008-06-11 03:52:45 +00:00
Thomas Bluemel
4a314da798 Improve IBandSite support a bit
svn path=/trunk/; revision=33924
2008-06-11 03:37:56 +00:00
Thomas Bluemel
46ccbc43af Fix a small bug
svn path=/trunk/; revision=33923
2008-06-11 03:36:21 +00:00
James Tabor
93c1e5a013 Retool SetSysColors and use SEH.
svn path=/trunk/; revision=33922
2008-06-10 21:57:16 +00:00
Eric Kohl
78c0b7a1df Enable the user to modify the profile information of a user account.
svn path=/trunk/; revision=33921
2008-06-10 21:56:19 +00:00
James Tabor
07bd1ef0d2 Use server information for GetSystemMetrics.
svn path=/trunk/; revision=33920
2008-06-10 21:09:31 +00:00
Colin Finck
e851af141d Matthias Kupfer (matthias DOT kupfer AT informatik DOT tu-chemnitz DOT de)
- Give the Run Dialog resources a default title (only done in German and English resources so far, others still need to be done)
- Add support for passing no title to RunFileDlg, so that it uses the default title
- Pass no hardcoded english title in Explorer and Task-Manager.
  I slightly modified the patch to also remove the other hardcoded text passed in Explorer.

See issue #3340 for more details.

svn path=/trunk/; revision=33919
2008-06-10 19:19:59 +00:00
James Tabor
baa980036b Fix build, add float to long union for dword transfer.
svn path=/trunk/; revision=33918
2008-06-10 05:48:18 +00:00
James Tabor
f79680eb17 Move NtGdiAngleArc to arc.c.
svn path=/trunk/; revision=33917
2008-06-10 05:25:37 +00:00
James Tabor
4feb37f50f Move AngleArc out of stubs.
svn path=/trunk/; revision=33916
2008-06-10 05:14:35 +00:00
Thomas Bluemel
2edcc21ee5 shlwapi.dll is already loaded, no need to use LoadLibrary
svn path=/trunk/; revision=33915
2008-06-10 03:13:12 +00:00
Thomas Bluemel
561efe278f - Don't lookup DrawCaptionTempA/W by ordinal but rather by name
- Various minor fixes

svn path=/trunk/; revision=33914
2008-06-10 02:58:13 +00:00
Thomas Bluemel
f1d9b70f81 Do a more correct check in EDIT_IsInsideDialog ()
svn path=/trunk/; revision=33913
2008-06-10 00:31:10 +00:00
Timo Kreuzer
9fe71b1a02 fix an endless loop bug
See issue #2142 for more details.

svn path=/trunk/; revision=33912
2008-06-09 20:57:30 +00:00
Gregor Brunmar
eaff1fdfa2 Fixed four more winetests, code taken from wine again
svn path=/trunk/; revision=33910
2008-06-09 19:14:36 +00:00
Gregor Brunmar
2692c60678 Fixed 11 winetests for edit boxes based on code from wine but tweaked for ReactOS
svn path=/trunk/; revision=33909
2008-06-09 19:07:54 +00:00
Timo Kreuzer
f5a1426f4c add simple TTF icon to fontview
svn path=/trunk/; revision=33908
2008-06-09 18:10:02 +00:00
James Tabor
1662719886 - Fix Ellipes, for Filip Navara, nice work!
- Ref: http://www.reactos.org/archives/public/ros-dev/2007-January/009090.html
- Test: http://www.reactos.org/pipermail/ros-dev/attachments/20070118/46ace072/attachment-0001.exe

svn path=/trunk/; revision=33907
2008-06-09 16:46:52 +00:00
James Tabor
ada39af182 Move old pie code into arc.
svn path=/trunk/; revision=33906
2008-06-08 19:00:50 +00:00
Aleksey Bragin
730d8e4ee5 - Update dciddi.h header based on Magnus's patch.
- Fix dciman32.dll compilation.

svn path=/trunk/; revision=33905
2008-06-08 18:26:22 +00:00
Pierre Schweitzer
cbf728b477 Synced shlwapi_winetest.exe with Wine HEAD
svn path=/trunk/; revision=33904
2008-06-08 17:14:50 +00:00
Pierre Schweitzer
8a7513a6c7 SySynced shlwapi.dll with Wine HEAD
svn path=/trunk/; revision=33903
2008-06-08 17:13:54 +00:00
Dmitry Chapyshev
939c49a493 - Remove duplicate code
- Fix formatting
- Add checking parameters for more functions

svn path=/trunk/; revision=33902
2008-06-08 15:04:00 +00:00
Eric Kohl
5736c65128 - User properties:
Fix a memory leak.
  Enable the Apply button when the users full name or description is changed.
- Group properties:
  The group description can be changed.
  Update the group list when the group description changes.
  

svn path=/trunk/; revision=33901
2008-06-08 13:34:42 +00:00
Hervé Poussineau
8db6f07370 Fix debug message
svn path=/trunk/; revision=33899
2008-06-08 09:52:56 +00:00
Dmitry Chapyshev
9364f96a85 - Add gdiplus test to bootcd
svn path=/trunk/; revision=33898
2008-06-08 09:49:48 +00:00
Dmitry Chapyshev
077d269069 - Add wine test for gdiplus
svn path=/trunk/; revision=33897
2008-06-08 09:47:47 +00:00
Magnus Olsen
cfd749136a add dummy test for dciman32 for now, real test will come later
svn path=/trunk/; revision=33896
2008-06-08 08:29:04 +00:00
Aleksey Bragin
7245944072 - Magnus: Reformat clip.c source code to better match overall coding style. No code logic change.
svn path=/trunk/; revision=33895
2008-06-08 07:31:10 +00:00
James Tabor
b557c10181 Update NtUserInitializeClientPfnArrays add additional structures and types for future support.
svn path=/trunk/; revision=33894
2008-06-08 03:34:25 +00:00
Timo Kreuzer
b8ceca0d0d Fix some region leaks: GdiSelectVisRgn copies the region, so the given one it must be deleted afterwards. This code is not perfect ~ as Jim already said, not completed. But it's at least working correctly now. Say welcome to a stable running Firefox 1.5.
Also added some DPRINTs on failures.

svn path=/trunk/; revision=33893
2008-06-08 00:43:07 +00:00
Eric Kohl
58c925232a Real fix for the broken netapi32.dll.
svn path=/trunk/; revision=33892
2008-06-07 22:50:55 +00:00
Eric Kohl
f3091aac50 Fix for broken netapi32.dll.
svn path=/trunk/; revision=33891
2008-06-07 22:44:15 +00:00
Eric Kohl
57efc6d296 - Group properties: Display the SID of well-known members.
- User properties: Store changes to the general settings.

svn path=/trunk/; revision=33890
2008-06-07 22:31:24 +00:00
Hervé Poussineau
c844e808fd Write the complete error message to debug log, instead of partial information
svn path=/trunk/; revision=33889
2008-06-07 20:44:57 +00:00
Aleksey Bragin
3f4244aafc - Cleanup leftovers and bugs from GreatLord's fix. I think this is my last "postfix" of GreatLord's commits to trunk.
svn path=/trunk/; revision=33886
2008-06-07 12:58:48 +00:00
Magnus Olsen
f984375fa8 BugFix : NtGdiStretchDIBitsInternal
it did not check after some NULL pointer and did crash in firefox. 
and some reason  NtGdiCreateCompatibleBitmap fail in some case, that what happen in firefox 1.5.

svn path=/trunk/; revision=33885
2008-06-07 11:35:53 +00:00
Magnus Olsen
d1fd748e27 fix one winetest for Bitmap and add note why some alpha blend test fails.
svn path=/trunk/; revision=33884
2008-06-07 10:15:38 +00:00
Magnus Olsen
8f663e980b Fixed Alphablend crash in win32k
svn path=/trunk/; revision=33883
2008-06-07 09:43:35 +00:00
Aleksey Bragin
96bd76c450 - Revert 33881, PatBlt may be buggy, but what was introduced in 33881 was a non-working hack. Unregresses FF2.0 installer having a black rectangle in the bottom of its window.
svn path=/trunk/; revision=33882
2008-06-07 09:20:05 +00:00
Magnus Olsen
66efb44d68 disable NtGdiPatBlt code, in some case it can cause random crash and have some graphic glichters it need be rewrite.
svn path=/trunk/; revision=33881
2008-06-07 07:58:39 +00:00
Magnus Olsen
9199d4af30 revert some change I did in r33877 for buch.c object it cause to many regress
svn path=/trunk/; revision=33880
2008-06-07 07:22:09 +00:00
James Tabor
099735586d This does fix bug 3237. I've run this patch for two months now, it is still in the rough and needs cleaning up. Separates Owned and Class styles and gives them their own DCes.
svn path=/trunk/; revision=33879
2008-06-07 02:58:15 +00:00
Magnus Olsen
888f12a297 small cleanup thx irc: aicom for notice this.
svn path=/trunk/; revision=33878
2008-06-07 01:18:55 +00:00
Magnus Olsen
12528a2fc8 add a NULL check in IntGdiInitBrushInstance if XlateObj is NULL fall back to use white as default color when GDIBRUSH_IS_SOLID are set.
svn path=/trunk/; revision=33877
2008-06-07 01:14:12 +00:00
Magnus Olsen
48150abcea BitBlt
Make it act bit more like windows, use PatBlt instead for BitBlt for no ROP source for it bit faster
Thx irc Goplat found my bug in the macro. 

svn path=/trunk/; revision=33876
2008-06-07 00:51:38 +00:00
Magnus Olsen
b879687075 BugFix : NtGdiPatBlt did not call on NtGdiMaskBlt when source have been set in ROP
svn path=/trunk/; revision=33873
2008-06-06 23:37:41 +00:00
Magnus Olsen
72e6fde566 BugFix : NtGdiBitblt follow member BitmapDest and BitmapSrc one of them can be NULL in NtGdiBitBlt logic so do not try access members in null pointer
svn path=/trunk/; revision=33872
2008-06-06 23:09:42 +00:00
Aleksey Bragin
00d190a404 - Fix KDBG's EIP munging.
- Don't make single-step break into KDBG if it comes from user-mode.
- Don't make KDBG return "continue" for breakpoint/singlestep, it should return "do not handle exception".
- Add 20 new invalid instructions detected instead of crashing/"UNHANDLED CODE".
- Fix DR registry handling (set DebugActive = TRUE when needed, and set Context->Dr7).
- Fix set/get context: These two functions didn't work at all. Get actually performed a Set, and Vice-versa. Also, Set would incorrectly set the frame of the caller, not the target thread. Also, the trap frame pointer wasn't being grabbed correctly for kernel-mode callers.
- Move the code to a non-portable i386 directory, since the code is architecture-specific.
- Move GET_SET_CTX_CONTENT out to ps.h.

svn path=/trunk/; revision=33871
2008-06-06 21:51:21 +00:00
Aleksey Bragin
3eb4e85097 - Fix a major bug while closing a process that was debugging another process, which would cause a bugcheck because it tried to kill itself while it was being killed -- instead, it should try killing the debuggee! fixes the bug that arty and I fought about when he said "process killing seems broken" and tried to add delayed-object-closing. Patch by Alex Ionescu.
- Remove a leftover from kernel32 which assumed that if "BeingDebugged" was TRUE, the library was being tested on an XP machine.

svn path=/trunk/; revision=33870
2008-06-06 21:43:37 +00:00
Aleksey Bragin
edc9924731 - Change the registry name from Registry to REGISTRY, which fixes almost all Wine registry tests and any other application using the registry in case-sensitive mode, because the real name is REGISTRY.
- Add SEH to NtCreate/OpenKey, which fixes the rest of the wine registry tests.
- Fix PnP Manager code that was doing case sensitive registry access with "Registry".

svn path=/trunk/; revision=33869
2008-06-06 21:40:37 +00:00
Aleksey Bragin
d409591250 - Update RtlIsTextUnicode (fixes some ntdll rtlstr winetests).
svn path=/trunk/; revision=33868
2008-06-06 21:33:43 +00:00
Dmitry Chapyshev
036789044b - Sync tahoma fonts with wine head
svn path=/trunk/; revision=33867
2008-06-06 19:40:27 +00:00
Aleksey Bragin
45ebe0ccc2 - Update many parts of CRT, and misc cleanup.
- Largely based on the patch by Samuel Serapion.
- Include file.c from Wine's msvcrt, but exclude its contents from the build process for now.

svn path=/trunk/; revision=33866
2008-06-06 17:49:24 +00:00
Aleksey Bragin
3f2bc58da5 - Move scanf.c into strings, it belongs there.
- Move thread.c to process, and remove outdated/duplicated copy.
- Sync threadx with Wine.
- Update README.WINE accordingly.

svn path=/trunk/; revision=33865
2008-06-06 12:20:28 +00:00
Aleksey Bragin
c129f7fcd3 - Fix a typo.
svn path=/trunk/; revision=33864
2008-06-06 11:26:14 +00:00
James Tabor
4d4d130154 Attempt to fix bug 3259. Use IntGdiCleanDC for error checking.
svn path=/trunk/; revision=33863
2008-06-06 02:59:12 +00:00
Magnus Olsen
af03c08689 commit 33747 did remove almost all redirect to ntdll and to some internal functions, I re add thuse redirect
also by mistake   _seh_longjmp_unwind was not longer redirected to  seh_longjmp_unwind it is now again 
thx irc nick : Goplat to notice this. 

svn path=/trunk/; revision=33862
2008-06-05 23:51:27 +00:00
Timo Kreuzer
d448c26dba patch by Jeffrey Morlan (mrnobo1024 at yahoo dot com, irc: Goplat):
fix coordinate transformation for NtGdiSetDIBitsToDevice,
fixes bug 3200
See issue #3294 for more details.

svn path=/trunk/; revision=33861
2008-06-05 22:23:19 +00:00
Timo Kreuzer
56d318331b co_MsqTranslateMouseMessage:
- add a comment about who removes a message from a queue
- fix filter handling (typo)
- correct the callers next list entry, if it might have been deleted. Yes, it's ugly, but the only way I could currently think of without rewriting everything and it was already ugly before. This fixes bug 2317 and some random crashes with FF.
See issue #2317 for more details.

svn path=/trunk/; revision=33860
2008-06-05 16:57:27 +00:00
Timo Kreuzer
fbf0cbd302 IntEngGradientFill: don't assert, if no CLIPOBJ is given, instead handle this case in EngGradientFill, creating a CLIPOBJ from bounds rect.
svn path=/trunk/; revision=33859
2008-06-05 00:23:27 +00:00
James Tabor
6378983897 This should do it for pen. Tested the same with wine tests.
svn path=/trunk/; revision=33858
2008-06-04 21:05:18 +00:00
James Tabor
e61ef65c4a Sorry, I should have spotted this when I was in here.. I think this takes care of the leak and crash. Wine testing is back with the same errors. So we are good to go.
svn path=/trunk/; revision=33857
2008-06-04 17:45:18 +00:00
Timo Kreuzer
a1aca981cf - fix mem leak when failing to create an extpen with penstyles
- rename a tag, change a tag, remove unused tag

svn path=/trunk/; revision=33856
2008-06-04 16:15:24 +00:00
James Tabor
63428932b8 Prevent a crash if the list is empty and check for zero. If (List is Empty! DCE!) is called before the crash, this means we have a thread that is not finished running before shutdown. There is a proper way for handling this
svn path=/trunk/; revision=33855
2008-06-04 16:07:47 +00:00
Aleksey Bragin
bcd6451e5b - libcntpr does not need console/file versions of scanf.
svn path=/trunk/; revision=33854
2008-06-04 10:52:54 +00:00
Aleksey Bragin
7b68ed11e0 - Fix crtdll build.
svn path=/trunk/; revision=33853
2008-06-04 10:41:17 +00:00
Aleksey Bragin
97e7725dc9 - Misc cleanup of kmtest.
- Add paged/nonpaged pools test routines.
- Comment out invocations of other tests temporary.

svn path=/trunk/; revision=33852
2008-06-04 09:50:19 +00:00
Aleksey Bragin
170743424f - Misc ctype wine sync.
svn path=/trunk/; revision=33851
2008-06-04 09:45:12 +00:00
Aleksey Bragin
683a6c4181 - Remove duplicated sscanf wrapper.
- Sync scanf.c / scanf.h with Wine.

svn path=/trunk/; revision=33850
2008-06-04 09:10:40 +00:00
James Tabor
6857246d17 No need to do it twice.
svn path=/trunk/; revision=33849
2008-06-04 06:10:49 +00:00
Gregor Brunmar
f91ca27dd7 * Fixes 14 wine tests for the edit control
* Indentation fixes

svn path=/trunk/; revision=33848
2008-06-04 06:08:37 +00:00
James Tabor
01c9364e27 Implement IntGdiSetBrushOwner and IntGdiAllocObjAttr.
svn path=/trunk/; revision=33847
2008-06-04 05:43:11 +00:00
James Tabor
833d68c273 Separate SelectPalette function from User and move it to GDI.
svn path=/trunk/; revision=33846
2008-06-04 05:08:46 +00:00
James Tabor
528fc30198 Check to see if the list is empty.
svn path=/trunk/; revision=33845
2008-06-04 01:52:13 +00:00
Timo Kreuzer
fa7b96c770 fix indentation
svn path=/trunk/; revision=33844
2008-06-03 23:59:26 +00:00
Timo Kreuzer
7bc03a5188 fix checks for deleted gdi objects and add GDI_DEBUG function to trace the deleter of an object.
svn path=/trunk/; revision=33843
2008-06-03 23:56:09 +00:00
James Tabor
7c21c02f9b Attempt to fix bugs 3050 and 3209. DCE list becomes corrupted during shutdown.
svn path=/trunk/; revision=33841
2008-06-03 21:13:10 +00:00
Dmitry Chapyshev
37a3eaf812 - Update English translation
svn path=/trunk/; revision=33840
2008-06-03 17:05:24 +00:00
Dmitry Chapyshev
a7d6984117 - Update all translations
svn path=/trunk/; revision=33839
2008-06-03 16:56:23 +00:00
Colin Finck
81d738e77c Slovak keyboard layout update by Milan Margus (malin23 AT atlas DOT sk)
See issue #1251 for more details.

svn path=/trunk/; revision=33838
2008-06-03 13:47:19 +00:00
Dmitry Chapyshev
6ed534a3b0 - Implement EnumSystemLanguageGroupsA/W
- Implement EnumSystemLocalesA
- Reimplement EnumSystemLocalesW

svn path=/trunk/; revision=33837
2008-06-03 13:20:41 +00:00
Dmitry Chapyshev
1f7ff705dd - Add Language Groups values
svn path=/trunk/; revision=33836
2008-06-03 13:17:02 +00:00
Dmitry Chapyshev
348822f367 - More implement "Regional Options" dialog
- Small fix "Advanced" dialog

svn path=/trunk/; revision=33835
2008-06-03 11:55:02 +00:00
Dmitry Chapyshev
5249beecfa - Implement EnumSystemGeoID
- Implement GetGeoInfoA/W (partially)
- Small fix EnumSystemCodePagesA/W

svn path=/trunk/; revision=33834
2008-06-03 11:51:21 +00:00
Dmitry Chapyshev
0b5dd6ddfe - Add geographic locations
svn path=/trunk/; revision=33833
2008-06-03 11:48:16 +00:00
James Tabor
e8eda04c27 Move from fixed PrimarySurface to pointer based pPrimarySurface. Misc changes..
svn path=/trunk/; revision=33832
2008-06-03 03:41:54 +00:00
James Tabor
bcefe305f1 Update Dc level structure.
svn path=/trunk/; revision=33831
2008-06-02 21:10:31 +00:00
James Tabor
b0c65c30fe Move xform data from W structure into DcLevel within unions. Why: Sticking with systems floating point and reducing the size of DC.
svn path=/trunk/; revision=33830
2008-06-02 19:51:04 +00:00
Gregor Brunmar
720d38711f Added dialog FNID
svn path=/trunk/; revision=33829
2008-06-02 19:15:33 +00:00
James Tabor
114a366a38 Stefan Ginsberg <stefan__100__ at hotmail.com>
- Remove old DCOrg and replace it with ptlDCOrig.

svn path=/trunk/; revision=33828
2008-06-02 17:53:53 +00:00
Dmitry Chapyshev
ae9a18969f - Update txtsetup languages list
svn path=/trunk/; revision=33827
2008-06-02 15:35:34 +00:00
Dmitry Chapyshev
d35aa6d4ce - Add more languages
- Add scrolling to position in languages list

svn path=/trunk/; revision=33826
2008-06-02 15:34:57 +00:00
Aleksey Bragin
204acf76b0 Stefan Ginsberg <stefan__100__@hotmail.com>
- Remove ExTryToAcquireResourceExclusiveLite from NDK since it's not exported by NT kernel.
- Add ObSetSecurityObjectByPointer, RtlInitAnsiStringEx (and implement it, rather straightforward) to NDK.
- Uncomment exports in ntoskrnl_i386.def which are already implemented.
- Add KeInvalidateAllCaches to ARM's stubs.

svn path=/trunk/; revision=33825
2008-06-02 10:21:49 +00:00
Colin Finck
c91fecf968 - Add a test suite for ws2_32.dll
It currently tests the features I needed to adjust/implement when fixing the wininet problem.
  ReactOS currently passes all tests, but fails one if you launch the test app for the second time quickly after the first time (timing problem in the network code?).
- Fix the behaviour on an ioctlsocket FIONREAD call: The output buffer is not touched, when we have no socket, but when we have no connection, it is set to 0.
- Forward the socket call to WSASocketW instead of WSASocketA, minimal performance improvement

svn path=/trunk/; revision=33824
2008-06-01 22:08:45 +00:00
Colin Finck
ce52fa83e3 Use the Windows CreateFile/WriteFile functions instead of open/write.
Fixes compilation with MSVC. (note that you also have to change the calling convention from __stdcall to __cdecl in the auto-created project file for the lib)

svn path=/trunk/; revision=33823
2008-06-01 20:34:12 +00:00
Hervé Poussineau
78faaa3063 Fix debug message
svn path=/trunk/; revision=33822
2008-06-01 19:56:21 +00:00
Hervé Poussineau
6a7b9457dc Add a "ReactOS (WinLdr)" entry when using a debug build
svn path=/trunk/; revision=33821
2008-06-01 19:15:15 +00:00
Colin Finck
0f76b280cc - Add a parameter for listing all valid test names
- Generate valid XHTML 1.0 Strict

svn path=/trunk/; revision=33820
2008-06-01 18:37:55 +00:00
Hervé Poussineau
879d178c13 Remove dead code (GetActualSourceFilename, GetSourceFilenames, GetSourceFilenamesWithoutGeneratedFiles)
In rules, put generated file name at the end of the line

svn path=/trunk/; revision=33819
2008-06-01 18:20:30 +00:00
Colin Finck
d55028d26f Set svn:eol-style "native" for all apitest stuff
svn path=/trunk/; revision=33818
2008-06-01 18:06:22 +00:00
James Tabor
5367e27e3a Stefan Ginsberg <stefan__100__ at hotmail.com> - Move MetaFile stubs into Metafile.c.
svn path=/trunk/; revision=33817
2008-06-01 17:47:46 +00:00
Magnus Olsen
ba14ded010 Adding complete test kit for EngCreateSemaphore, EngAcquireSemaphore, EngDeleteSemaphore, EngReleaseSemaphore
I think it testing all case it can now, and also split up some test to EngDeleteSemaphore and EngReleaseSemaphore and EngAcquireSemaphore, that was in EngCreateSemaphore


svn path=/trunk/; revision=33816
2008-06-01 17:33:51 +00:00
Dmitry Chapyshev
c3f50e79c8 - Update txtsetup.sif
svn path=/trunk/; revision=33815
2008-06-01 17:18:35 +00:00
Dmitry Chapyshev
5fd3663edf - Add more languages
- Update languages

svn path=/trunk/; revision=33814
2008-06-01 17:17:56 +00:00
James Tabor
8a24ff76e0 Use SetDCOwnerEx, this will allow for gracefull errors when changing ownership of the DCs.
svn path=/trunk/; revision=33812
2008-06-01 16:21:38 +00:00
Magnus Olsen
457aee023d add all test we can do for EngCreateSemaphore, it checking some info in the internal HANDLE hsem is same as PRTL_CRITICAL_SECTION struct
svn path=/trunk/; revision=33811
2008-06-01 15:48:51 +00:00
James Tabor
5047d04ffc Imp NtGdiUnmapMemFont and fix NtGdiGetDhpdev.
svn path=/trunk/; revision=33810
2008-06-01 15:22:25 +00:00
Magnus Olsen
0b090eef6a add more test for EngCreateSemaphore, it checking some info in the internal HANDLE hsem is same as PRTL_CRITICAL_SECTION struct
svn path=/trunk/; revision=33809
2008-06-01 15:06:40 +00:00
Eric Kohl
828f4f1216 Add the Membership and Profile pages to the users property sheet. Changing the settings is not implemented yet.
svn path=/trunk/; revision=33808
2008-06-01 15:05:22 +00:00
Magnus Olsen
f54e38e9ac add Test for EngDeleteSemaphore, it only test if it been create or not
svn path=/trunk/; revision=33807
2008-06-01 14:38:02 +00:00
Marc Piulachs
ed39c925a0 set 'installname' attribute for halup to 'hal.dll'
svn path=/trunk/; revision=33806
2008-06-01 13:24:25 +00:00
Marc Piulachs
2c0aa23f29 'base' is not a valid attribute of element 'installfile'
svn path=/trunk/; revision=33805
2008-06-01 13:21:12 +00:00
Dmitry Chapyshev
150abb0844 - Sync with Wine HEAD
svn path=/trunk/; revision=33804
2008-06-01 13:14:02 +00:00
Dmitry Chapyshev
fa6f8006d0 - Update headers
svn path=/trunk/; revision=33803
2008-06-01 13:13:10 +00:00
Dmitry Chapyshev
cfb95de0f7 - Add language groups
svn path=/trunk/; revision=33802
2008-06-01 13:07:38 +00:00
Dmitry Chapyshev
1ddfc357da - Remove SysFontSubstitutes values
svn path=/trunk/; revision=33801
2008-06-01 13:05:55 +00:00
Dmitry Chapyshev
9b6d791e60 - Move layouts to lang headers
- Other small changes

svn path=/trunk/; revision=33800
2008-06-01 12:52:18 +00:00
Hervé Poussineau
b3b07836ef Start Rpc server listener thread before device installer thread
See issue #3068 for more details.

svn path=/trunk/; revision=33799
2008-06-01 10:49:28 +00:00
Daniel Reimer
fcd2a4e62c Bug 3299: czech translation from forum and some slovak translation by Stepan Gabriel - SGABA (sgaba@centrum.cz)
svn path=/trunk/; revision=33798
2008-06-01 10:26:42 +00:00
Magnus Olsen
61f33dad43 merge down changes from win32k-gdi-dx
1. Cleanup the layout it was mix of space and tab for whitespace
2. dllmain add same behoirs as xp/vista

svn path=/trunk/; revision=33797
2008-06-01 07:54:17 +00:00
James Tabor
1177ff923f Sorry again... NtGdiCreateEnhMetaFile will be converted to NtGdiCreateMetafileDC. Keeping the original code for now.
svn path=/trunk/; revision=33796
2008-06-01 05:40:53 +00:00
James Tabor
9adac31641 Sorry,,, NtGdiCreateEnhMetaFile will be converted to
svn path=/trunk/; revision=33795
2008-06-01 05:22:42 +00:00
Timo Kreuzer
2e3c186197 IntGdiLineTo: the dc pen might be deleted, don't assert, instead fall back to BLACK_PEN, fixes a crash when using FF
svn path=/trunk/; revision=33793
2008-06-01 00:54:08 +00:00
Timo Kreuzer
91b1e254fd preserve code for NtGdiCreateEnhMetaFile from win32k (where it's going to be removed later) in gdi32 (where it's going to be implemented later)
svn path=/trunk/; revision=33792
2008-05-31 23:15:34 +00:00
Eric Kohl
4e9ffdff7e User the user-specific date format instead of a hard-coded one.
svn path=/trunk/; revision=33791
2008-05-31 20:09:17 +00:00
Eric Kohl
fbcc10c57e - Add a property sheet for user groups. Settings are visible but cannot be changed yet.
- Add missing SVN properties.

svn path=/trunk/; revision=33790
2008-05-31 19:48:44 +00:00
Dmitry Chapyshev
b82096c544 - Move languages structures to header
- Add structures for adding fonts settings

svn path=/trunk/; revision=33789
2008-05-31 13:29:45 +00:00
Colin Finck
bdec9df44c Sync wininet with Wine. This fixes the Download! issue.
As we implement some more functions in the network stack now, I could remove some hacks from the "wininet_ros.diff" file.
Anyways, the following things still needed to be changed:
- Pass a variable to WriteFile for receiving the number of bytes written. This parameter is not checked for NULL in ReactOS and Windows, when lpOverlapped is also NULL.
  I'll submit a patch about this to Wine as well.
- Replace Unix poll() calls by equivalent select() calls
- Bypass sock_get_error(), directly call WSAGetLastError() as we don't have to translate Unix socket errors.

See issue #3197 for more details.

svn path=/trunk/; revision=33788
2008-05-31 13:02:59 +00:00
Colin Finck
c446f5ff58 Implement support for FIONREAD in WSPIoctl. (hope I did it properly)
It works correctly with the wininet I'll commit later and a test app I wrote myself.

svn path=/trunk/; revision=33787
2008-05-31 12:53:55 +00:00
Colin Finck
923017639c Implement support for MSG_PEEK.
Patch by Art Yerkes with small fix by me to make it working correctly. (verified with a test app)

svn path=/trunk/; revision=33786
2008-05-31 12:51:22 +00:00
Colin Finck
cb57056f4b Stub QuerySecurityPackageInfoA and QuerySecurityPackageInfoW, needed for the wininet Wine sync
svn path=/trunk/; revision=33785
2008-05-31 12:49:25 +00:00
Colin Finck
33369deba9 Use FILE_SHARE_READ | FILE_SHARE_WRITE in CopyFileExW to also copy opened files. Thanks to Christoph for the hint.
Behaviour was verified under WinXP SP2.

svn path=/trunk/; revision=33784
2008-05-31 12:48:51 +00:00
Magnus Olsen
de95e30718 revert my last change
1. it break vmware drv, for it align each bitmap row it create
2. diffent behoirs in diffent vm
this did show we have more serius bug to fix before we can apply correct fix.

svn path=/trunk/; revision=33783
2008-05-31 12:17:25 +00:00
Magnus Olsen
9ae5fa0777 Fixed bug in DIB_GetDIBWidthBytes
accdoing OSR it is number of bytes to next scanline in the bitmap, wine version did align it, that why wrong number of bytes was reported also fixed overflow bug in the math, and make sure if some part of win32k send in negtive width, it will not calc it wrong, Remove one hack in win32k, thx of this, Thx fireball that suggest this functions mabey was wrong 

svn path=/trunk/; revision=33782
2008-05-31 11:01:51 +00:00
Timo Kreuzer
2027d8d907 patch by Jeffrey Morlan (mrnobo1024 at yahoo dot com)
Testcase for NtGdiSetDIBitsToDeviceInternal
See issue #3294 for more details.

svn path=/trunk/; revision=33781
2008-05-31 00:04:16 +00:00
Pierre Schweitzer
58871282fd Added more cluster size values.
Spotted by GreatLord
For more informations: http://support.microsoft.com/kb/140365/en-us

svn path=/trunk/; revision=33780
2008-05-30 20:59:56 +00:00
Pierre Schweitzer
4db827d152 Check cluster size when mounting a volume
svn path=/trunk/; revision=33779
2008-05-30 18:55:05 +00:00
Dmitry Chapyshev
18eca01b10 - Implement parsing font.inf (Now it's possible to specify custom fonts for a language/locale!)
svn path=/trunk/; revision=33778
2008-05-30 18:18:36 +00:00
Dmitry Chapyshev
94ae0fcf03 - Change in WindowMetrics font to Tahoma
- Add Tahome font to bootcd
- Add some file association

svn path=/trunk/; revision=33777
2008-05-30 18:12:59 +00:00
Dmitry Chapyshev
2f15b4e95a - Small update inf file
svn path=/trunk/; revision=33776
2008-05-30 18:09:55 +00:00
Dmitry Chapyshev
3b36a9d68f - Add Tahoma fonts from Wine
svn path=/trunk/; revision=33775
2008-05-30 18:09:14 +00:00
Magnus Olsen
0feff0d802 fixed last part for the def file.
now it is 100% completed and update to windows 2003 sp1
sorry I did not do it one commit. 

svn path=/trunk/; revision=33774
2008-05-30 16:00:16 +00:00
James Tabor
7be3065c79 Thanks aicom, remove unimplemented tag.
svn path=/trunk/; revision=33773
2008-05-30 15:42:06 +00:00
James Tabor
326b3a11f8 Use System Bitmap DC, like a stock object but a hDC one.
svn path=/trunk/; revision=33772
2008-05-30 15:18:51 +00:00
Dmitry Chapyshev
ce3527ab5a - Add intl.inf and font.inf to bootcd
- Add shimgvw.dll to bootcd

svn path=/trunk/; revision=33771
2008-05-30 14:06:07 +00:00
Dmitry Chapyshev
00b0111c6c - Add font.inf and intl.inf
svn path=/trunk/; revision=33770
2008-05-30 14:03:19 +00:00
Dmitry Chapyshev
806eed0a98 - Implement EnumSystemCodePagesA/W
svn path=/trunk/; revision=33769
2008-05-30 13:59:20 +00:00
Aleksey Bragin
944d8b65c4 - Really fix _rotl. Thanks KJK::Hyperion!
svn path=/trunk/; revision=33768
2008-05-30 12:16:05 +00:00
Aleksey Bragin
c5d4f0f35a - Fix a warning in 1st of April's implementation of _rotl function.
svn path=/trunk/; revision=33767
2008-05-30 12:10:28 +00:00
James Tabor
c4f0f3c668 Move the init of server info after heap is init.
svn path=/trunk/; revision=33766
2008-05-30 06:13:52 +00:00
James Tabor
87b264fba8 Modified GDIOBJ_Copy and Set owner to return bool. Start the use of server info for metrics data. Tested with Qemu on Linux.
svn path=/trunk/; revision=33765
2008-05-30 04:56:10 +00:00
Magnus Olsen
a8585cf880 1. do not use wine def for reactos
2. this is almost 100% correct list of windows 2003 export list of msvcrt.def and it will make abiword working again for it was missing api wfreopen and allot more api from msvcrt
3. this add back api that was remove api they exists in windows 2003 export list
4. List was provide from colin f

See issue #3293 for more details.

svn path=/trunk/; revision=33764
2008-05-30 01:27:29 +00:00
Magnus Olsen
e141a01feb patch by Jeffrey Morlan ( email : mrnobo1024 at yahoo dot com )
the comment above is my. 
See issue #3295 for more details.

svn path=/trunk/; revision=33763
2008-05-29 22:39:39 +00:00
Timo Kreuzer
22942d0ae4 remove hFirstBitmap from the WIN_DC_INFO struct, wasn't used anyway and use StockObject(DEFAULT_BITMAP) for the default bitmap when creating a mem dc as on windows.
svn path=/trunk/; revision=33762
2008-05-29 19:44:23 +00:00
James Tabor
b61def0c68 Fix build.
svn path=/trunk/; revision=33761
2008-05-29 18:58:03 +00:00
James Tabor
c03961764a Use server information structure for system colors.
svn path=/trunk/; revision=33760
2008-05-29 18:51:17 +00:00
Aleksey Bragin
616f5e97e0 Stefan Ginsberg <stefan__100__@hotmail.com>
- Remove NT3/4 specific unimplemented function and change STDCALL -> NTAPI in mm.c
- Make ReactOS i386 kernel exports almost fully correspond to W2003SP1 ntoskrnl.exe's exports.

svn path=/trunk/; revision=33759
2008-05-29 16:09:47 +00:00
Aleksey Bragin
c5fa27e2d7 Stefan Ginsberg <stefan__100__@hotmail.com>
- Remove usage of unexported RtlDuplicateUnicodeString in green.sys driver (this is basically the same fix which Herve applied to blue.sys).

svn path=/trunk/; revision=33758
2008-05-29 16:00:20 +00:00
James Tabor
802eba95c5 Update NtUserBitBltSysBmp.
svn path=/trunk/; revision=33757
2008-05-29 15:32:05 +00:00
Dmitry Chapyshev
fa06cb862b - Add Russian translation
- Fixed parameters functions
- Add debug functions
- Add stubs for some functions

svn path=/trunk/; revision=33756
2008-05-29 14:30:26 +00:00
Daniel Reimer
e5ec2becfb Bug 3282: Spanish and Basque translation by Javier Remacha (remialdo@gmail.com)
Bug 3284: small slovak translation update by Mario Kacmar (kario@szm.sk)
Part 2 of 2

svn path=/trunk/; revision=33755
2008-05-29 11:40:11 +00:00
Daniel Reimer
b3091b7bf3 Bug 3282: Spanish and Basque translation by Javier Remacha (remialdo@gmail.com)
Bug 3284: small slovak translation update by Mario Kacmar (kario@szm.sk)
Part 1 of 2

svn path=/trunk/; revision=33754
2008-05-29 11:36:08 +00:00
Timo Kreuzer
3c6e5e169c sorry forgot this one
svn path=/trunk/; revision=33753
2008-05-29 01:30:33 +00:00
Timo Kreuzer
d60ea94881 fix palette implementation: use the surface's palette to crate the xlate objects, default to the device default palette. The dc palette defaults to stock object default palette. Implement IntCreateXlateForBlt, used in BitBlt etc functions to perform the needed operations to create the xlate object instead of duplicating the code. This allows for global thermonuclear solitaire again and hopefully doesn't break everything else ;-)
svn path=/trunk/; revision=33752
2008-05-29 01:17:50 +00:00
Timo Kreuzer
8d17551ae9 reapply Magnus Change to fix build.
note to Colin: THAT is the reason why ;-)

svn path=/trunk/; revision=33751
2008-05-28 23:02:26 +00:00
Timo Kreuzer
363e65143d (Nt)GdiFlushUserBatch:
- optmize by moving the locking of the dc to NtGdiFlushUserBatch instead of doing it for every object
- fix wrong pointer calculation (GdiFlushUserBatch returns the size of the objects in bytes not in ULONG)
- simplify a check
- add a comment: on XP NtGdiFlushUserBatch doesn't return NTSTATUS, but a pointer to inside the Teb, maybe random/VOID

svn path=/trunk/; revision=33750
2008-05-28 22:25:08 +00:00
Colin Finck
5a47d0b0ad Sync usp10 with Wine again, fixes the corrupted text display in AbiWord.
Thanks to CMan for regression-testing!

Also I removed Magnus' change in r33700.
If this is really required, please name the reason and add the change to a usp10_ros.diff file as this is a Wine-synched component. Also don't forget to include a header file for the DbgPrint prototype.

See issue #3280 for more details.

svn path=/trunk/; revision=33749
2008-05-28 21:41:41 +00:00
Colin Finck
d7e28db400 Sorry, forgot this file
svn path=/trunk/; revision=33748
2008-05-28 21:37:05 +00:00
Colin Finck
1e95911991 Samuel Serapión (samdwise51 AT gmail DOT com):
- Sync parts of msvcrt with Wine (more will follow)
  This makes us passing a lot more msvcrt Wine tests (like all heap tests)

svn path=/trunk/; revision=33747
2008-05-28 21:08:23 +00:00
Daniel Reimer
c6aa541df2 Add winhlp32 to bootcd.
svn path=/trunk/; revision=33746
2008-05-28 20:10:50 +00:00
Timo Kreuzer
d1dfa7c318 DCOrg is in device coordinates, fix a comment accordingly
svn path=/trunk/; revision=33745
2008-05-28 20:03:36 +00:00
Magnus Olsen
fe93333f0e This file will be share between dxg and win32k explain why will follow in documentations that Z98 helping me writing at moment. they will be release to public
fast explain windows xp and higher have two gdi table, it is better reuse same macro for both, that rewrite it one more time. 

svn path=/trunk/; revision=33744
2008-05-28 20:03:10 +00:00
Timo Kreuzer
ed5eae8cb6 EngLineTo: if pco == NULL use a private clip object, initialized with bounds rect
svn path=/trunk/; revision=33743
2008-05-28 20:00:03 +00:00
Dmitry Chapyshev
7c07a3d2c3 - Add baseaddress for shimgvw.dll
svn path=/trunk/; revision=33742
2008-05-28 19:53:41 +00:00
Dmitry Chapyshev
399371ec09 - Start implementing shimgvw.dll
svn path=/trunk/; revision=33741
2008-05-28 19:52:46 +00:00
Dmitry Chapyshev
862d7688c6 - Update Russian translation
svn path=/trunk/; revision=33740
2008-05-28 19:47:11 +00:00
Timo Kreuzer
cf00bb3cc7 EngCreateClip must allocate CLIPGDI, not only CLIPOBJ
svn path=/trunk/; revision=33739
2008-05-28 17:22:49 +00:00
Timo Kreuzer
492a434c2b [FORMATTING]
Apply consistent indentation (4 spaces)

svn path=/trunk/; revision=33738
2008-05-28 15:20:56 +00:00
Timo Kreuzer
219ad25324 [FORMATTING]
Fix indentation: 4 spaces, no code change

svn path=/trunk/; revision=33737
2008-05-28 14:32:06 +00:00
Daniel Reimer
896c4d6934 Updated winhelp from wine and renamed accordingly from winhelp to winhlp32.
svn path=/trunk/; revision=33736
2008-05-28 07:43:38 +00:00
James Tabor
85baf3767e Add Gdi entry flag.
svn path=/trunk/; revision=33735
2008-05-28 05:01:17 +00:00
James Tabor
56eae74260 NtUserRegisterClassExWOW also given FNID. Added one more fnid type.
svn path=/trunk/; revision=33734
2008-05-28 04:04:35 +00:00
James Tabor
5cccc4e338 NtUserSetWindowFNID is needed for supporting NtUserGetClassName bGetRealClass.
svn path=/trunk/; revision=33733
2008-05-28 02:36:25 +00:00
Timo Kreuzer
31335eaca5 exception.h: merge changes from wine.
Revision 1.37 fixes the exception in ole32 when opening a file with FoxitReader. Also fixes some warnings and hopefully some usermode crashes.

1.28: Jonathan Ernst <jonathan@ernstfamily.ch>
Update the address of the Free Software Foundation.

1.29: Alexandre Julliard <julliard@winehq.org>
include: Exception filters should return LONG, not DWORD.
Also move UnhandledExceptionFilter definitions to winbase.h since they
are there in the latest SDK.

1.30: Rob Shearman <rob@codeweavers.com>
include: Move Wine-specific EH_* defines from winnt.h to include/wine/exception.h.

1.33: Rob Shearman <rob@codeweavers.com>
Add a new convenience macro for an exception handler that handles all exceptions.
When using native compiler exceptions, the previous method of doing
this, __EXCEPT(NULL), would expand to __except(
(NULL)(GetExceptionInformation())) which doesn't compile as NULL isn't a
function.
So add a new macro, __EXCEPT_ALL, which works correctly both when using
native compiler exceptions and without and which makes the meaning of
code in which it is used clearer.

1.35: Alexandre Julliard <julliard@winehq.org>
ntdll: Make the exception handling functions inline.

1.36: Alexandre Julliard <julliard@winehq.org>
exception.h: Only push the exception frame after sigsetjmp.
Otherwise on Windows longjmp may want to mess with the exception frame.

1.37: Alexandre Julliard <julliard@winehq.org>
exception.h: Preserve registers when calling RtlUnwind.

See issue #812 for more details.

svn path=/trunk/; revision=33732
2008-05-28 00:41:13 +00:00
Aleksey Bragin
fb517419d2 - More header fixes.
svn path=/trunk/; revision=33731
2008-05-27 18:59:59 +00:00
Daniel Reimer
17e1cf3127 Polish language Update by Olaf Siejka
svn path=/trunk/; revision=33730
2008-05-27 18:54:23 +00:00
Johannes Anderwald
134baad36b - access parameter after they have been verified as valid
- fixes a kernel32_winetest crash
- fixes bug 3264

svn path=/trunk/; revision=33729
2008-05-27 10:53:23 +00:00
Johannes Anderwald
502222bd4c - fix typo in CreateServiceA
- bug found by Michael martinmnet at hotmail dot com (IRC: bugboy)

svn path=/trunk/; revision=33728
2008-05-27 08:54:07 +00:00
Ged Murphy
29ca8d764e Another typo. Yep, I'm officially today's jester...
svn path=/trunk/; revision=33727
2008-05-27 08:34:28 +00:00
Ged Murphy
7cb9f6e369 fix typo
svn path=/trunk/; revision=33726
2008-05-27 08:32:19 +00:00
Ged Murphy
d0a0a529f1 fix potential buffer overflow
svn path=/trunk/; revision=33725
2008-05-27 08:28:52 +00:00
Aleksey Bragin
6fdb1140a3 Daniel Zimmermann <netzimme@aim.com>
- Sync setlocale from Wine.
See issue #3254 for more details.

svn path=/trunk/; revision=33724
2008-05-27 08:11:06 +00:00
James Tabor
2ac4cc37b5 Rename and add new internal functions.
svn path=/trunk/; revision=33723
2008-05-27 01:38:01 +00:00
James Tabor
950f7264b3 Removed NtGdi rect calls.
svn path=/trunk/; revision=33722
2008-05-26 23:57:30 +00:00
James Tabor
d8b3f39eef Fix the rest too....
svn path=/trunk/; revision=33721
2008-05-26 21:12:17 +00:00
Johannes Anderwald
92d954c542 - check if MDICLIENTINFO is available before retrieving information
- fixes a user32_winetest crash

svn path=/trunk/; revision=33720
2008-05-26 20:52:28 +00:00
James Tabor
4204cdca6e Why are we deleting prgnVis after setting it up? Wine code shows that it is deleted after an error if it was setup prior the error. This fixes a bug introduced in revision 5118.
svn path=/trunk/; revision=33719
2008-05-26 20:36:38 +00:00
Filip Navara
2cb33838e4 Change the code a bit, as Hervé Poussineau points out, the interrupt vector could in some cases be zero.
svn path=/trunk/; revision=33718
2008-05-26 18:51:15 +00:00
Filip Navara
e5b4190710 Fix incorrect logic in IntVideoPortSetupInterrupt and add comment.
svn path=/trunk/; revision=33717
2008-05-26 18:32:40 +00:00
Johannes Anderwald
d543aa9e03 - only convert the devmode if the caller passed one
- fixes a user32_winetest crash failure

svn path=/trunk/; revision=33716
2008-05-26 18:13:17 +00:00
Aleksey Bragin
32a9a804de - Fix misc structures definitions.
svn path=/trunk/; revision=33715
2008-05-26 18:08:50 +00:00
Gregor Brunmar
53baa88e72 Removed legacy code from r33695, trying to free a NULL pointer
svn path=/trunk/; revision=33714
2008-05-26 16:13:19 +00:00
Aleksey Bragin
3c352d6375 - Erase countdown timer when needed. Based on a patch from bug 3279.
See issue #3046 for more details.

svn path=/trunk/; revision=33713
2008-05-26 15:27:09 +00:00
Johannes Anderwald
2dab0a3d0f - add support for a future timeout callback mechanism
svn path=/trunk/; revision=33712
2008-05-26 15:23:24 +00:00
Aleksey Bragin
b0bbb622d9 - Remove $Id tags.
svn path=/trunk/; revision=33711
2008-05-26 14:42:27 +00:00
Johannes Anderwald
d827979288 - check if its a primary monitor before calculating monitor intersection rectangle
- should fix bug 3281

svn path=/trunk/; revision=33709
2008-05-26 13:50:36 +00:00
Aleksey Bragin
76df1b3538 - Add more functions to the lookup table (used by the newest VMWare 6.5 Video driver).
svn path=/trunk/; revision=33708
2008-05-26 11:47:47 +00:00
Daniel Reimer
2b7e19ea24 Bug 3275: Italian resource translation update by Paolo Devoti (devotip@tiscali.it)
Bug 3277: Lithuanian translation by Vytis Girdzijauskas (cman@cman.us)

svn path=/trunk/; revision=33707
2008-05-25 22:44:32 +00:00
Daniel Reimer
2a4639ca5d Bug 3275: Italian resource translation update by Paolo Devoti (devotip@tiscali.it)
Bug 3277: Lithuanian translation by Vytis Girdzijauskas (cman@cman.us)

svn path=/trunk/; revision=33705
2008-05-25 22:15:26 +00:00
KJK::Hyperion
b8ff60afe1 modified include/psdk/winnls.h
Added definitions for NormalizeString and IsNormalizedString (Vista and later)
   Correct an embarassing bug (some macros were terminated with ";", shame shame)

added      nls
added      nls/3rdparty
added      nls/3rdparty/icu
   We officially welcome IBM's excellent ICU4C library for Unicode support to our humble source tree. May our marriage be long, happy and fertile.

added      nls/3rdparty/icu4ros.rbuild
added      nls/dll
added      nls/dll/normaliz_redist
added      nls/dll/normaliz_redist/normaliz.cpp
added      nls/dll/normaliz_redist/normaliz.def
added      nls/dll/normaliz_redist/normaliz_redist.rbuild
added      nls/lib
added      nls/lib/normalize
added      nls/lib/normalize/normalize.cpp
added      nls/lib/normalize/normalize.rbuild
added      nls/nls.rbuild
modified   ReactOS-generic.rbuild
   Incomplete implementation of the redistributable normaliz.dll DLL for Unicode normalization, as a technical preview of what's to come from the use of ICU4C - namely, straightforward, painless implementation of complex algorithms and several megabytes worth of data, with a Win32-compatible interface on top. Currently disabled in the build until basic testing is over.

Watch this space for more of the same.

svn path=/trunk/; revision=33703
2008-05-25 21:00:08 +00:00
Magnus Olsen
b5ab26f7a3 implement LpkDllInitialize for lpk
svn path=/trunk/; revision=33701
2008-05-25 17:52:28 +00:00
Magnus Olsen
b2744bf34b fix right export prefix for LpkPresent.
svn path=/trunk/; revision=33700
2008-05-25 17:51:15 +00:00
Magnus Olsen
ed494cbfbc add dll lpk it is stub for now.
it will be use of gdi32 and user32 later 

svn path=/trunk/; revision=33699
2008-05-25 15:22:09 +00:00
Colin Finck
b1f83f040a Update README.WINE about the crypt32 sync
svn path=/trunk/; revision=33698
2008-05-25 14:16:14 +00:00
Magnus Olsen
b86be5acd2 started added test for InitializeLpkHooks
this tests are not completed more will follow.
this is the frame work for testing InitializeLpkHooks


svn path=/trunk/; revision=33697
2008-05-25 12:04:06 +00:00
Eric Kohl
d53c67dc50 Add the general user properties page. Settings are visible but cannot be changed yet.
svn path=/trunk/; revision=33696
2008-05-25 11:50:56 +00:00
Gregor Brunmar
e1ae479d5a Reinstated DIALOG_get_info() based of Wine's implementation, but with some modifications. This makes us pass the last 6 failed dialog wine tests.
svn path=/trunk/; revision=33695
2008-05-25 11:12:42 +00:00
Dmitry Chapyshev
eaaa829ad8 - Start implementing WDM Audio driver mapper
svn path=/trunk/; revision=33694
2008-05-25 10:41:08 +00:00
Dmitry Chapyshev
8ad6c02608 - Add baseaddress for wdmaud.drv
svn path=/trunk/; revision=33693
2008-05-25 10:39:34 +00:00
Dmitry Chapyshev
bb3f867eee - Add stubs WDM Audio driver mapper
svn path=/trunk/; revision=33691
2008-05-25 09:34:14 +00:00
Gregor Brunmar
21f3bde4eb * Changed to correct signature of NtUserGetClassName()
* Implemented correct behaviour in GetRealWindowClass(), but in reality just shifted the todo parts to NtUserGetClassName() instead.

svn path=/trunk/; revision=33689
2008-05-25 08:36:30 +00:00
Pierre Schweitzer
61350d2a48 Fixed a bug in GetClipboardFormatNameA
svn path=/trunk/; revision=33688
2008-05-25 08:30:33 +00:00
Johannes Anderwald
cdc5cb8cf5 - fix wait functions for console handles
- bug 3273

svn path=/trunk/; revision=33687
2008-05-25 07:05:34 +00:00
Magnus Olsen
73e46408e9 implemeted test for GdiDeleteLocalDC, GdiReleaseLocalDC, GdiSetAttrs
tested in xp/vista/reactos and works no fault report.

svn path=/trunk/; revision=33681
2008-05-24 22:42:46 +00:00
Magnus Olsen
287182ff5f implemeted test for GdiConvertBitmap, GdiConvertBrush, GdiConvertDC, GdiConvertFont, GdiConvertPalette, GdiConvertRegion, GdiGetLocalBrush, GdiGetLocalDC
tested in xp/vista/reactos and works no fault report.

svn path=/trunk/; revision=33680
2008-05-24 22:20:31 +00:00
Colin Finck
1528124748 Samuel Serapión (samdwise51 AT gmail DOT com):
- Sync the advapi32 crypt functions to Wine 1.0-rc2, this way we pass some more winetests.

Changes by myself:
- Implement SystemFunction036 (RtlGenRandom) as the Wine equivalent is based on /dev/urandom, so that it cannot be used.
  Warning: This function uses the pseudo random number generator RtlRandom. It should better be implemented using a crypto-safe random number generator!

svn path=/trunk/; revision=33679
2008-05-24 22:16:15 +00:00
Ged Murphy
e96c16aa1e Add functionality to allow dll injection for all apps which link to user32.
svn path=/trunk/; revision=33678
2008-05-24 21:21:58 +00:00
Marc Piulachs
22ab89339c - Move every x86 HAL to it's own .rbuild file
- Take advantage of r33676

svn path=/trunk/; revision=33677
2008-05-24 20:32:44 +00:00
Marc Piulachs
1915f51cbc - Add "base" and "root" support to ImportLibrary. <importlibrary definition="../hal/hal_i386.def" /> -> <importlibrary base="hal" definition="hal_i386.def" />
svn path=/trunk/; revision=33676
2008-05-24 20:31:23 +00:00
Magnus Olsen
ff1a74c0da merge from win32k-gdi-dx r33674 Implement GdiAddGlsBounds
svn path=/trunk/; revision=33675
2008-05-24 19:02:23 +00:00
Marc Piulachs
9ea0a62432 - remove 'basename' , no such attribute exists for <importlibrary>
svn path=/trunk/; revision=33672
2008-05-24 15:33:49 +00:00
Pierre Schweitzer
0d8cccef41 Set default return of IRP_MJ_QUERY_INFORMATION to STATUS_INVALID_PARAMETER
svn path=/trunk/; revision=33671
2008-05-24 09:06:53 +00:00
Pierre Schweitzer
e2d4593c45 - Imported dciman32.dll from Wine HEAD
- Added it to bootcd
- Update README.WINE

svn path=/trunk/; revision=33670
2008-05-24 08:42:53 +00:00
Magnus Olsen
c11d2b1e4f Fixed at typo from me thx Daniel Zimmermann (netzimme at aim dot com) that notes it.
svn path=/trunk/; revision=33666
2008-05-23 19:12:07 +00:00
Magnus Olsen
389b7a34fb add test for NtUserGetTitleBarInfo patch by Daniel Zimmermann (netzimme at aim dot com)
tested on xp sp3 by me

See issue #3266 for more details.

svn path=/trunk/; revision=33665
2008-05-23 18:22:39 +00:00
Magnus Olsen
3797dab429 Fixed memory leak in w32knapi if it fail found gdihandle table patch by Daniel Zimmermann (netzimme at aim dot com)
See issue #3266 for more details.

svn path=/trunk/; revision=33664
2008-05-23 18:14:15 +00:00
Pierre Schweitzer
7625429990 No need to keep linux-ntfs:
- it's outdated
- more docs are available

svn path=/trunk/; revision=33663
2008-05-23 18:01:42 +00:00
Aleksey Bragin
494bf7baae - msiexec is GUI app, not CUI.
svn path=/trunk/; revision=33662
2008-05-23 17:55:30 +00:00
Johannes Anderwald
1f9058bdaf - add stubs for GetTraceEnableFlags, GetTraceEnableLevel, RegisterTraceGuidsA, RegisterTraceGuidsW and UnregisterTraceGuids
svn path=/trunk/; revision=33661
2008-05-23 16:31:22 +00:00
Johannes Anderwald
3dd48684d5 - add prototypes for GetTraceEnableLevel, RegisterTraceGuidsA, RegisterTraceGuidsW, UnregisterTraceGuids
- add WMIPREQUEST, TRACE_GUID_REGISTRATION definition
- add wmistr.h header

svn path=/trunk/; revision=33660
2008-05-23 16:29:05 +00:00
Aleksey Bragin
20263a1377 - Revert 32675 (enabling usage of the cache bitmap). It was just hiding the real bug fixed in r33633, and the bitmap code seems to not be finished (e.g. "out of CacheSeg space" bug).
svn path=/trunk/; revision=33659
2008-05-23 14:40:50 +00:00
James Tabor
d05a01709b Add more data for extended clip object.
svn path=/trunk/; revision=33658
2008-05-23 12:50:46 +00:00
Magnus Olsen
3b4c9ded42 Implemtened : NtUserGetTitleBarInfo
This code was writen by me and Daniel Zimmermann (netzimme at aim dot com) and it is base on wine version, 


See issue #3266 for more details.

svn path=/trunk/; revision=33657
2008-05-23 05:46:22 +00:00
James Tabor
540035b99a Removed w.flags from dc.h update all related.
svn path=/trunk/; revision=33656
2008-05-23 01:46:55 +00:00
James Tabor
f5aa4b5c0c Move W structure back into dc.h and added the clip object for dcobj.
svn path=/trunk/; revision=33655
2008-05-23 01:11:25 +00:00
Marc Piulachs
62413f7a09 - Remove crtdll reference. All Win32* modules implicitly link msvcrt.
svn path=/trunk/; revision=33654
2008-05-23 00:57:32 +00:00
James Tabor
6f3798d0cf Removed unused code from Arc. Removed old saveLevel and hSelf, use DcLevel. Other changes to region and clipping.
svn path=/trunk/; revision=33653
2008-05-23 00:29:08 +00:00
Colin Finck
6eb7885be4 Apply the fix from r32705 to C and C++ files as well.
This fixes the "rebuild-everything-on-every-change" bug (at least for me)
For the record, this is broken since r32595.

Note: If you have building problems after this commit when building a single module, please try to revert only my changes from lines 1847 to 1850.

svn path=/trunk/; revision=33652
2008-05-23 00:11:52 +00:00
Timo Kreuzer
89deeaf7c4 fix a cast and indentation
svn path=/trunk/; revision=33651
2008-05-22 23:16:35 +00:00
Steven Edwards
5c30086951 Sync GetTempPathW with current Wine. This should help with some
installers the depend on the USERPROFILE variable being present. Does
not fix the Word 2003 viewer install but changes the behavior slightly
and is more correct.


svn path=/trunk/; revision=33650
2008-05-22 21:07:41 +00:00
Marc Piulachs
09a85aaedd - express PCH location in a more correct way
svn path=/trunk/; revision=33649
2008-05-22 20:45:58 +00:00
Johannes Anderwald
3460e9ab3c - add GetTraceEnableFlags prototype
svn path=/trunk/; revision=33648
2008-05-22 20:26:53 +00:00
Aleksey Bragin
e5196d85e3 - Actually remove the exports.
svn path=/trunk/; revision=33647
2008-05-22 19:44:43 +00:00
Aleksey Bragin
8522c6766e Stefan Ginsberg <stefan__100__@hotmail.com>
- Remove KiRosPrintAddress export from ntoskrnl_i386.def, and CcRos* apis too.
- Make win32k use KeRosDumpStackFrames instead of KiRosPrintAddress.

svn path=/trunk/; revision=33646
2008-05-22 19:31:49 +00:00
Johannes Anderwald
1e5dd70adb - fix integer to string representation
- patch by Carlo Bramini
- bug 2437

svn path=/trunk/; revision=33645
2008-05-22 17:40:01 +00:00
Johannes Anderwald
27ee5b62b8 - define _WMI_SOURCE_ macro
- include evntrace header
- implement stubs for GetTraceLoggerHandle and TraceEvent and also export them

svn path=/trunk/; revision=33644
2008-05-22 17:23:47 +00:00
Johannes Anderwald
63477f9dd4 - check if PEVENT_TRACE_HEADER is already defined
- define WMIAPI macro
- add TraceEvent, GetTraceLoogerHandler prototypes
- PEVENT_TRACE_HEADER should not be defined in the NDK

svn path=/trunk/; revision=33643
2008-05-22 17:12:42 +00:00
Timo Kreuzer
5db224e2b9 implement SPI_GET/SETSTICKYKEYS, SPI_GET/SETFILTERKEYS, SPI_GET/SETTOGGLEKEYS, SPI_GET/SETSERIALKEYS, SPI_GET/SETMOUSEKEYS, SPI_GET/SETKEYBOARDPREF, SPI_GET/SETSHOWSOUNDS, SPI_GET/SETACCESSTIMEOUT
makes access.cpl start again.
See issue #3133 for more details.

svn path=/trunk/; revision=33640
2008-05-22 14:51:01 +00:00
Timo Kreuzer
41b38a2ea1 fix a typo
svn path=/trunk/; revision=33639
2008-05-22 14:36:25 +00:00
KJK::Hyperion
dc75130891 Patch by Alex Ionescu <alex.ionescu@reactos.org>
See issue #3054 for more details.

svn path=/trunk/; revision=33637
2008-05-22 13:40:42 +00:00
KJK::Hyperion
1fe8b5d775 Reverting r33635
svn path=/trunk/; revision=33636
2008-05-22 13:37:27 +00:00
KJK::Hyperion
7184323272 Patch by Alex Ionescu <alex.ionescu@reactos.org>
See issue #3116 for more details.

svn path=/trunk/; revision=33635
2008-05-22 13:19:32 +00:00
James Tabor
c379e6ad12 Add NtGdiGetRandomRgn iCode values.
svn path=/trunk/; revision=33634
2008-05-22 12:51:53 +00:00
KJK::Hyperion
b16ac9683a - Remove WINE-isms from KeDeviceQueue code
- Fix memory corruption that happened pretty much everytime you pressed a key or moved the mouse -- reponsible for countless crashes, including the famous ASSERT during 1-stage setup.
 - Remove anti-memory-corruption-workaround from VFAT
 - Note: If you're going to do use device queues in your driver, please learn how. Kthxbye.
Patch by Alex Ionescu <alex.ionescu@reactos.org>
_____

Alex,
 Marry me,
KJK::Hyperion
XOXOXO

See issue #3116 for more details.

svn path=/trunk/; revision=33633
2008-05-22 11:46:46 +00:00
Magnus Olsen
af1376546d implemented GetTitleBarInfo in user32 it works now same as xp/vista left todo implemented it proper in win32k on the syscall NtUserGetTitleBarInfo that is stub at moment.
svn path=/trunk/; revision=33632
2008-05-22 08:39:24 +00:00
Aleksey Bragin
483ac0fe6c - Fix a typo in this header's guard, prevents multiple inclusion.
svn path=/trunk/; revision=33631
2008-05-22 07:17:16 +00:00
James Tabor
f9814c9de4 Fix behavior if bmi null in NtGdiCreateDIBSection. Start internal functions for regions, includes a wine port get_region_type.
svn path=/trunk/; revision=33629
2008-05-21 22:32:13 +00:00
Hervé Poussineau
1136b9642b Fix precompiled header name.
According to http://gcc.gnu.org/onlinedocs/gcc/Precompiled-Headers.html , precompiled header name *must be* the name of the header followed by .gch
See issue #3263 for more details.

svn path=/trunk/; revision=33627
2008-05-21 18:00:40 +00:00
Hervé Poussineau
b18f57e3fc Disable precompiled headers for files which are in more than one module
(Precompiled header name have a fixed name, but modules may have different compile options)

svn path=/trunk/; revision=33626
2008-05-21 17:57:24 +00:00
Aleksey Bragin
3c2ec47c4a - Fix build.
svn path=/trunk/; revision=33624
2008-05-21 16:19:41 +00:00
Aleksey Bragin
04d1f6f145 Stefan Ginsberg <stefan__100__@hotmail.com>
- Fix NtFlushVirtualMemory definition in PSDK.
- Fix NtFlushVirtualMemory's usage in kernel32.
- Fix FlushViewOfFile's prototype (DWORD -> SIZE_T, as it is in PlatformSDK).
- Add a C_ASSERT definition to winnt.h.
- Change a meaningless ASSERT to a C_ASSERT.

svn path=/trunk/; revision=33623
2008-05-21 16:10:00 +00:00
Johannes Anderwald
fad6923fb5 - check input parameters in LoadString[A|W]
- fixes a winetest issue
- patch by Kamil Hornicek (Pigglesworth)

svn path=/trunk/; revision=33622
2008-05-21 15:33:38 +00:00
Aleksey Bragin
dbc9964533 - Fix a few typos in SHARED_CACHE_MAP definition in NDK.
- Minor fix to BITMAP_RANGE structure in ntifs.h.

svn path=/trunk/; revision=33621
2008-05-21 15:28:43 +00:00
Aleksey Bragin
90c42a08eb - Convert imagehlp's .def file to .spec format (keeping same ordinals, etc), since ---enable-stdcall-fuxup does not really work for linking.
- Uncomment function declarations in psdk/imagehlp.h and thus make crypt32 use them to prevent stack corruption (it was generating implicit declarations warnings).

svn path=/trunk/; revision=33620
2008-05-21 14:43:29 +00:00
Magnus Olsen
23722e0cb4 filter the higher part of DWORD for return value of VBE return value from the BIOS
this will make allot ATI card working proper. thx again bear windows for the info and mail response which card need it, more info for this issue at http://www.bearwindows.boot-land.net/vbemp.htm#10

svn path=/trunk/; revision=33619
2008-05-21 13:47:22 +00:00
Timo Kreuzer
788d425ef1 - Fix wrong debug output when a process is terminated, by deleting the it's objects in a proper order, fixes bug 2954
- remove Fireball's, ugly nasty hack.
- Fix debug output to show the right problem
- For all people who think the handle table might be messed up: add a function that validates the handle table integrity after a process is closed, when GDI_DEBUG is defined.
- fix the BaseObjects hHmgr field when converting an object to a stock object.
- move all GDI_DEBUG stuff into it's own file

See issue #2954 for more details.

svn path=/trunk/; revision=33618
2008-05-20 20:39:32 +00:00
Marc Piulachs
c912e98ba3 - Added 'MessageHeader' module type for handling .mc files
- turn .mc generated files (RC & Headers) into real dependencies

svn path=/trunk/; revision=33616
2008-05-20 19:46:14 +00:00
Marc Piulachs
3c976797cd - Add svchost to build
svn path=/trunk/; revision=33615
2008-05-20 19:33:00 +00:00
Dmitry Chapyshev
413660b2dc - Add code for getting language name
svn path=/trunk/; revision=33614
2008-05-20 18:02:39 +00:00
Johannes Anderwald
0f40cce788 - monitor device name start with "\\.\\DISPLAY<number>" than with "\\??\\DISPLAY<number>"
- implement handling MONITOR_DEFAULTTOPRIMARY in IntGetMonitorsFromRect
- implement handling MONITOR_DEFAULTTONULL in NtUserMonitorFromWIndow
- ReactOS now passes all user32_winetest monitor tests

svn path=/trunk/; revision=33613
2008-05-20 15:20:28 +00:00
Johannes Anderwald
dd8f25a940 - zero DISPLAY_DEVICEW struct before passing it to NtUserEnumDisplayDevices
- copy string the resulting strings on success but on failure
- fix 2 memory leaks in EnumDisplayMonitors
- fixes a user32_winetest error

svn path=/trunk/; revision=33612
2008-05-20 14:57:37 +00:00
Ged Murphy
45a63ea020 iterate the number of sections, not the number of directory entries
svn path=/trunk/; revision=33611
2008-05-20 14:20:54 +00:00
Johannes Anderwald
0b0ec52a01 - remove unneeded cast in GetClipboardData
- use WideCharToMultiByte instead of RtlUnicodeStringToAnsiString
- fix memory leak in GetClipboardFormatNameA
- ReactOS now passes all user32_winetest.exe clipboard test (previously 2 failures)

svn path=/trunk/; revision=33610
2008-05-20 13:42:17 +00:00
Aleksey Bragin
7347f5ab15 Stefan Ginsberg <stefan__100__@hotmail.com>
- Fix the commented out export in win32k.def and fix the definition for EngGetCurrentCodePage.
- Add RtlGetDefaultCodePage to NDK headers.

svn path=/trunk/; revision=33609
2008-05-20 13:21:21 +00:00
Dmitry Chapyshev
be3257fbc9 - Add kbsdll to bootcd
svn path=/trunk/; revision=33608
2008-05-20 12:54:36 +00:00
Dmitry Chapyshev
0f37c3c8f0 - Added kbsdll to install hooks (does not work on ReactOS). To switch layouts temporarily used keys Left Alt + F10
svn path=/trunk/; revision=33607
2008-05-20 12:53:31 +00:00
Daniel Reimer
14f90f0f92 Bug 3256: Greek translation update for usetup by Apostulos Alexandris (djapal@gmail.com)
Bug 3261: Korean translation of mstsc by Seungju Kim (admin@manateeshome.com)

svn path=/trunk/; revision=33606
2008-05-20 08:49:40 +00:00
James Tabor
1879a9fa70 Win32k:
- GDI_TABLE_ENTRY ProcessId is a dword or int not a short.
- Notice also the pid for f5e, it's set GDI_OBJ_HMGR_NONE with pUser 0. Our DCE code handling pUser is right with that respect.
- Tested wine gdi32: dc gdiobj and user32: dce, all result same as before.

 object list for DC type objects owned by ALL PIDs
   I,   handle,   Lock, sCount,  pid,       pv,     objt, unique,  Flags,    pUser,    Tlock
--------------------------------------------------------------------------------------------
 f4c, ca010f4c,      0,      0,  d60, e2ebc2a0,       DC,   ca01,      0, 00f80570, 00f80570
 f5e, 60010f5e,      0,      0, 80000012, e28ce008,       DC,   6001,      4, 00000000, 00000000
 f9d, b4010f9d,      0,      0,  d60, e2ee6008,       DC,   b401,      0, 00350000, 00350000


svn path=/trunk/; revision=33605
2008-05-20 02:54:33 +00:00
Aleksey Bragin
7e73882c3e Stefan Ginsberg <stefan__100__@hotmail.com>
- Export undocumented Win32k functions and add stubs for them (information about prototypes if from Alex). Also implement and export a couple of documented APIs, and a bunch of APIs we implement but did not export.

svn path=/trunk/; revision=33604
2008-05-19 20:47:31 +00:00
Marc Piulachs
e9cfeb1071 - Removed hard coded bootsector from *Iso module types and express it with rbuild syntax.
- Enabled installname attribute and removed hard coded output file name from *Iso module types. We can now use properties : ReactOS_$(arch).iso > ReactOS_i386.iso

svn path=/trunk/; revision=33603
2008-05-19 20:46:46 +00:00
Hervé Poussineau
eb2daf17cc Use dynamic traces
svn path=/trunk/; revision=33602
2008-05-19 20:34:04 +00:00
Aleksey Bragin
1d020c54d9 - Ugly hack about corrupted KernelData pointer, which is being accessed. Hacks around bugs like bug 2954.
See issue #2954 for more details.

svn path=/trunk/; revision=33601
2008-05-19 20:27:48 +00:00
James Tabor
2a28b8de6b Add correction for GetClassName.
svn path=/trunk/; revision=33600
2008-05-19 19:23:02 +00:00
Gregor Brunmar
e657a0d73a ReactOS leads you to mysterious API calls. Added tests for RealGetWindowsClass() with some strange behaviours for later use when implementing RealGetWindowClass().
svn path=/trunk/; revision=33599
2008-05-19 17:50:39 +00:00
Magnus Olsen
67e132ff6b Bugfix EngBitBlt it did miss the prefix @44 in the def file
svn path=/trunk/; revision=33598
2008-05-19 10:20:39 +00:00
Aleksey Bragin
9cc4675c59 - Implement restoring DRx registers if the thread is being debugged.
svn path=/trunk/; revision=33597
2008-05-19 10:04:21 +00:00
Hervé Poussineau
8ee5bedcd5 Implement FSCTL_SET_COMPRESSION
svn path=/trunk/; revision=33596
2008-05-18 19:22:31 +00:00
Hervé Poussineau
9a96254da9 Add a key to change the keyboard layout on the livecd
svn path=/trunk/; revision=33594
2008-05-18 18:37:17 +00:00
Hervé Poussineau
cf5b6bb2e2 Display again the 'New' context menu, which was broken in r30366
See issue #3183 for more details.

svn path=/trunk/; revision=33592
2008-05-18 18:07:00 +00:00
Hervé Poussineau
0485103593 Add stub implementation for ElfrOpenELW()
svn path=/trunk/; revision=33590
2008-05-18 16:14:34 +00:00
Marc Piulachs
0ac3f1989d - remove now unneeded files
svn path=/trunk/; revision=33589
2008-05-18 16:04:19 +00:00
Marc Piulachs
4442c49eca - small fix
svn path=/trunk/; revision=33588
2008-05-18 16:01:34 +00:00
Hervé Poussineau
fdb3291c6b Send an empty string, as required by the documentation
See issue #3202 for more details.

svn path=/trunk/; revision=33587
2008-05-18 16:01:29 +00:00
Marc Piulachs
ac77d9d3a6 - Moved commands outside TechBot.Library to TechBot.Commands.Common and TechBot.Commands.MSDN except for Command base classes
- Made TechBot more configurable through .config files
- Code refactoring
- Removed automatic parameter parsing support to make everyone happy

svn path=/trunk/; revision=33586
2008-05-18 15:54:43 +00:00
Hervé Poussineau
6d51a10a1b Make eventlog RPC interface more compatible with MS Windows
svn path=/trunk/; revision=33585
2008-05-18 15:29:53 +00:00
Hervé Poussineau
8163d0f36b Replace ERR() by WARN() on error codes which can be normal
svn path=/trunk/; revision=33584
2008-05-18 15:26:24 +00:00
Hervé Poussineau
744f5df30f Fix build
svn path=/trunk/; revision=33583
2008-05-18 15:23:52 +00:00
Hervé Poussineau
053940df37 Add ms-dtyp.idl file, and use it
svn path=/trunk/; revision=33582
2008-05-18 15:17:12 +00:00
Dmitry Chapyshev
b590073eb4 - Add "ReactOS Standard" and "ReactOS Classic" color schemes
- Add registry keys for cursors schemes

svn path=/trunk/; revision=33581
2008-05-18 15:14:04 +00:00
Dmitry Chapyshev
46dd23149f - Update icons
svn path=/trunk/; revision=33580
2008-05-18 15:06:30 +00:00
Eric Kohl
653089313c - Rename CheckUserName() to CheckAccountName() and move it to a new source file (misc.c).
- Also use CheckAccountName() to check group names for illegal characters.

svn path=/trunk/; revision=33579
2008-05-18 14:59:44 +00:00
Johannes Anderwald
e5495f7f62 - default to seperator item type
- add the styles grayed and disabled in case they have not been added
- initialize allocated user buffer to zero
- allow support for bitmap items with MF_HELP style
- check result of WideCharToMultiByte
- always zero terminate a string buffer when enough space is available

svn path=/trunk/; revision=33578
2008-05-18 14:18:00 +00:00
Hervé Poussineau
36ce0cd8af Forward all IRPs, even unknown ones
svn path=/trunk/; revision=33577
2008-05-18 11:45:26 +00:00
Gregor Brunmar
5dd0513c53 Reverted winesync's wrongly updated msi.rbuild to get rid of "always build msi" problem again.
svn path=/trunk/; revision=33576
2008-05-18 11:45:17 +00:00
Gregor Brunmar
d480eb8884 Reminder to self: Don't rely on MSDN. This should get taskmgr working again.
svn path=/trunk/; revision=33575
2008-05-18 11:41:32 +00:00
Aleksey Bragin
b97e40c655 - Add a comment describing behavior in case of HvSyncHive failure.
svn path=/trunk/; revision=33574
2008-05-18 11:26:36 +00:00
Colin Finck
5508c5cbb2 Make 1000% sure that any regedit is started by launching regedit from the search path if the GetWindowsDirectory call failed. (suggested by Alex on ros-dev)
svn path=/trunk/; revision=33573
2008-05-18 11:24:56 +00:00
Colin Finck
5bc725550f Oops, forgot to link to shlwapi now that we use PathAppend.
svn path=/trunk/; revision=33572
2008-05-18 11:08:11 +00:00
Colin Finck
722735c754 Check if the GetWindowsDirectory call succeeded and use PathAppend to prevent a buffer overflow, when WinDir + "\regedit.exe" > MAX_PATH
svn path=/trunk/; revision=33571
2008-05-18 10:56:31 +00:00
Dmitry Chapyshev
b00f2fbdd7 - Add hotkeys settings to registry
svn path=/trunk/; revision=33570
2008-05-18 10:37:32 +00:00
Pierre Schweitzer
a0f56dbcb8 Synced uxtheme.dll with Wine HEAD
svn path=/trunk/; revision=33569
2008-05-18 10:03:29 +00:00
Hervé Poussineau
922e25b702 Free memory only we allocated it
svn path=/trunk/; revision=33568
2008-05-18 09:34:31 +00:00
Dmitry Chapyshev
e3a477e256 - Implement "Advanced Key Settings" and "Change Key Sequence" dialogs
svn path=/trunk/; revision=33567
2008-05-18 09:06:48 +00:00
Gregor Brunmar
5b23dbf12b More correct include for PSEH support
svn path=/trunk/; revision=33566
2008-05-18 08:40:03 +00:00
Eric Kohl
02d1ef26f3 Check user name for illegal characters when it is changed from within the user list.
svn path=/trunk/; revision=33565
2008-05-17 22:33:04 +00:00
Pierre Schweitzer
8fdd4d9b2a Forgot to commit urlmon.dll tests synced with Wine HEAD
svn path=/trunk/; revision=33564
2008-05-17 22:29:12 +00:00
Pierre Schweitzer
0cbcee9d20 Removed wrong entrypoint
svn path=/trunk/; revision=33563
2008-05-17 21:52:51 +00:00
Colin Finck
ab189e51e4 Change the LCID for the default Bulgarian keyboard layout from 00040402 to 00000402.
See issue #3208 for more details.

svn path=/trunk/; revision=33562
2008-05-17 21:01:08 +00:00
Colin Finck
92545f124e - Minor fixes to work more like WinXP's cmd
- Removed the now obsolete "seta_test.cmd"

svn path=/trunk/; revision=33561
2008-05-17 20:07:31 +00:00
Colin Finck
b655fc4f5e Add a testing suite for CMD based on CMD scripts.
Of course, ReactOS' cmd doesn't work at all with the framework at the moment :-)

Some tests were taken from "seta_test.cmd" by Royce. (see file headers)

svn path=/trunk/; revision=33560
2008-05-17 20:01:21 +00:00
The Wine Synchronizer
a5d311777a Autosyncing with Wine HEAD
svn path=/trunk/; revision=33559
2008-05-17 19:46:54 +00:00
The Wine Synchronizer
0617a6d452 Autosyncing with Wine HEAD
svn path=/trunk/; revision=33558
2008-05-17 19:46:01 +00:00
Eric Kohl
fdaf506151 Add code to create, delete and rename user groups.
svn path=/trunk/; revision=33557
2008-05-17 16:06:54 +00:00
Marc Piulachs
107c3d29cb -make rbuild files XML compliant by adding the XInclude namespace
-sync winetest to WINE-rc1
-add a rbuild file for winetest (not added to build yet)
note: minor winetest modifications should be made like loading tests from a folder at startup

svn path=/trunk/; revision=33556
2008-05-17 15:44:47 +00:00
Eric Kohl
95b8c49444 Limit the maximum user name length to 20 characters when a user name is changed from within the users list.
svn path=/trunk/; revision=33555
2008-05-17 15:19:01 +00:00
Eric Kohl
9e6e290b4f New user dialog: Implement user options properly.
svn path=/trunk/; revision=33554
2008-05-17 14:00:39 +00:00
James Tabor
4f5b849245 Add DCE pointer to window class. Start support for real Class DCEs.
svn path=/trunk/; revision=33553
2008-05-17 11:55:24 +00:00
Pierre Schweitzer
4fc98cbda8 Synced urlmon.dll with Wine HEAD.
This *does not* fix Downloader, but it now returns an error message.

svn path=/trunk/; revision=33552
2008-05-17 10:36:13 +00:00
Marc Piulachs
6cf68480b9 Add ROS_BUILDENGINE variable to determine the location of rbuild
- Allows using an rbuild executable other than the one found in the same source tree (tools\rbuild)

svn path=/trunk/; revision=33551
2008-05-17 09:56:15 +00:00
Hervé Poussineau
cc899cd2b7 Add fusion.idl from Wine
svn path=/trunk/; revision=33550
2008-05-17 09:53:01 +00:00
Pierre Schweitzer
77d213e6cf Limit introduction string to 256 letters (no more, not less)
svn path=/trunk/; revision=33549
2008-05-17 09:45:13 +00:00
Colin Finck
6209e87ead Make 100% sure that the correct "regedit.exe" is launched by using GetWindowsDirectory and appending "\regedit.exe" as suggested by Alex on ros-dev.
svn path=/trunk/; revision=33547
2008-05-17 09:39:36 +00:00
Colin Finck
0b51d20053 Revert the _T('x') to 'x' changes from my previous commit.
Although both methods work properly, _T('x') seems to be the more convenient method used throughout cmd.

svn path=/trunk/; revision=33546
2008-05-17 09:23:21 +00:00
Colin Finck
3b1370bd40 - Fix some warnings spotted by MSVC
- Define cmd_exit to ExitProcess if _DEBUG_MEM is not defined.
  Fixes compilation, when _DEBUG_MEM is turned off.

svn path=/trunk/; revision=33545
2008-05-17 08:49:39 +00:00
Pierre Schweitzer
982ea317be Apply the same fix to dwnl
svn path=/trunk/; revision=33544
2008-05-17 08:20:32 +00:00
Pierre Schweitzer
7f3429142d Zero memory using HeapAlloc flag
Spotted by Stefan Ginsberg <stefan__100__@hotmail.com>

svn path=/trunk/; revision=33543
2008-05-17 08:19:23 +00:00
Hervé Poussineau
ab0acbf7ef Remove IRP_MJ_QUERY_INFORMATION / FileNetworkOpenInformation
Fix misc bugs

svn path=/trunk/; revision=33542
2008-05-16 19:00:47 +00:00
Colin Finck
2b6a8f06f5 Carlo Bramini (carlo DOT bramix AT libero DOT it):
- Implemented "regedt32", which just calls "regedit"
See issue #3248 for more details.

svn path=/trunk/; revision=33541
2008-05-16 16:53:36 +00:00
Pierre Schweitzer
f4de98290f Check if memory was goodly allocated and zero it before use
svn path=/trunk/; revision=33540
2008-05-16 16:13:04 +00:00
Marc Piulachs
3195cffc1f - Add specific properties to the keyboardlayout module type. They will assist us on autogenerating/updating the [keyboardLayout] & [Files.KeyboardLayout] from txtsetup and registry information automatically in the near future
note: All rbuild files in reactos\dll\keyboard must be updated to contain the follwing information:

<module name="kbdusl" type="keyboardlayout" (...) description="US Dvorak for left hand" lcid="00030409" layoutId="001A" layoutnameresid="5027" >

svn path=/trunk/; revision=33539
2008-05-15 22:38:18 +00:00
Marc Piulachs
3b3bd169e9 - change module type kernelmodedll -> keyboardlayout
svn path=/trunk/; revision=33538
2008-05-15 22:23:34 +00:00
Hervé Poussineau
768bae5356 Improve filter command by changing its syntax
Syntax: filter [error|warning|trace|info|level]+|-[componentname|default]

svn path=/trunk/; revision=33537
2008-05-15 20:43:26 +00:00
Hervé Poussineau
c79d92ab52 Fix debug output of strings
svn path=/trunk/; revision=33536
2008-05-15 20:29:50 +00:00
Gregor Brunmar
c65c9124fa Oops, didn't see the commented section.
svn path=/trunk/; revision=33535
2008-05-15 20:13:40 +00:00
Gregor Brunmar
937c311155 Synced listbox LB_SETCURSEL behaviour with Wine, to pass a couple of more winetests.
svn path=/trunk/; revision=33534
2008-05-15 20:11:26 +00:00
Hervé Poussineau
2f9c333ded cmd: replace static traces by dynamic ones
svn path=/trunk/; revision=33533
2008-05-15 20:02:05 +00:00
Gregor Brunmar
bc59a11cc8 Patch by Kamil Hornicek ( tykef AT atlas DOT cz ):
* Fixed DialogBoxParam to set correct error values and returning correct error codes

svn path=/trunk/; revision=33532
2008-05-15 19:07:46 +00:00
Marc Piulachs
eb3bf8718c - Add specific module type for keyboard layouts
- Added a description attribute to modules
- Added a lcid attribute to modules (KeyboardLayout only)

svn path=/trunk/; revision=33531
2008-05-15 14:46:15 +00:00
Colin Finck
d2bc8a879f - Rename the LICINFO structure to LIC_CONTEXT as LICINFO is already used in one of the official MS PSDK headers
- Replace IsUserAdmin (Wine API) with IsUserAnAdmin (shell32 API)

When you now add the PROCESSOR_POWER_INFORMATION structure to "precomp.h" (which was "accidentally omitted from WinNT.h" according to MSDN..), sysdm.cpl can be compiled using MSVC and the MS PSDK headers.

svn path=/trunk/; revision=33530
2008-05-15 14:33:33 +00:00
Johannes Anderwald
5961c78fbd - use menu identifier for menu items which have submenus
- menu item is a separator when id, flags and string is zero (verified with MS Visual 2005)
- set item separator MF_GRAYED as default style
- rewrite CheckMenuRadioItem
- check if checkmarks applies to more than one submenu
- check if checkmark was set
- dont set checkmark on menu item separator
- recurse into sub menus when available
- implement handling by MF_BYPOSITION
- ReactOS now passes now all tests from test_CheckMenuRadioItem in user32_winetest

svn path=/trunk/; revision=33529
2008-05-15 14:10:55 +00:00
Colin Finck
c091afbac7 Carlo Bramini (carlo DOT bramix AT libero DOT it):
- Simplify blitting the screen bitmap to the main window.

This also hides a ROS GDI bug, for which I'm going to open a new bug report.
See issue #3241 for more details.

svn path=/trunk/; revision=33528
2008-05-15 14:06:19 +00:00
Colin Finck
571960c0e1 Remove old leftovers from the time when shell32 was still synchronized with Wine
svn path=/trunk/; revision=33527
2008-05-15 13:55:26 +00:00
Marc Piulachs
e5eeaef2d2 - Added a new attribute 'internal' to 'Property' element. Internal properties are like regular properties but internal to rbuild (they are not included in the generated makefile)
svn path=/trunk/; revision=33526
2008-05-15 13:55:25 +00:00
Dmitry Chapyshev
18ef8485c0 - Start implement "Advanced Key Settings" and "Change Key Sequence" dialogs
- Update all resources

svn path=/trunk/; revision=33525
2008-05-15 12:38:12 +00:00
James Tabor
cb1555ed4f Add Client and Color transform objects.
svn path=/trunk/; revision=33524
2008-05-15 11:38:46 +00:00
Dmitry Chapyshev
3a5f1cf0b9 - Don't show applets on taskbar
svn path=/trunk/; revision=33523
2008-05-15 05:43:01 +00:00
James Tabor
ba435ce3c6 Implement Delete/CreateColorSpace and Get/SetColorSpace.
svn path=/trunk/; revision=33522
2008-05-15 02:15:10 +00:00
Aleksey Bragin
3b144199de Stefan Ginsberg <stefan__100__@hotmail.com>
- Spelling fixes.
- Remove deprecated and unused HalReleaseDisplayOwnership prototype.
- Fix handle leak in NtCreateProfile.
- Don't miss an OBTRACE debug print in ObpCloseHandle in STATUS_SUCCESS case.

svn path=/trunk/; revision=33521
2008-05-14 20:59:43 +00:00
Aleksey Bragin
5f265ed22c Stefan Ginsberg <stefan__100__@hotmail.com>
- Remove deprecated NEW_SCHEDULER define.
- Remove empty addition arc subdirectory in include/reactos/arc

svn path=/trunk/; revision=33520
2008-05-14 20:57:19 +00:00
Marc Piulachs
8724283c06 - update msiexec version
- add iexplorer

svn path=/trunk/; revision=33519
2008-05-14 17:32:19 +00:00
Marc Piulachs
7fd8e1f35f - sync msiexec to Wine 1.0-rc1
- change module type to win32cui inset of win32gui

svn path=/trunk/; revision=33518
2008-05-14 17:25:57 +00:00
Steven Edwards
fe11b99061 Add iexplore from Wine. (Disabled until shdocvw sync)
svn path=/trunk/; revision=33517
2008-05-14 17:24:40 +00:00
Eric Kohl
187c594643 - Check that the user name does not contain any illegal characters.
- Check that both passwords are the same.
- Limit the maximum user name length to 20 characters.

svn path=/trunk/; revision=33516
2008-05-14 17:02:17 +00:00
Dmitry Chapyshev
5a803bf1bf - Implement "Set Default" button
- Added checking whether there was already layout

svn path=/trunk/; revision=33515
2008-05-14 15:51:53 +00:00
Marc Piulachs
3c2cc97af2 - Set catalan default keyboard layout to spanish (no specific catalan kb layout exists)
- [FORMATTING] small code indent for LanguageList contents

svn path=/trunk/; revision=33514
2008-05-14 14:40:17 +00:00
Colin Finck
451afd1750 Carlo Bramini (carlo DOT bramix AT libero DOT it)
- Italian translations and various fixes to Magnify (fixes part of bug #3241 as well)

Changes by me:
- Shorten the german dialog string a bit, so that it won't be truncated. Strings for Static controls can only be 256 characters long.
  A french translator should change the text as well, because it's longer than 256 characters.

See issue #3245 for more details.

svn path=/trunk/; revision=33513
2008-05-14 14:18:11 +00:00
Marc Piulachs
57a0b9d688 - Implement generic list PageUp/PageDown
svn path=/trunk/; revision=33512
2008-05-14 14:01:06 +00:00
Ged Murphy
5e27385583 A few missing defines I needed
svn path=/trunk/; revision=33511
2008-05-14 11:38:10 +00:00
James Tabor
e07a1445f4 We have Brush Attributes already define in ntgdihdl.h, its a user space structure.
svn path=/trunk/; revision=33510
2008-05-13 23:54:20 +00:00
James Tabor
f366e9f6c1 Implement NtGdiSetVirtualResolution, SetSizeDevice and NtGdiScaleViewport/WindowExtEx. Getting ready to fix wine gdi mapping tests.
svn path=/trunk/; revision=33509
2008-05-13 23:26:02 +00:00
Colin Finck
d45bd86a52 Open the Explorer Shell Folder instead of providing a standalone Control Panel.
This changed enables us to remove lots of files from the app :-)

svn path=/trunk/; revision=33508
2008-05-13 21:39:25 +00:00
Colin Finck
6efebc63d2 Completely revamped "control.exe":
- Now uses shell32 functions for loading the control panel applets, so that the mutex is used as well (see bug #781)
- Supports all built-in command-line parameters, which are supported by the WinXP version.
  This also added support for opening shell folders.
- Loads other possible parameters from the registry.
- Only passes the command for RunControlPanel to each ListView item, not a whole struct whose members aren't needed later.
- Fixed memory leaks
- Added a header file
- Fixed indentation

This is the last version of the standalone Control Panel.
I will change it to call the Explorer shell folder in my next commit.
See issue #781 for more details.

svn path=/trunk/; revision=33507
2008-05-13 21:30:55 +00:00
Martin Fuchs
ce69bc85e4 display available command line options when started with "-?"
svn path=/trunk/; revision=33506
2008-05-13 21:01:09 +00:00
Eric Kohl
016fa01795 - Implement the creation and removal of user accounts.
- User name and passwords are NOT checked upon the creation of a new user account.
- Disable all unimplemented popup menu items.

svn path=/trunk/; revision=33505
2008-05-13 20:55:37 +00:00
Dmitry Chapyshev
381642f247 - Implement "Input language Properties" dialog
svn path=/trunk/; revision=33504
2008-05-13 20:23:23 +00:00
Gregor Brunmar
c5465c5668 Hopefully fixes bug #1110. Requested fixed by amine48rz.
See issue #1110 for more details.

svn path=/trunk/; revision=33503
2008-05-13 20:14:30 +00:00
Aleksey Bragin
286385fc87 - Remove a leftover.
svn path=/trunk/; revision=33502
2008-05-13 19:29:20 +00:00
Gregor Brunmar
6d97e286b5 Fixed spelling mistake from previous checkin
svn path=/trunk/; revision=33501
2008-05-13 18:12:08 +00:00
Gregor Brunmar
9736840986 NtUserBuildHwndList() returns NTSTATUS, not ULONG. More correct fix than 33483 to some of the winetest problems. Pass return value as out parameter instead.
svn path=/trunk/; revision=33500
2008-05-13 18:09:08 +00:00
KJK::Hyperion
8efa2c983f Case-sensitivity fix for Linux build hosts. Spotted by Tushar S. (GreyGhost)
svn path=/trunk/; revision=33499
2008-05-13 17:32:19 +00:00
Christoph von Wittich
7aa5ab1e76 add some info for xen to txtmode.cfg
fix a bug rosboot_test.cpp

svn path=/trunk/; revision=33498
2008-05-13 17:30:29 +00:00
Christoph von Wittich
7f477c644a don't display all debug data 4 times when using PipeReader class (spotted by janderwald)
svn path=/trunk/; revision=33497
2008-05-13 17:17:31 +00:00
Johannes Anderwald
74f90fc65a - move hardcoded xen configuration name to config file
svn path=/trunk/; revision=33496
2008-05-13 16:22:31 +00:00
Dmitry Chapyshev
df3c1568fa - Update Russian translation
- Small fix mstsc icon

svn path=/trunk/; revision=33495
2008-05-13 13:46:31 +00:00
Marc Piulachs
fb898f7d38 - [FORMATTING] replace tabs by spaces
- Modified keyboard layout listbox location to give usetup a more consistent look

svn path=/trunk/; revision=33494
2008-05-13 11:43:39 +00:00
Marc Piulachs
940dd048e1 - fixed and simplified scroll behavior
svn path=/trunk/; revision=33493
2008-05-13 11:29:56 +00:00
Colin Finck
f952d12c8d Use a Mutex, so that CPL applets cannot be launched multiple times.
Fixes bug #781 partly, we still need a fix in "control.exe" (see my comment in the bug report)

svn path=/trunk/; revision=33492
2008-05-13 08:56:23 +00:00
Klemens Friedl
7bcc8fccde improve visual scroll behavior (arrow-up/-down hints) of the generic list (first step setup)
svn path=/trunk/; revision=33491
2008-05-13 08:04:59 +00:00
James Tabor
5fc4e8a5f9 Added W32PF and Brush flags. Fixed IntGdiExtCreatePen and all related so to pass wine gdi32 pen tests. Fail 100 out of 664 no skips.
svn path=/trunk/; revision=33490
2008-05-13 05:13:25 +00:00
Timo Kreuzer
8f56b70c8b fix build, sorry
svn path=/trunk/; revision=33489
2008-05-13 04:30:00 +00:00
Timo Kreuzer
27ff35dcc8 - fix a pointer to INT cast
- use InterlockedExchangePointer instead of InterlockedExchange for a pointer

svn path=/trunk/; revision=33488
2008-05-13 04:18:07 +00:00
Colin Finck
083c5dcbd2 Don't strip trailing spaces from the command line
This way, stuff like "notepad abc.txt  " will correctly pass "abc.txt  " as the filename like Windows does.

See issue #1818 for more details.

svn path=/trunk/; revision=33487
2008-05-12 21:26:38 +00:00
Colin Finck
003e7d8a1b Fix the Release build by marking MmPageArraySize as unreferenced.
Changing the ASSERT, so that it doesn't spit out an "unused variable" warning on Release builds doesn't work, because then it expects this variable to exist. (which is not the case for some struct elements passed to ASSERT in some other parts of the kernel)

svn path=/trunk/; revision=33486
2008-05-12 20:48:48 +00:00
Colin Finck
85de27e4af [FORMATTING] Fix indentation (4 spaces)
svn path=/trunk/; revision=33485
2008-05-12 20:11:11 +00:00
Colin Finck
abab705b13 The lstr* functions don't reset the last error on an exception. Also they handle more than just access violation exceptions.
This makes us passing (at least) one more sub test of a Wine test (user32_winetest text)
Behaviour verified under Windows XP SP2.

svn path=/trunk/; revision=33484
2008-05-12 20:01:48 +00:00
Gregor Brunmar
858f98f040 * Synced DIALOG_DlgDirListW() and DIALOG_DlgDirSelect() from Wine to get more user32.dll winetests to pass
* Fixed indentation in User32EnumWindows()
* Removed internal use of Set/GetLastError() from User32EnumWindows() - makes even more winetests pass

svn path=/trunk/; revision=33483
2008-05-12 19:36:39 +00:00
Colin Finck
58f94d1774 Sync CharLowerA/W and CharUpperA/W with Wine (after replacing Wine's SEH with PSEH).
This way, we pass all user32 wsprintf Wine tests.
Verified under Windows XP SP2.

svn path=/trunk/; revision=33482
2008-05-12 18:35:21 +00:00
James Tabor
cf585bc08a Misc patch, for later Icm support, update CreateCompatibleDC.
svn path=/trunk/; revision=33481
2008-05-12 18:16:48 +00:00
Eric Kohl
5244432b9c Do not touch the new user name if the user cancels the rename action.
svn path=/trunk/; revision=33479
2008-05-12 17:39:58 +00:00
Johannes Anderwald
c0c67eed2b - ModifyMenu[A|W], AppendMenu[A|W], InsertMenu[A|W] should accept MF_HILITE
- verified by user32_winetest.exe 
- ReactOS now passes these tests (test_menu_flags)

svn path=/trunk/; revision=33478
2008-05-12 17:17:55 +00:00
Johannes Anderwald
5bc1879d50 - create the profiles directory if it does not yet exist
svn path=/trunk/; revision=33477
2008-05-12 16:59:06 +00:00
Colin Finck
f50c85e75f Remove all remaining occurrences of the W64 macro.
The __w64 setting is obsolete beginning with MSVC 2008.

svn path=/trunk/; revision=33475
2008-05-12 15:59:31 +00:00
Aleksey Bragin
78681a8ec7 - Fix a typo in NtSecureConnectPort, ViewBase was not updated, thus confusing callers.
See issue #3242 for more details.

svn path=/trunk/; revision=33473
2008-05-12 15:27:15 +00:00
Timo Kreuzer
3dfc1c7b9e convert another pointer calculations to FIELD_OFFSET macro and use "%p" instead of casting pointers to long
svn path=/trunk/; revision=33472
2008-05-12 15:12:43 +00:00
Aleksey Bragin
fcae112976 - Make IoCreateNotificationEvent and IoCreateSynchronizationEvent create kernel handles (according to MSDN http://msdn.microsoft.com/en-us/library/aa490498.aspx). Spotted by Stefan Ginsberg.
svn path=/trunk/; revision=33470
2008-05-12 13:42:05 +00:00
Hervé Poussineau
d600586fdd Use dynamic debug system
svn path=/trunk/; revision=33469
2008-05-12 12:01:51 +00:00
Hervé Poussineau
7c21013a99 Reuse existing function instead of duplicating functionality
Patch by Carlo Bramini, carlo dot bramix at libero dot it
See issue #2437 for more details.

svn path=/trunk/; revision=33468
2008-05-12 09:58:14 +00:00
Hervé Poussineau
a617fe3890 "\\.\" always exists
Fixes "copy freeldr.ini con:" command

svn path=/trunk/; revision=33467
2008-05-12 09:40:08 +00:00
Aleksey Bragin
2e73601047 - Fix yet another typo in the same line, spotted by Stefan Ginsberg.
svn path=/trunk/; revision=33465
2008-05-12 08:34:33 +00:00
Aleksey Bragin
b17882ecd8 Kamil Hornicek <tykef@atlas.cz>
- Update tests to Wine head (as of 11th of May, 2008).

svn path=/trunk/; revision=33464
2008-05-12 08:33:26 +00:00
Aleksey Bragin
0d2bc37302 - Fix a typo, spotted by Stefan Ginsberg.
svn path=/trunk/; revision=33463
2008-05-12 08:11:31 +00:00
James Tabor
92849df7cc Fixed ExtCreatePen and started CreatePen. Tested with wine gdi32 cross test. Isolated problem in win32k.
svn path=/trunk/; revision=33461
2008-05-12 07:31:15 +00:00
James Tabor
f5cf7f122c Fixed wine all of gdi32 dc tests and only 2 of gdiobj tests left todo.
svn path=/trunk/; revision=33460
2008-05-12 04:59:20 +00:00
James Tabor
e051367b2f Fix typo spoted by Stefan100.
svn path=/trunk/; revision=33459
2008-05-12 01:55:34 +00:00
Timo Kreuzer
da0b3935d7 NtUserEnumDisplaySettings returns NTSTATUS not BOOL, it doesn't set LastError value. Fix parameter validation and return value, based on tests in w32knapi.Move NtUserEnumDisplayMonitors and NtUserEnumDisplaySettings from windc to a new file display.c (Int functions should go there, too). adapt user32 functions accordingly. As a result w32knapi test doesn't crash anymore.
svn path=/trunk/; revision=33458
2008-05-11 23:51:55 +00:00
Timo Kreuzer
fcaf6d5aef fix a header name
svn path=/trunk/; revision=33457
2008-05-11 23:25:02 +00:00
Timo Kreuzer
41758b941b patch by hyperion: convert pointer calculations with FIELD_OFFSET macro
svn path=/trunk/; revision=33456
2008-05-11 23:15:44 +00:00
Timo Kreuzer
c6aa16c16a use "%p" to DPRINT a pointer instead of casting it to int and using "%08x"
svn path=/trunk/; revision=33455
2008-05-11 22:28:20 +00:00
Timo Kreuzer
8c2db2fee0 - Use InterlockedExchangePointer instead of InterlockedExchange for a pointer.
- Don't cast a DWORD to HANDLE directly
- ViewSize param of MmMapViewOfSection is SIZE_T, not ULONG

svn path=/trunk/; revision=33454
2008-05-11 22:23:45 +00:00
Timo Kreuzer
24a4495952 a "real" InterlockedExchangePointer wants PVOID* and nothing else.
svn path=/trunk/; revision=33453
2008-05-11 22:09:53 +00:00
Timo Kreuzer
e7657c026b - a bunch of tests for NtUserEnumDisplaySettings
- one test for NtGdiGetFontResourceInfoInternalW

svn path=/trunk/; revision=33452
2008-05-11 21:49:56 +00:00
Hervé Poussineau
906bec0223 Add generic list scrolling
See issue #3234 for more details.

svn path=/trunk/; revision=33451
2008-05-11 21:32:00 +00:00
Hervé Poussineau
2199183bbe Better encapsulation of generic list
svn path=/trunk/; revision=33450
2008-05-11 21:17:57 +00:00
Filip Navara
0e6c1e1d3a Fix incorrect parameters to IoSetDeviceToVerify/IoVerifyVolume. Spotted by R.T.Sivakumar <rtshiva@gmail.com>.
svn path=/trunk/; revision=33449
2008-05-11 20:04:47 +00:00
Filip Navara
b512080393 Fix checking of return values from IoCreateDevice. Spotted by R.T.Sivakumar <rtshiva@gmail.com>.
svn path=/trunk/; revision=33448
2008-05-11 19:47:50 +00:00
Filip Navara
76256a1bdd Fix wrong variable usage - "Filename" (8 characters long) of a directory entry was referenced instead of a "ShortName" (11 characters long). The actual bug was harmless since both arrays are defined in an union and lie at the same place in memory.
svn path=/trunk/; revision=33447
2008-05-11 18:57:07 +00:00
Colin Finck
951e1367da Robin Geuze (r DOT geuze AT chello DOT nl):
- Add the correct Visual Studio version to the .sln file header, so that the Visual Studio Version Selector does not get confused.
  I slightly modified the patch to replace some following if's by else if's.

svn path=/trunk/; revision=33446
2008-05-11 18:30:36 +00:00
Colin Finck
67e88fe072 - [FORMATTING] Fix indentation in usetup's genlist.
- Remove the obsolete "media/vgafonts/readme.txt" file.

No code changes

svn path=/trunk/; revision=33445
2008-05-11 15:07:16 +00:00
Marc Piulachs
bd846f9aa4 - fix typo
svn path=/trunk/; revision=33444
2008-05-11 15:05:19 +00:00
Pierre Schweitzer
d91736aefb Synced urlmon.dll with Wine HEAD.
This *does not* fix Downloader

svn path=/trunk/; revision=33443
2008-05-11 13:57:45 +00:00
Gregor Brunmar
5e244d149d Made 17 listbox winetests pass in user32.dll (some of the changes were taken from wine)
svn path=/trunk/; revision=33442
2008-05-11 13:46:47 +00:00
Pierre Schweitzer
ba3a40c9e9 No need for a shortcut to kbswitch.exe on the desktop
svn path=/trunk/; revision=33441
2008-05-11 13:11:30 +00:00
Filip Navara
44a984e920 Temporary disable part of the SEH code in NtReplyWaitReceivePortEx to get trunk working again.
svn path=/trunk/; revision=33438
2008-05-11 12:22:51 +00:00
Hervé Poussineau
117852d238 Use LONG BreakPointNr, as in other breakpoint-related functions
svn path=/trunk/; revision=33437
2008-05-11 11:44:55 +00:00
Hervé Poussineau
a3417a72ad Implement SHGetFolderPathAndSubDirA/W, taken from Wine
See issue #3238 for more details.

svn path=/trunk/; revision=33436
2008-05-11 11:33:49 +00:00
Magnus Olsen
b4bbd1348b adding SetLastError(ERROR_INVALID_PARAMETER) when CreateBitmapIndirect fail, sugestion from filip we should do that as well.
thx filip.

svn path=/trunk/; revision=33434
2008-05-11 10:41:06 +00:00
Magnus Olsen
4b2acdc21b Adding simple test for CreateBitmapIndrect and show it care if bmWidthBytes is align or not
this test have done on windows xp sp2 and pass it fine. 


svn path=/trunk/; revision=33433
2008-05-11 10:35:09 +00:00
Aleksey Bragin
ebdf34b599 Kamil Hornicek <tykef@atlas.cz>
- Update PSDK headers.

svn path=/trunk/; revision=33432
2008-05-11 10:16:10 +00:00
Hervé Poussineau
28e9a590db Fix indentation, to match mouclass one.
svn path=/trunk/; revision=33431
2008-05-11 10:03:52 +00:00
Hervé Poussineau
507a803c65 serial: Fix FileStandardInformation and FilePositionInformation classes
serial: Add FileNetworkOpenInformation class
serenum: Pass all requests to next driver, even unknown ones

svn path=/trunk/; revision=33430
2008-05-11 09:51:46 +00:00
Filip Navara
a173ef04c2 A driver-supplied Cancel routine is called with the cancel spin lock held, it must be released on IRP completion. Patch by R.T.Sivakumar <rtshiva@gmail.com>.
svn path=/trunk/; revision=33429
2008-05-11 09:47:57 +00:00
Filip Navara
a907b85b1a SEH protect NtReplyWaitReceivePortEx and fix one instance of message type checking to correctly account for kernel LPC messages.
svn path=/trunk/; revision=33428
2008-05-11 09:39:26 +00:00
Magnus Olsen
973109beb4 Remove old hack I implmeneted in NtGdiCreateBitmap it is height == 0 or width == 0, it create 1x1 1Bpp we can remove this hack now.
BugFix CreateBitmapIndirect, the code have been tested in reactos and windows, include abiword 
1. the bmWidthBytes must be align with 2 and it must be 2 or higher like windows xp/2003 and msdn
2. Do not do direcly call to NtGdiCreateBitmap use CreateBitmap so we getting same behoir for 1x1 1Bpp bitmap.
3. This will also take care of handle leaks for bitmap that being create with height = 0,  width = 0 and do not delete the object.
4. Windowss does not check if the incoming bitmap is NULL, this behoir to make it more compatible. 




svn path=/trunk/; revision=33427
2008-05-11 08:20:18 +00:00
Magnus Olsen
0dfbae2961 adding test to NtGdiCreateBitmap show it does not accpect height = 0 and widith = 0
svn path=/trunk/; revision=33426
2008-05-11 08:09:02 +00:00
James Tabor
3369214f4f Implement some stubs.
svn path=/trunk/; revision=33425
2008-05-11 06:35:26 +00:00
James Tabor
63466eec38 Fix brush attribute structure and add flags. Add gdi handle cache structures.
svn path=/trunk/; revision=33424
2008-05-11 05:32:50 +00:00
James Tabor
b8f704d4aa Point out ParentWindowHandle for HWND_MESSAGE.
svn path=/trunk/; revision=33423
2008-05-11 04:29:24 +00:00
Daniel Reimer
7a36161dd1 Bug 3229: spanish files by remialdo@gmail.com
Bug 3231: Italian resource update by Paolo Devoti (devotip@tiscali.it)

svn path=/trunk/; revision=33422
2008-05-10 22:00:47 +00:00
Daniel Reimer
9b2aa002a1 Bug 3229: spanish files by Javier Remacha (remialdo@gmail.com)
svn path=/trunk/; revision=33421
2008-05-10 21:51:59 +00:00
Pierre Schweitzer
851c81eee6 "Implemented" FsRtlNotifyChangeDirectory
It just redirects to FsRtlNotifyFullChangeDirectory (which is *NOT* implemented)

svn path=/trunk/; revision=33420
2008-05-10 20:05:57 +00:00
Colin Finck
32a2579694 Sync riched20 to Wine 1.0-rc1
Samuel Serapión got some apps like 7-Zip and PowerISO installed with the new version.

svn path=/trunk/; revision=33419
2008-05-10 19:50:28 +00:00
Aleksey Bragin
620f89d44b - Get rid of duplicated (and different) NB_LAST_STOCK definitions in gdi32 and win32k, now it's defined to 22 (19 being a last public stock object, other 2 are internal).
- Move a DEFAULT_BITMAP definiton from gdi32 into ntgdityp.h (not the best place, but could be moved to a better one later), and assign it a number 21, which it is on Windows XP (tested with a win32kntest framework, tests are committed).
- Fix CreateBitmap to return a 1x1 stock bitmap object if the requested Width and Height are 0.
- All of this work is based on Magnus Olsen's patches and Wine.

svn path=/trunk/; revision=33418
2008-05-10 19:03:58 +00:00
Colin Finck
b1c2a48e3b Samuel Serapión (samdwise51 AT gmail DOT com):
- Winesync of crypt32
  The function import_certs_from_dir had to be killed, because it uses UNIX-only functions. (see "crypt32_ros.diff")
- This gets MSN Messenger a bit more to work

svn path=/trunk/; revision=33417
2008-05-10 18:43:43 +00:00
Magnus Olsen
7e4da4bd18 move the undoc DC_BITMAP to ntgdityp.h header after advice from fireball and kjk
svn path=/trunk/; revision=33416
2008-05-10 18:10:36 +00:00
Magnus Olsen
c6d6043053 fixing a memory overwrite bug I miskate intrudes
the private size of stackobject list contain 22 object, and we do not want mix up the private size and the user mode size for different version. 

svn path=/trunk/; revision=33415
2008-05-10 18:07:41 +00:00
Dmitry Chapyshev
4ec8e30269 - Add new layouts to bootcd
svn path=/trunk/; revision=33414
2008-05-10 18:01:32 +00:00
Dmitry Chapyshev
cb65a82319 Add keyboard layouts:
- Arabic (101) (by Alexey Komarov)
- Arabic (102) (by Alexey Komarov)
- Arabic (102) AZERTY (by Alexey Komarov)
- Armenian Western (by Alexey Komarov)
- Assamese (Inscript)
- Bengali
- Croatian
- Devanagari - INSCRIPT
- Gujarati
- Malayalam

svn path=/trunk/; revision=33413
2008-05-10 17:58:45 +00:00
Magnus Olsen
25fb37a67f implement DC_BITMAP for GetStockObject.
it works for any apps want it. and using this undoc value
testcase exists in w32knapi have been run in windows and reactos.


svn path=/trunk/; revision=33412
2008-05-10 17:39:38 +00:00
Magnus Olsen
ea9d73b0f2 adding a new define DC_BITMAP for GetStockObject
svn path=/trunk/; revision=33411
2008-05-10 17:37:43 +00:00
Magnus Olsen
1bc8ff3d85 adding a testcase for GetStockObject(21);
it is 1x1 1Bpp Bitmap.

svn path=/trunk/; revision=33410
2008-05-10 16:12:35 +00:00
Magnus Olsen
04df00182d adding more testcase for NtGdiGetStockObject it testing what type for gdi object the handle return now and we manger figout what type of handle the value 20 and value 21
NtGdiGetStockObject(20) == GDI_OBJECT_TYPE_COLORSPACE
 NtGdiGetStockObject(21) == GDI_OBJECT_TYPE_BITMAP

svn path=/trunk/; revision=33409
2008-05-10 15:21:49 +00:00
Colin Finck
96f6e0a854 Attempt to fix build
svn path=/trunk/; revision=33408
2008-05-10 15:08:45 +00:00
Magnus Olsen
c958c7e3b0 adding a simple NtGdiGetStockObject
it show undocumented stockobject exists in windows xp/2003
value 20 and 21

svn path=/trunk/; revision=33407
2008-05-10 14:01:40 +00:00
Magnus Olsen
826f6108be commit testcase for wdith negative and 0
svn path=/trunk/; revision=33406
2008-05-10 12:02:59 +00:00
Magnus Olsen
a623366dca adding height -1 and height 0 test for create a bitmap
svn path=/trunk/; revision=33405
2008-05-10 11:55:58 +00:00
Magnus Olsen
dc6e9467cc revert r33403 for it break abiword
we need fixing gdi32.dll bugs before we can fix it correct

svn path=/trunk/; revision=33404
2008-05-10 11:42:00 +00:00
Magnus Olsen
608264fa22 1. remove hack in NtGdiCreateBitmap
2. BugFix IntGdiCreateBitmap 
   1. Height can not be negative value 
   2. width can not be negative value
   3. Planes or BitsPerPixel can not be biger that 32Bpp
   4. BitsPerPixel can not be 0
   5. width size is max  0x7FFFFFFF hex



svn path=/trunk/; revision=33403
2008-05-10 11:23:54 +00:00
Gregor Brunmar
7eab8b0750 Made user32.dll compile under MSVC (doesn't link though)
svn path=/trunk/; revision=33402
2008-05-10 10:29:19 +00:00
Thomas Bluemel
433a98b5fa Fix some task switch window bugs
svn path=/trunk/; revision=33401
2008-05-10 01:45:08 +00:00
Johannes Anderwald
9539538ba0 - when menu position cannot be found insert new item at the end
- reduces winetest failures from 1550 to 1250
- behaviour verified on Windows Vista

svn path=/trunk/; revision=33400
2008-05-09 18:11:40 +00:00
Daniel Reimer
7a754a98d0 Well... I forgot to revert some files... sry
svn path=/trunk/; revision=33399
2008-05-09 17:45:46 +00:00
Daniel Reimer
65a136825d Update of some Headers for the Winetests of non autosynched Dlls. Done by Kamil Horniceck
Update XCOPY from wine.

svn path=/trunk/; revision=33398
2008-05-09 17:37:21 +00:00
Daniel Reimer
f108d390f0 Update of Winetests of non autosynched Dlls. Done by Kamil Horniceck
svn path=/trunk/; revision=33397
2008-05-09 17:35:45 +00:00
Colin Finck
ad119a417d Convert the remaining ANSI-only stuff to TCHAR
svn path=/trunk/; revision=33396
2008-05-09 13:33:12 +00:00
Dmitry Chapyshev
46db68bb13 - Add new languages
svn path=/trunk/; revision=33395
2008-05-09 13:06:29 +00:00
Dmitry Chapyshev
6d4eb0a221 - Add new layouts to bootcd
- Add new languages

svn path=/trunk/; revision=33394
2008-05-09 13:06:00 +00:00
Colin Finck
fe2ee8daa3 Fix build (no idea why my rbuild didn't notice the "unicode" attribute change...)
svn path=/trunk/; revision=33393
2008-05-09 12:59:55 +00:00
Daniel Reimer
5d79f46a06 Bug 3217: shdocvw translation patch by Seungju Kim (admin@manateeshome.com)
Bug 3228: Update for few slovak RCs by Mario Kacmar (kario@szm.sk)
Some fixes and translation updates for winhelp and wordpad synched from wine
Netherland Translation for charmap from Wouter Thierens

svn path=/trunk/; revision=33392
2008-05-09 12:45:47 +00:00
Daniel Reimer
85fbc8ec50 Bug 3228: Update for few slovak RCs by Mario Kacmar (kario@szm.sk)
svn path=/trunk/; revision=33391
2008-05-09 12:38:26 +00:00
Dmitry Chapyshev
96e0908452 Add keyboard layouts:
- Armenian Eastern
- Azeri Cyrillic
- Azeri Latin
- Belarusian
- Portuguese (Brazilian ABNT2)
- Kazakh

svn path=/trunk/; revision=33390
2008-05-09 12:29:22 +00:00
Colin Finck
e459df7144 Compile calc as Unicode and remove the unneeded __USE_W32API define
svn path=/trunk/; revision=33389
2008-05-09 12:24:56 +00:00
Colin Finck
7b6887ffc8 - Delete "winecalc", there is no reason to keep it as we have our own calculator app now.
- Delete "smartpdf", it never worked and is outdated.

svn path=/trunk/; revision=33388
2008-05-09 11:58:30 +00:00
Colin Finck
9e45b56ced Change the translation of the "Help" menu item to "?", so that the menu can be displayed in one line at a small window size.
Also minor indentation fix

See issue #2590 for more details.

svn path=/trunk/; revision=33387
2008-05-09 11:38:45 +00:00
Dmitry Chapyshev
fbc903478d - Add some defines
svn path=/trunk/; revision=33386
2008-05-09 11:32:56 +00:00
Christoph von Wittich
8fd63a45fa add some initial xen support to sysreg (hack)
svn path=/trunk/; revision=33385
2008-05-09 10:39:51 +00:00
Aleksey Bragin
ceabf213ba - Revert 33366 for explorer too. Bugs in explorer should be fixed first.
svn path=/trunk/; revision=33384
2008-05-09 09:32:17 +00:00
Ged Murphy
e53bcfc884 - revert r32389. It's both useless and incorrect.
- thanks to shadowflare for noticing

svn path=/trunk/; revision=33383
2008-05-09 07:30:26 +00:00
Colin Finck
3dcbb5e00d Revert r33366 for regedit and compile it as Unicode with ANSI command line parsing again.. :-/
Changing everything internally to TCHAR would be like rewriting the app, because regedit even hardcodes string sizes in bytes and then memcmp's them... (see regproc.c:234)
Compiling it ANSI-only also doesn't work, because the API's for ACL stuff are Unicode-only.

svn path=/trunk/; revision=33382
2008-05-08 19:19:22 +00:00
Hervé Poussineau
0a216e7da4 Fix compilation by using an unicode entrypoint
svn path=/trunk/; revision=33381
2008-05-08 18:42:29 +00:00
Hervé Poussineau
618eb75c49 Fix some various unicode problems
svn path=/trunk/; revision=33380
2008-05-08 18:26:15 +00:00
Colin Finck
4198aafc54 - Fix build by converting everything to use TCHAR's
- Bugfix: Previously macros like "gotoroot=cd \" weren't passed correctly as we just used argv[1].
  Now use GetCommandLine and pass the full command line.
- Fix indentation

svn path=/trunk/; revision=33379
2008-05-08 18:11:56 +00:00
Hervé Poussineau
b26bf1b115 Use _tWinMain instead of WinMain, as msconfig.exe uses TCHAR in other places
svn path=/trunk/; revision=33378
2008-05-08 17:49:42 +00:00
Hervé Poussineau
78c2b00d5f Fix route.exe compilation by removing hack
svn path=/trunk/; revision=33377
2008-05-08 17:48:13 +00:00
Hervé Poussineau
0a651dddad Use _tWinMain instead of WinMain, as welcome.exe uses TCHAR in other places
svn path=/trunk/; revision=33376
2008-05-08 17:08:47 +00:00
Hervé Poussineau
76ed4ec83b Do not define _UNICODE twice (on command line and in utility.h)
svn path=/trunk/; revision=33375
2008-05-08 17:06:47 +00:00
Colin Finck
908a3aa96b Fix win32kdxtest build
svn path=/trunk/; revision=33374
2008-05-08 17:00:15 +00:00
Hervé Poussineau
900237d0da Use _tWinMain instead of WinMain, as setup.exe uses TCHAR in other places
svn path=/trunk/; revision=33373
2008-05-08 16:56:03 +00:00
Hervé Poussineau
433491c7f4 Fix sc.exe compilation by removing hack
svn path=/trunk/; revision=33372
2008-05-08 16:48:39 +00:00
Colin Finck
3367d25567 Same fix for libpng
svn path=/trunk/; revision=33371
2008-05-08 16:41:46 +00:00
Colin Finck
529cde0611 Fix libjpeg build by removing the __REACTOS__ define from it (already defined in "ReactOS-generic.rbuild")
Also remove the USE_W32API define, which was done for many other modules in the past.
Finally, fix the indentation of the rbuild file :)

svn path=/trunk/; revision=33370
2008-05-08 16:38:20 +00:00
Hervé Poussineau
35aafac05c Don't depend of UNICODE/_UNICODE
svn path=/trunk/; revision=33369
2008-05-08 16:29:50 +00:00
Hervé Poussineau
c834528bf8 Fix typo spotted by Stephan100 on IRC
svn path=/trunk/; revision=33368
2008-05-08 16:16:48 +00:00
Dmitry Chapyshev
0dc710cada - Revert r33314
svn path=/trunk/; revision=33367
2008-05-08 16:03:10 +00:00
Hervé Poussineau
06094f3e4d Fix some .rbuild file problems
See issue #2710 for more details.

svn path=/trunk/; revision=33366
2008-05-08 16:01:30 +00:00
Dmitry Chapyshev
854bf95b90 - Fix typo
svn path=/trunk/; revision=33365
2008-05-08 13:18:23 +00:00
Dmitry Chapyshev
19bf8ba5ed - Adding and deleting layouts using Substitutes
svn path=/trunk/; revision=33364
2008-05-08 10:47:30 +00:00
Filip Navara
047aaf23ed Use correct path when loading plugins.
svn path=/trunk/; revision=33362
2008-05-08 08:00:35 +00:00
Johannes Anderwald
6208860a11 - check if the requested MenuItem object was really found
- makes user32_winetest not crash reactos

svn path=/trunk/; revision=33361
2008-05-08 07:46:46 +00:00
Pierre Schweitzer
89ac2632f2 Updated French translation for Syssetup.dll
svn path=/trunk/; revision=33360
2008-05-08 06:17:20 +00:00
Pierre Schweitzer
68f8d4b60c Added an Ext2 provider. Not yet used by Autochk.
svn path=/trunk/; revision=33359
2008-05-08 06:03:54 +00:00
Dmitry Chapyshev
7abc3b64af - Add more languages to usetup
svn path=/trunk/; revision=33358
2008-05-08 05:13:28 +00:00
Colin Finck
b9b700035f Filip Navara:
- Only increment VideoPortDeviceNumber, when IntVideoPortCreateAdapterDeviceObject and IntVideoPortFindAdapter succeeded.
  This fixes loading the CL54xx miniport driver. But it still isn't usable, because win32k cannot find the DDI driver for it.

svn path=/trunk/; revision=33357
2008-05-07 21:51:39 +00:00
Colin Finck
df3116fa7f Fix circles build
svn path=/trunk/; revision=33356
2008-05-07 21:11:12 +00:00
Marc Piulachs
76afdc12da -try to fix linux build
svn path=/trunk/; revision=33355
2008-05-07 21:08:40 +00:00
Marc Piulachs
0e8ea6dc04 -fix linux build
svn path=/trunk/; revision=33354
2008-05-07 20:58:06 +00:00
Marc Piulachs
f289d2ad19 - add missing idl files to build
svn path=/trunk/; revision=33353
2008-05-07 20:54:42 +00:00
Marc Piulachs
29859e5fd3 -autogenerate dxsdk headers as part of the build as requested
svn path=/trunk/; revision=33352
2008-05-07 20:49:15 +00:00
Colin Finck
e2c529ca16 Fix indentation :)
svn path=/trunk/; revision=33351
2008-05-07 20:19:43 +00:00
Marc Piulachs
98d47d1fc4 -Implement reconnect on connection lost as requested. Techbot will now try to re-connect every 60 seconds when a connection lost is detected.
svn path=/trunk/; revision=33350
2008-05-07 19:53:14 +00:00
Gregor Brunmar
1e922dc43f Implemented IDirect3DDevice9::GetCreationParameters()
svn path=/trunk/; revision=33349
2008-05-07 18:23:46 +00:00
James Tabor
95bc4a2671 Adding more than one video device.. We need to fix NtGdiCreateCompatibleDC and DceCreateDisplayDC so they can access the device name from the default PDev or PrimarySurface. ATM we use L"DISPLAY" not L"\\??\\DISPLAY%d"(<-display number) to create a new HDC. In Gdi32 IntCreateDICW we basicly do the same w/o the display number. This code is correct and please leave it alone. I add some code in win32k dc.c, so we can start the changes.
svn path=/trunk/; revision=33348
2008-05-07 18:12:19 +00:00
Gregor Brunmar
04fbc5df72 * Fixed an error in IDirect3DDevice9::GetDisplayMode() spotted by Steven Edwards
* Renamed an internal D3D9 struct variable
* Re-implemented IDirect3DDevice9::GetAvailableTextureMem(), hopefully more correct this time around

svn path=/trunk/; revision=33347
2008-05-07 18:00:50 +00:00
Dmitry Chapyshev
e904314653 - Small fix modifier_bits structure
svn path=/trunk/; revision=33346
2008-05-07 17:22:47 +00:00
Dmitry Chapyshev
96257d48db - Adding shortcuts to kbswitch
- Move regedit shortcut to "System Tools"

svn path=/trunk/; revision=33345
2008-05-07 16:45:30 +00:00
Marc Piulachs
d7b2077ed8 - code refactoring
- made more and more easily extensible:
   * commands automatically loaded from plugins dlls
   * declarative and automatic command parameter parsing
   * common code moved to base classes
- other fixes

svn path=/trunk/; revision=33344
2008-05-07 14:59:28 +00:00
Timo Kreuzer
e3407fdd9c UserCreateHeap: use SIZE_T for parameter, also use SIZE_T for MmMapViewOfSection
svn path=/trunk/; revision=33343
2008-05-07 14:39:31 +00:00
Timo Kreuzer
335831c108 remove unimplemented IntDrawCaret from caret.h
svn path=/trunk/; revision=33342
2008-05-07 14:14:52 +00:00
Timo Kreuzer
9c10e57cee (Nt)UserGetWindowDC returns a HDC, not a DWORD
svn path=/trunk/; revision=33341
2008-05-07 14:11:01 +00:00
Aleksey Bragin
2bf0d241a9 - Fix uninitialized Callback var usage, spotted by Stefan Ginsberg. Probably fixes bug 3214.
See issue #3214 for more details.

svn path=/trunk/; revision=33340
2008-05-07 10:06:07 +00:00
Aleksey Bragin
0ee50a0aaf - Assign statements in ASSERTs is a bad idea. Fix that.
svn path=/trunk/; revision=33339
2008-05-07 09:46:37 +00:00
Timo Kreuzer
00bbbe2448 ntifs.h: fix prototypes of PsChargePoolQuota, PsChargeProcessPoolQuota, PsReturnPoolQuota, ZwAllocateVirtualMemory and ZwFreeVirtualMemory
svn path=/trunk/; revision=33338
2008-05-07 00:57:10 +00:00
Timo Kreuzer
9d30c5d072 change Amount param in all PsXxxPoolQuota functions to SIZE_T
svn path=/trunk/; revision=33337
2008-05-06 23:19:22 +00:00
Timo Kreuzer
7df59a1212 fix MmMapViewOfSection prototype
svn path=/trunk/; revision=33336
2008-05-06 21:37:10 +00:00
Johannes Anderwald
2799b51019 - fix changing time format garbles the clock output
- patch by Carlo Bramix and Alwyn Tar
- fix potential buffer overflows by me
- bug 2437

svn path=/trunk/; revision=33335
2008-05-06 20:51:07 +00:00
Timo Kreuzer
7325a8a281 remove PalIndexed from dc struct
svn path=/trunk/; revision=33334
2008-05-06 20:50:53 +00:00
Aleksey Bragin
dfcefd6140 - Fix regedit's import function. Now it works equally good in ReactOS and in a real Windows (previously was broken in both OSes).
See issue #997 for more details.

svn path=/trunk/; revision=33333
2008-05-06 20:44:35 +00:00
Timo Kreuzer
ad58bfe28a DC: use dc.DcLevel.hPal for the palette instead of using dc.PalIndexed and dc.w.hPalette
NtUserSelectPalette: make code more readable

svn path=/trunk/; revision=33332
2008-05-06 20:44:25 +00:00
Johannes Anderwald
6e7c576b23 - remove unused files :)
svn path=/trunk/; revision=33331
2008-05-06 20:36:06 +00:00
Magnus Olsen
bb0603242f started cleanup object/dc.c
1. remove the static global value edd_directdraw_global I intrudues for dx.
   it is now for each driver. 

svn path=/trunk/; revision=33330
2008-05-06 20:20:56 +00:00
Timo Kreuzer
9aafcccad6 rename 2nd parameter of NtUserGetClipboardData from Unknown1 to pBuffer. Use SEH to copy data.
svn path=/trunk/; revision=33329
2008-05-06 20:09:34 +00:00
Aleksey Bragin
a64e1e81c5 - Fix a bug resulting in a write to an uninitialized address (coincidently located somewhere in the middle of another heap allocation) and later heapfreeing it. WaitNamedPipeA() was the affected function (results were visible when e.g. starting Office 2003 installer).
svn path=/trunk/; revision=33328
2008-05-06 18:11:41 +00:00
Daniel Reimer
592dd734e8 Netherland translation for calc by Wouter Thierens. Congrats for the first one. May follow many more!
svn path=/trunk/; revision=33327
2008-05-06 17:54:08 +00:00
Gregor Brunmar
d7cf631cd9 Implemented IDirect3DDevice9::GetDisplayMode()
svn path=/trunk/; revision=33326
2008-05-06 16:15:33 +00:00
Marc Piulachs
88b5cb544c -fix build
svn path=/trunk/; revision=33325
2008-05-06 15:27:34 +00:00
Marc Piulachs
1788cb32b5 -fix build
svn path=/trunk/; revision=33324
2008-05-06 14:52:46 +00:00
Marc Piulachs
338266205f -Fix unnecessary msi builds (part 2/2)
svn path=/trunk/; revision=33323
2008-05-06 14:43:24 +00:00
Marc Piulachs
880e173654 -Fix unnecessary msi builds, this time for real! msi module was referencing the module 'msi_msiserver_typelib' expecting (OUTPUT)msi_msiserver_typelib.tlb to be build inset of (INTERMEDIATE)msiserver.tlb (the actual generated file). As a result the file was never created and make was trying to recreate it on every build. mystery solved :) (part 1/2)
svn path=/trunk/; revision=33322
2008-05-06 14:42:49 +00:00
Marc Piulachs
f540600448 -Add a new module type 'cabinet' to handle .cab files generation
-Remove harcoded vgafonts.cab instructions from rbuild and move them to its own rbuild file

svn path=/trunk/; revision=33321
2008-05-06 14:24:16 +00:00
Aleksey Bragin
c3644e01e9 atl: Remove freeing of an invalid pointer.
http://www.winehq.org/pipermail/wine-patches/2008-May/054603.html

svn path=/trunk/; revision=33320
2008-05-06 12:51:08 +00:00
Aleksey Bragin
19636d8609 - Fix a typo.
See issue #3190 for more details.

svn path=/trunk/; revision=33319
2008-05-06 11:46:50 +00:00
Dmitry Chapyshev
d7977c4292 - Add new dll's information
svn path=/trunk/; revision=33318
2008-05-06 09:22:39 +00:00
Dmitry Chapyshev
07d4eb5e6c - Add new dll's to bootcd
svn path=/trunk/; revision=33317
2008-05-06 09:20:48 +00:00
Dmitry Chapyshev
732ebbb776 - Add & update headers
svn path=/trunk/; revision=33316
2008-05-06 09:20:08 +00:00
Dmitry Chapyshev
27ec5d2efc - Add baseaddress for inetcomm.dll and nddeapi.dll
svn path=/trunk/; revision=33315
2008-05-06 09:17:31 +00:00
Dmitry Chapyshev
5e86e269b0 - advapi32: Small implementation RegConnectRegistryW (from wine)
- Add inetcomm.dll from wine
- Add nddeapi.dll from wine
- Sync imm32 with wine

svn path=/trunk/; revision=33314
2008-05-06 09:16:21 +00:00
Johannes Anderwald
ec6486f26c - check for WHQL for display adapters (using d3d9)
- destroy all dialogs on exit
- fix a bug in destroying the dialogs
- halfplement checking WHQL for audio drivers

svn path=/trunk/; revision=33313
2008-05-06 07:46:58 +00:00
Johannes Anderwald
611459f151 - define LPD3DVECTOR_DEFINED when d3d9 and dsound header is used
- sync mscat.h from wine and add a few required definitions

svn path=/trunk/; revision=33312
2008-05-06 07:18:38 +00:00
Hervé Poussineau
78fb45b54a Fix indentation
svn path=/trunk/; revision=33311
2008-05-06 06:57:05 +00:00
James Tabor
d6273ed28e Quick implementation of DxEngCreateMemoryDC and DxEngCleanDC. It compiles. 8^D
svn path=/trunk/; revision=33310
2008-05-06 04:22:49 +00:00
James Tabor
19381c9fed Win32k:
- Rewrite EngAcquire/ReleaseSemaphore.
- Add internal fastcalls for them and tag.
- Fix DxEngUn/LockShareSem.
- Tested with Qemu. Needs Dx testing.

svn path=/trunk/; revision=33309
2008-05-06 03:40:38 +00:00
Marc Piulachs
ebec4882b2 -solve msi circular dependency warning and avoid unnecessary msi.dll rebuilds
See issue #3131 for more details.

svn path=/trunk/; revision=33308
2008-05-05 23:19:38 +00:00
Aleksey Bragin
83170fa4d9 - Buffer size is in bytes, not in pages. Fixes boot breakage.
svn path=/trunk/; revision=33307
2008-05-05 21:07:32 +00:00
Hervé Poussineau
8483e5108d Initialize size field of the OLEINPLACEFRAMEINFO structure.
This should prevent Explorer to disappear when user doesn't want to download the Mozilla ActiveX control.
See issue #3126 for more details.

svn path=/trunk/; revision=33306
2008-05-05 20:16:34 +00:00
Magnus Olsen
91f47e9c2b bye bye DXG_GET_INDEX_FUNCTION
patch from Stefan Ginsberg stefan__100__at hotmail dot com 
it remove the bad macro DXG_GET_INDEX_FUNCTION that never worked as it should. 

svn path=/trunk/; revision=33305
2008-05-05 19:42:23 +00:00
Gregor Brunmar
18eec41ac4 Made IDirect3DDevice9::GetAvailableTextureMem() less error prone, based on feedback from GreatLord
svn path=/trunk/; revision=33304
2008-05-05 19:32:41 +00:00
Gregor Brunmar
6e103fd392 Changed struct in IDirect3DDevice9::GetAvailableTextureMem() based on feedback from GreatLord
svn path=/trunk/; revision=33303
2008-05-05 19:15:26 +00:00
Magnus Olsen
cd692f690e patch from Stefan Ginsberg stefan__100__at hotmail dot com
it remove the bad macro DXG_GET_INDEX_FUNCTION that never worked as it should. 

svn path=/trunk/; revision=33302
2008-05-05 18:30:14 +00:00
Aleksey Bragin
26171ce642 - Fix two typos in the buffer size calculation code, spotted by Stefan Ginsberg.
svn path=/trunk/; revision=33301
2008-05-05 18:23:55 +00:00
James Tabor
beb173aaa8 Implement XxxRedrawDesktop for Dx, needs testing.
svn path=/trunk/; revision=33300
2008-05-05 17:45:20 +00:00
Gregor Brunmar
bc1d4f7c8c Implemented IDirect3DDevice9::GetAvailableTextureMem()
svn path=/trunk/; revision=33299
2008-05-05 16:49:13 +00:00
Gregor Brunmar
f71800893b * Implemented IDirect3DDevice9::GetDirect3D() and GetDeviceCaps()
* Added a DevCaps filter when retrieving D3DCAPS9 from device caps

svn path=/trunk/; revision=33298
2008-05-05 15:58:23 +00:00
Hervé Poussineau
61fe294be5 Remove some warnings
svn path=/trunk/; revision=33297
2008-05-05 14:50:43 +00:00
Hervé Poussineau
8ccb84366b Fix assert
svn path=/trunk/; revision=33296
2008-05-05 14:50:01 +00:00
Timo Kreuzer
6ea5c51737 add tests for GetCurrentObject
svn path=/trunk/; revision=33295
2008-05-05 13:33:42 +00:00
Daniel Reimer
486242012f ... And the last things I forgot....
Note to myself: ONLY accept .diff and .patch files and NOTHING ELSE.

svn path=/trunk/; revision=33294
2008-05-05 13:27:26 +00:00
Daniel Reimer
e2bf80f216 Forgot to save a local fix before commit...
svn path=/trunk/; revision=33293
2008-05-05 13:22:09 +00:00
Daniel Reimer
e3b240fa84 Bug 3215: some updates and slovak translations by Mario Kacmar (kario@szm.sk)
Bug 3204: Bulgarian translations for ReactOS by Станев (sstpr@narod.ru)
Bug 3210: Fix italian mistakes into CPL by Carlo Bramini (carlo.bramix@libero.it)
Small fixes By Olaf Siejka.
Sync Winhelp and Wordpad to Code frozen Wine.

svn path=/trunk/; revision=33292
2008-05-05 13:09:49 +00:00
Daniel Reimer
41cf75aa19 Sync WineFile to Code frozen Wine.
Bug 3215: some updates and slovak translations by Mario Kacmar (kario@szm.sk)

svn path=/trunk/; revision=33291
2008-05-05 13:05:42 +00:00
Aleksey Bragin
63cc11fc79 - Revert 33274, except the change in GetDisplayNumberFromDeviceName(), where a zero-length string should be actually accepted.
- As for other changes in 33274: removed accidentally committed DPRINT1s by Magnus, removed unneeded DisplayNumber zero-init, because it's always initialized by a call to GetDisplayNumberFromDeviceName().

svn path=/trunk/; revision=33290
2008-05-05 08:28:41 +00:00
Aleksey Bragin
a293245d61 - Fix a few DxEng APIs without proper calling convention (spotted by Stefan).
svn path=/trunk/; revision=33289
2008-05-05 07:59:00 +00:00
James Tabor
f9df01f16b Implement IntGdiReferencePdev and part of IntGdiUnreferencePdev.
svn path=/trunk/; revision=33288
2008-05-05 01:34:17 +00:00
Marc Piulachs
d0093b0beb -Move shellext folder to a more appropriate location. shell extensions are COM objects which extends the abilities of MS Windows explorer and not regular Win32 Dlls as they don't export APIs (part 2/2)
svn path=/trunk/; revision=33287
2008-05-04 23:47:15 +00:00
Marc Piulachs
49d21151ac -Move shellext folder to a more appropriate location. shell extensions are COM objects which extends the abilities of MS Windows explorer and not regular Win32 Dlls as they don't export APIs (part 1/2)
svn path=/trunk/; revision=33286
2008-05-04 23:46:26 +00:00
Marc Piulachs
b0dcd1e796 -replace the non defined ${MP} property by a constant boolean value for now. ${MP} was removed long time ago
svn path=/trunk/; revision=33285
2008-05-04 23:32:43 +00:00
James Tabor
9b3cb4f2aa Impement DxEngSetDCState, DxEngIsHdevLockedByCurrentThread and DxEngUn & ReferenceHdev.
svn path=/trunk/; revision=33284
2008-05-04 23:17:10 +00:00
Magnus Olsen
4c802c0a86 remove more of no working macro DXG_GET_INDEX_FUNCTION
svn path=/trunk/; revision=33283
2008-05-04 21:30:15 +00:00
Marc Piulachs
86331561cd - simple but colorful new GDI screensaver
svn path=/trunk/; revision=33282
2008-05-04 21:10:36 +00:00
Marc Piulachs
908bc24d72 - Add language name tooltip to kbswitch systray icon
svn path=/trunk/; revision=33281
2008-05-04 20:58:15 +00:00
Marc Piulachs
0b4fd5a09c - Fix logon screensaver preview
svn path=/trunk/; revision=33279
2008-05-04 20:10:26 +00:00
Magnus Olsen
a811ab72f3 Fixed one test so it be more fair.
svn path=/trunk/; revision=33278
2008-05-04 19:58:33 +00:00
Dmitry Chapyshev
1a6f20f880 - Synchronize with wine head
svn path=/trunk/; revision=33277
2008-05-04 19:41:25 +00:00
Dmitry Chapyshev
0d8a3eb240 - Update header file
svn path=/trunk/; revision=33276
2008-05-04 19:40:09 +00:00
Magnus Olsen
8caedee1dd fixed some typo and stefan100 suggest to remove a #ifdef statement
svn path=/trunk/; revision=33275
2008-05-04 18:05:32 +00:00
Magnus Olsen
958edf5d4b fixed NtUserEnumDisplaySettings bug inside IntEnumDisplaySettings DWORD DisplayNumber was not init before it was use.
GetDisplayNumberFromDeviceName did not allown pdevice with NULL value or string lenght is 0 thuse have been fixed. 


svn path=/trunk/; revision=33274
2008-05-04 17:58:43 +00:00
Dmitry Chapyshev
2260e9862a - Change icon
svn path=/trunk/; revision=33273
2008-05-04 16:03:40 +00:00
Dmitry Chapyshev
9751314b2e - Update and fix all translations
svn path=/trunk/; revision=33272
2008-05-04 15:24:43 +00:00
Gregor Brunmar
abb783966b * Implemented IDirect3D9::GetNumberOfSwapChains()
svn path=/trunk/; revision=33271
2008-05-04 15:02:01 +00:00
Magnus Olsen
8ef0a1282d Speed optimize NtUserEnumDisplaySettings bit by remove
COPY_DEVMODE_VALUE_TO_CALLER macro and using SEH directly 

svn path=/trunk/; revision=33270
2008-05-04 14:31:20 +00:00
Johannes Anderwald
5e393b5c8d - retrieve more information for DirectSound adapters
- use dxdiag parent window for dialogs which have pushbuttons
- restore window size after finishing DirectDraw tests
- use wsprintfW over swprintf- cut off build info from version string

svn path=/trunk/; revision=33269
2008-05-04 13:58:45 +00:00
Johannes Anderwald
ba45724f37 - add mmreg.h
svn path=/trunk/; revision=33268
2008-05-04 13:51:59 +00:00
Magnus Olsen
478e831a2b NtUserEnumDisplaySettings
remove two MmCopyFromCaller, never use MmCopyFromCaller for it make debuging pain in the ass

svn path=/trunk/; revision=33267
2008-05-04 13:23:19 +00:00
Gregor Brunmar
1bfda5563c * Updated faulty documentation about Adapter parameter for IDirect3D9 methods
* Implemented IDirect3DDevice9::GetSwapChain()

svn path=/trunk/; revision=33266
2008-05-04 12:47:57 +00:00
Magnus Olsen
18c4d33491 Bugfix : NtGdiDdDeleteDirectDrawObject thx irc : stefan100 to spotted the misake
svn path=/trunk/; revision=33265
2008-05-04 12:42:52 +00:00
Magnus Olsen
601309743b Fixed a stupied bug inside intEnableReactXDriver, we only allown create dx context handler one time, second time it fail. note directdraw/dxg.sys have own handler table that work exacly same as gdi handler table and have same limit.
svn path=/trunk/; revision=33264
2008-05-04 12:00:31 +00:00
Gregor Brunmar
9eb5b2b938 * Added stubs for IDirect3DDevice9
* Moved IDirect3D9 specific helper functions from generic helpers to implementation file
* Renamed a couple of internal D3D9 structs

svn path=/trunk/; revision=33263
2008-05-04 11:48:06 +00:00
Colin Finck
8cfcdea5fa Move console.dll properly, Part 2/2. This commit will fix build again.
svn path=/trunk/; revision=33262
2008-05-04 09:04:14 +00:00
Colin Finck
a9824091f9 Move console.dll properly, Part 1/2. This commit will break build.
svn path=/trunk/; revision=33261
2008-05-04 09:01:59 +00:00
Dmitry Chapyshev
de35450565 - Update icons
svn path=/trunk/; revision=33260
2008-05-04 06:49:27 +00:00
James Tabor
3139c0bd7a Fix DxEngCreateMemoryDC, GetDesktopDC and DeleteDC.
svn path=/trunk/; revision=33259
2008-05-03 23:30:19 +00:00
Dmitry Chapyshev
e3eb09236b - Update translations
svn path=/trunk/; revision=33258
2008-05-03 15:41:57 +00:00
Dmitry Chapyshev
2570e76254 - Add new layouts to bootcd
svn path=/trunk/; revision=33257
2008-05-03 15:30:11 +00:00
Dmitry Chapyshev
94c43e1921 Add keyboard layouts:
- Turkish Q
- Turkish F
- Ukrainian (Student)
- Uzbek (Cyrillic)
- Vietnamese

svn path=/trunk/; revision=33256
2008-05-03 15:29:25 +00:00
Magnus Olsen
0ab92a340f Bugfix : DRVFN gaEngFuncs one row was wrong thx irc : Pigglesworth for notice it.
start fixing prototype for DxEngDeleteDC

svn path=/trunk/; revision=33255
2008-05-03 11:46:34 +00:00
Magnus Olsen
e54790f042 implemented partly DxEngGetDesktopDC
svn path=/trunk/; revision=33254
2008-05-03 10:23:14 +00:00
Dmitry Chapyshev
f343627af2 - Fix build
svn path=/trunk/; revision=33251
2008-05-02 20:36:07 +00:00
Magnus Olsen
028236f96f Fixed the last regress I intdues for loading ms dxg.sys now it works loading again and we come allot futuer with our ddraw.dll.
without using hacks. 

svn path=/trunk/; revision=33249
2008-05-02 20:16:03 +00:00
Magnus Olsen
21767c48f6 re adding a small hack for edd_directdraw_globalk getting clear out some where in win32k. we need track down this bug.
svn path=/trunk/; revision=33245
2008-05-02 19:42:38 +00:00
Magnus Olsen
e116f0e2e4 fixed a small regress for 3 boot i did by mistake intrudes. sorry
svn path=/trunk/; revision=33244
2008-05-02 19:25:26 +00:00
Magnus Olsen
ed0fe8ba5a cleanup the startup process allot
1. Remove the hack in ddraw.c that only allown one edd_directdraw_global it been move to dc.c for it is each drv that need alloc this space. 
2. Remove we do not trying loading dxg.sys twice. 
3. Remove we do not try enable the dx interface when it is already enable, better check for it is need it later. 

svn path=/trunk/; revision=33242
2008-05-02 18:31:21 +00:00
Magnus Olsen
b08374c708 fix a typo in function DxEngGetHdevData the sub function DxEGShDevData_OpenRefs did validate data bit wrong
it should send back 0 for no openrefs and 1 for openrefs.
thx Pigglesworth debuglog to found it. 

svn path=/trunk/; revision=33241
2008-05-02 17:47:46 +00:00
Dmitry Chapyshev
c5e44a797e - Add more defines
svn path=/trunk/; revision=33240
2008-05-02 14:44:43 +00:00
Dmitry Chapyshev
5124464786 - Change icons to Tango icons
svn path=/trunk/; revision=33239
2008-05-02 14:35:45 +00:00
Dmitry Chapyshev
d2964eccaf - Add InstallNewDevice exported function
svn path=/trunk/; revision=33238
2008-05-02 14:15:04 +00:00
Dmitry Chapyshev
23b26d3b26 - Move console.dll to cpl folder
svn path=/trunk/; revision=33237
2008-05-02 14:08:25 +00:00
Ged Murphy
6580355f68 fix build
svn path=/trunk/; revision=33235
2008-05-02 13:25:58 +00:00
Ged Murphy
c4d7bed972 - Remove CLSID_RebarBandSite from uuid, and contain it within explorer as it's an undoc GUID
- Load SHInvokeDefaultCommand when required to avoid msvc linker dependencies
- explorer_new now builds and links with msvc9, although it'll crash if you try to run it at the moment. Investigation needed.

svn path=/trunk/; revision=33234
2008-05-02 12:09:39 +00:00
Ged Murphy
7be668ec63 Fix build due to recent header changes
svn path=/trunk/; revision=33233
2008-05-02 08:43:47 +00:00
Ged Murphy
8e8e7c35eb - Get the locations of DrawCaptionTemp and RegisterShellHook when required instead of at link time. This allows building with msvc due to missing .lib stuff
- Remove SHGetViewStatePropertyBag test code
- Move more stuff to appropiate headers
- Remove unneeded linker libs

svn path=/trunk/; revision=33232
2008-05-02 08:22:09 +00:00
Dmitry Chapyshev
f593891576 - The division of right and the left menu
- Fix formatting in translations

svn path=/trunk/; revision=33231
2008-05-02 07:58:03 +00:00
Dmitry Chapyshev
3a8f1dc806 - Adding indexes to getting localized layouts names
svn path=/trunk/; revision=33230
2008-05-02 06:45:46 +00:00
Dmitry Chapyshev
964ac05304 - Getting a localized layout names from input.dll
svn path=/trunk/; revision=33229
2008-05-02 06:42:45 +00:00
Dmitry Chapyshev
aa249071fc - Getting a localized layout names from input.dll
- Add some layouts to resources

svn path=/trunk/; revision=33228
2008-05-02 06:41:59 +00:00
Magnus Olsen
1163b5af3c Fixed some struct member positions in EDD_DIRECTDRAW_GLOBAL
svn path=/trunk/; revision=33227
2008-05-02 05:45:29 +00:00
Martin Fuchs
5cfce75c9a update to XMLStorage version 1.3
svn path=/trunk/; revision=33226
2008-05-01 21:17:35 +00:00
Magnus Olsen
6b7e77bfc9 Thx fireball to found the real issue with dxg.sys why the hell it did send down NULL
we need the graphic drv DeviceObject be sent in, it is known as PDev->hSpooler in windows
reactos win32k does not set it up yet so we using reactos version of it 
it call PDev->VideoFileObject->DeviceObject.

svn path=/trunk/; revision=33225
2008-05-01 21:00:54 +00:00
Colin Finck
4c675706f2 Matthias Kupfer (matthias DOT kupfer AT informatik DOT tu-chemnitz DOT de):
- Fix some minor translation errors in the german translation and adjust the size of the elements of some control panel applets.

See issue #3211 for more details.

svn path=/trunk/; revision=33224
2008-05-01 20:12:53 +00:00
Aleksey Bragin
5e52f1cb74 - Remove incorrect check introduced in r33221 since Windows does not do it (try to call it on your Windows 2003 installation, and see results).
svn path=/trunk/; revision=33223
2008-05-01 19:44:30 +00:00
Magnus Olsen
917f4dca07 remove some debug data that was double. it is not longer need it
svn path=/trunk/; revision=33222
2008-05-01 19:33:18 +00:00
Magnus Olsen
70f8d998df Bugfix ntoskrnl : IoBuildAsynchronousFsdRequest the param DeviceObject, can be NULL when it comes from dxg.sys for dxg will set it only for AGP graphic card or newer.
Cleanup : intEnableReactXDriver it contain less code now. for most of the work are done by dxg.sys.
now ms dxg.sys fill the edd_directdraw_gloabl struct by it self. 



svn path=/trunk/; revision=33221
2008-05-01 19:20:10 +00:00
Pierre Schweitzer
bf34df5460 Added French translation for kbswitch.exe
svn path=/trunk/; revision=33220
2008-05-01 17:19:38 +00:00
Magnus Olsen
fdc64df76a Fixed DRIVER_FUNCTIONS this struct are being passdown to ms dxg.sys and it access it direcly so we need it match eacly windows xp/2003 layout
Fixed DRIVER_BuildDDIFunctions it now setup all api from the drv to DRIVER_FUNCTIONS struct. it is update to windows 2003, we can now use all hw acc api that exists in the drv.
we do not doing that yet. 



svn path=/trunk/; revision=33217
2008-05-01 16:36:42 +00:00
Dmitry Chapyshev
99eaa62157 - Implement layouts indicator
svn path=/trunk/; revision=33216
2008-05-01 16:00:51 +00:00
Dmitry Chapyshev
842191a3fc - Implement deleting layouts
svn path=/trunk/; revision=33215
2008-05-01 15:25:12 +00:00
Ged Murphy
611f8d8c45 DECLSPEC_NOVTABLE isn't supported by gcc
svn path=/trunk/; revision=33214
2008-05-01 14:56:54 +00:00
Ged Murphy
b14ae65161 - Change the ... gcc specific statement
- Seperators with MENUEX now need the full definition (although the docs don't say this yet)
- explorer_new now builds with msvc9. Doesn't link yet though...

svn path=/trunk/; revision=33213
2008-05-01 14:52:11 +00:00
Daniel Reimer
b2db2388e9 Polish Translation Update by Olaf Siejka
Updated German USETUP Translation.
To Translators: kbswitch is open for translations now in my eyes. DXDiag maybe too. Ask Johannes Anderwald about it

svn path=/trunk/; revision=33211
2008-05-01 13:07:58 +00:00
Magnus Olsen
6d8cb64ea3 add regkey HKLM\SYSTEM\CurrentControlSet\Control\GraphicsDrivers\DCI\Timeout for dxg.sys it is the second timeout value for a surface lock see url for more informations http://www.microsoft.com/technet/prodtechnol/windows2000serv/reskit/regentry/28237.mspx?mfr=true thx irc:stefan100 for the url
remove one hack in intEnableReactXDriver thx to this info. 




svn path=/trunk/; revision=33210
2008-05-01 12:08:02 +00:00
Ged Murphy
f30abc5fe4 - Add IMenuBand COM interface
- Add IInitializeObject and IBanneredBar COM interfaces. Manually add the members, which is a bit of a hack. We need to fix DECLARE_INTERFACE_IID_ to pre-register interfaces
- explorer_new no longer has redefinition errors when attempting to build with msvc9

svn path=/trunk/; revision=33209
2008-05-01 11:01:10 +00:00
Magnus Olsen
632784d080 Do not double set value that have already been set by ms dxg.sys
svn path=/trunk/; revision=33208
2008-05-01 09:51:25 +00:00
Ged Murphy
7c46bc1d7a - Add IShellView2 and IShellView3 COM interfaces
- Add IBandSite interface
- Add COM object typedefs and #defines to shtypes.idl

svn path=/trunk/; revision=33207
2008-05-01 09:39:37 +00:00
Magnus Olsen
5e70dd89f7 Fixed a smaller bug in intEnableReactXDriver
it was not the drv hPDev that was the frist param it was hdev aka pDC->pPDev
now we see value getting fill in to edd_DdirectDraw_Global from pfnDdEnableDirectDraw fucntion in ms dxg.sys 

svn path=/trunk/; revision=33206
2008-05-01 09:24:53 +00:00
Ged Murphy
8c875b905d More COM interfaces needed for the new explorer
svn path=/trunk/; revision=33205
2008-05-01 08:21:15 +00:00
Ged Murphy
90985d2f94 Start to fix some COM interfaces which will be used by the new explorer shell
svn path=/trunk/; revision=33204
2008-05-01 07:39:21 +00:00
Dmitry Chapyshev
9ab11b5a2d - Remove kbswitch from autorun
svn path=/trunk/; revision=33203
2008-05-01 07:36:47 +00:00
Dmitry Chapyshev
de0dcd8f04 - Add new layouts to bootcd
svn path=/trunk/; revision=33202
2008-05-01 07:33:59 +00:00
Dmitry Chapyshev
e23208d657 Add keyboard layouts:
- Serbian (Cyrillic)
- Serbian (Latin)

svn path=/trunk/; revision=33201
2008-05-01 07:33:29 +00:00
Pierre Schweitzer
4dc1dea0a6 - Added a stub for NtfsLib
- Added a stub for untfs.dll
- Added the support of untfs.dll to autochk.exe (and a bit reviewed code when loading provider)
That way, autochk won't complain anymore... And it creates places to work!

svn path=/trunk/; revision=33199
2008-04-30 21:35:23 +00:00
Timo Kreuzer
fabaf5892a - DxEngGetHdevData: return a DWORD_PTR instead of a DWORD
- DxEngSetHdevdata: use DWORD_PTR as Data parameter
- DxEngGetDcState: return a DWORD_PTR instead of a DWORD

svn path=/trunk/; revision=33198
2008-04-30 20:34:04 +00:00
Johannes Anderwald
f938064c8d - use tab control as parent for the child dialogs
- fixes display problems
- thanks to GedMurphy & Colin_Finck for finding the issue

svn path=/trunk/; revision=33196
2008-04-30 10:55:35 +00:00
Johannes Anderwald
efc283ea0f - fix a bug in tab selection code
- add DirectSound dialog resources

svn path=/trunk/; revision=33195
2008-04-29 23:05:57 +00:00
Aleksey Bragin
5d74a4dc1f - Enter into critical region before acquiring the resource.
See issue #3193 for more details.

svn path=/trunk/; revision=33193
2008-04-29 20:01:38 +00:00
Aleksey Bragin
bc946f199f - All DxEng APIs are STDCALL. The only possible exception are FASTCALLs, but this is to be determined and fixed by Magnus.
- Also fix numerous typos, greatlordisms, and other shamefully-looking strings.

svn path=/trunk/; revision=33191
2008-04-29 17:00:31 +00:00
Aleksey Bragin
7845d37436 - Fix typos in source code comments.
svn path=/trunk/; revision=33190
2008-04-29 15:36:11 +00:00
Johannes Anderwald
92cb366cf1 RRF_RT_REG_SZ is already defined in winreg.h
svn path=/trunk/; revision=33189
2008-04-29 15:24:54 +00:00
Johannes Anderwald
84d4c7f4da - fix flickering of DirectDraw tests by Pigglesworth (Kamil Hornicek)
- enumerate all available display / sound adapters dynamically at start (does not work yet)
- rewrite TabCtrl_OnSelChange to reflect changes


svn path=/trunk/; revision=33188
2008-04-29 12:19:55 +00:00
Johannes Anderwald
dd03a00484 - query current time zone
- retrieve localized country for a version
- pass length parameter to avoid potential buffer overflows

svn path=/trunk/; revision=33187
2008-04-29 10:27:03 +00:00
James Tabor
5d1a36463e Implement DxEngSetDCOwner, add stub for IntGdiSetDCOwnerEx.
svn path=/trunk/; revision=33186
2008-04-29 02:00:56 +00:00
James Tabor
6e7d793b62 Update DxEngSetDCOwner and add owner masks.
svn path=/trunk/; revision=33185
2008-04-29 01:46:58 +00:00
Johannes Anderwald
ff187406a6 - enumerate driver files, driver version and driver time
svn path=/trunk/; revision=33184
2008-04-28 21:47:43 +00:00
Andrey Korotaev
67e7cbefcb Fix build
svn path=/trunk/; revision=33183
2008-04-28 20:20:53 +00:00
Dmitry Chapyshev
94ae49ad03 - Add some defines
svn path=/trunk/; revision=33182
2008-04-28 19:29:08 +00:00
Johannes Anderwald
bd67e0b8ba - implement more details for display adapter page
- enlarge general details groupbox

svn path=/trunk/; revision=33181
2008-04-28 17:16:57 +00:00
Dmitry Chapyshev
ed2f55b464 - Update Russian translation
svn path=/trunk/; revision=33180
2008-04-28 16:57:57 +00:00
Johannes Anderwald
fe85b2aafe - add DirectDraw tests by Pigglesworth (Kamil Hornicek)
- add resources for display page
- start implementing display page
- sync german resources
- display custom service provider for DirectPlay

svn path=/trunk/; revision=33178
2008-04-28 15:14:12 +00:00
Johannes Anderwald
a8e3a8cc03 - add GUID_DEVCLASS_DISPLAY
- fix format

svn path=/trunk/; revision=33177
2008-04-28 14:55:21 +00:00
Dmitry Chapyshev
67880e7352 - Add support second keyboard layout
- Update all translations

svn path=/trunk/; revision=33175
2008-04-28 14:04:22 +00:00
Marc Piulachs
dbe6f7e739 make rbuild files XML compliant by adding the XInclude namespace , no code change
svn path=/trunk/; revision=33174
2008-04-28 13:44:11 +00:00
Magnus Olsen
621c32a3f3 update intEnableReactXDriver with more code
svn path=/trunk/; revision=33173
2008-04-28 06:03:29 +00:00
Dmitry Chapyshev
506f10166e - Add kbswitch to autorun
svn path=/trunk/; revision=33172
2008-04-27 20:42:01 +00:00
Dmitry Chapyshev
30d6c42539 - Don't be loaded more than one copy of the application (based on mutex)
svn path=/trunk/; revision=33171
2008-04-27 17:14:58 +00:00
Marc Piulachs
d74dbb71d9 spanish translation for kbswitch
svn path=/trunk/; revision=33170
2008-04-27 17:09:51 +00:00
Magnus Olsen
d69543779c Getting the pain in the ass api DxDdCreateDirectDrawObject inside ms dxg.sys working it is now returning info now
it needs a negtive value set in struct edd_directdraw_global member llAssertModeTimeout. 

svn path=/trunk/; revision=33169
2008-04-27 17:00:06 +00:00
Dmitry Chapyshev
3f20c9565c - Implement current layout indicator
svn path=/trunk/; revision=33168
2008-04-27 15:40:42 +00:00
Magnus Olsen
687cbecc1a add new : define a new flags for edd_directdraw_global, struct member in edd_directdraw_global
Fixed : some comment 
Add DD_MISCELLANEOUS2CALLBACKS so it works now with ms dxg.sys from user mode with callbacks.
it mean follow api from the gf card drv should work now with syscall to win32k from user mode
NtGdiDdAlphaBlt, NtGdiDdCreateSurfaceEx, NtGdiDdGetDriverState, NtGdiDdDestroyDDLocal


svn path=/trunk/; revision=33167
2008-04-27 15:31:47 +00:00
Daniel Reimer
d312eca131 Fix one warning.
svn path=/trunk/; revision=33166
2008-04-27 15:18:20 +00:00
Daniel Reimer
5ca87d6bc1 Bug 3198: add new slovak translations and some changes by Mário Kačmár (kario@szm.sk)
Bug 3196: some spanish traslation by Javier Remacha (remialdo@gmail.com)

svn path=/trunk/; revision=33165
2008-04-27 15:02:13 +00:00
Magnus Olsen
a5110635fa add DD_VIDEOPORTCALLBACKS it mean directx video port interface should started working now to user mode, with ms dxg.sys
svn path=/trunk/; revision=33164
2008-04-27 13:05:13 +00:00
Magnus Olsen
a1197a2e61 ms dxg.sys can now found and execute GetAvailDriverMemory it works from usermode with syscall,
svn path=/trunk/; revision=33163
2008-04-27 12:47:28 +00:00
Magnus Olsen
c08cbfa7a2 adding more code for init the drv in intEnableReactXDriver
svn path=/trunk/; revision=33162
2008-04-27 12:11:00 +00:00
Dmitry Chapyshev
e18ad707c8 - Add new layouts to bootcd
svn path=/trunk/; revision=33161
2008-04-27 12:02:29 +00:00
Dmitry Chapyshev
2b7c04a7d9 Add keyboard layouts:
- Romanian
- Tatar
- US Dvorak for left hand
- US Dvorak for right hand
- US International

svn path=/trunk/; revision=33160
2008-04-27 12:01:38 +00:00
Magnus Olsen
a5e7b91fe0 no new code, only fixed some more members in EDD_DIRECTDRAW_GLOBAL struct, and copy some private note to it.
svn path=/trunk/; revision=33159
2008-04-27 09:41:21 +00:00
Dmitry Chapyshev
72aa848eff - Increasing the size of controls
svn path=/trunk/; revision=33158
2008-04-27 09:07:43 +00:00
Magnus Olsen
3919a3d42a EDD_DIRECTDRAW_GLOBAL mark out ddSurfaceCallbacks is corrct and corrected the comment about it
updateddump_edd_directdraw_global so it dump even more data. 

svn path=/trunk/; revision=33157
2008-04-27 01:11:13 +00:00
Magnus Olsen
08f772b7c6 BugFix : EDD_DIRECTDRAW_GLOBAL put ddCallbacks in right position.
that mean  driver api DestroyDriver, CreateSurface, SetColorKey, SetMode, WaitForVerticalBlank, CanCreateSurface, CreatePalette, GetScanLine, MapMemory works inside ms dxg.sys now
test of that is NtGdiDdCreateSurface, NtGdiDdSetColorKey, NtGdiDdWaitForVerticalBlank, NtGdiDdCanCreateSurface, NtGdiDdCreatePalette, NtGdiDdGetScanLine
works and show prof it being call to the drv. that mean we got the graphic card api working now. It still exists bugs. Long live our ReactX that showing frist life sign with ms dxg.sys inside vmware and thuse api working. But it is not egunt getting a dx apps working yet. 

svn path=/trunk/; revision=33156
2008-04-26 20:18:42 +00:00
Dmitry Chapyshev
c6a77c874d - Add new layouts to bootcd
svn path=/trunk/; revision=33155
2008-04-26 19:07:51 +00:00
Dmitry Chapyshev
14c92a0ec5 Add keyboard layouts:
- Canadian French (Legacy)
- Canadian Multilingual Standard
- Dutch
- Estonian
- Georgian
- Latvian
- Macedonian (FYRO)

svn path=/trunk/; revision=33154
2008-04-26 19:07:16 +00:00
Magnus Olsen
77edaa1c87 finish proting of intEnableDriver from ReactOS 0.3.1 - 0.3.2 that have been rename to intEnableReactXDriver
lefttodo fix correct positions of everything in the edd_directdraw_global amd fill in the driver phdev correct in that struct as well.
Hacked : NtGdiDdGetScanLine for now, it crash when it being call again. 


svn path=/trunk/; revision=33153
2008-04-26 18:25:24 +00:00
Magnus Olsen
cd73d524b9 Add : started port in intEnableDriver from reactos 0.3.2 and rename it to intEnableReactXDriver. it is the part activate the graphic card directx support.
Add : more debug data for ReactX it is need it to fill all edd_ struct right, allot of the debug functions will go away after we got up stable interface. 
BugFix : EDD_DIRECTDRAW_LOCAL the struct did miss one member. 

svn path=/trunk/; revision=33152
2008-04-26 17:27:35 +00:00
Magnus Olsen
da69013f65 remove some debug output it is not longer need it.
Bugfix PEDD_DIRECTDRAW_LOCAL define 
add allot debug data at NtGdiDdQueryDirectDrawObject we are here now, prepare activate the whole graphic driver directx interface. 
we will add back some older code of the old desgin of the directx interface, for we need init the graphic card directx interface
it is not done by dxg.sys, it is done by win32k and dxg.sys using the cached data from win32k. rember it is cached for each drv. 
but we will only support one graphic drv for dx for now, when the code comes alive again.

svn path=/trunk/; revision=33151
2008-04-26 14:13:59 +00:00
Magnus Olsen
9206e4dfaf fixed bit more in the struct EDD_DIRECTDRAW_GLOBAL,
the struct are still wrong. trust only on thuse I wrote verify on 

svn path=/trunk/; revision=33150
2008-04-26 12:55:14 +00:00
Daniel Reimer
75fc10972f Add alternative German "de-ergo/eMeier 0.1", "NEO 1.1" and "Ristome" Layouts.
If you have a modified Keyboard lying around, have fun writing.

svn path=/trunk/; revision=33149
2008-04-26 12:30:46 +00:00
Magnus Olsen
c7ef3adff2 Bugfix : EngDeleteSemaphore one line patch by Samuel Serapión (samcharly at hotmail dot com) aka irc : encoded
-------------
it did not releas the create resuse, it was leaking.  

svn path=/trunk/; revision=33148
2008-04-26 12:11:01 +00:00
Magnus Olsen
a5887ec19a fixed : we do not longer losing the hdev for ms dxg.sys
fixed : remove few hacks I did and reactivate some api I did take offline. 
the struct EDD_DIRECTDRAW_LOCAL from yuah gdi book does not match windows xp, I have verify some member for windows xp.
the struct EDD_DIRECTDRAW_GLOBAL from yuah gdi book does not match windows xp, I have verify some member for windows xp.
and add two new member so hPDEV get in right place. 



svn path=/trunk/; revision=33147
2008-04-26 09:29:10 +00:00
Dmitry Chapyshev
ae3f9c0f59 - Add US IBM Arabic 238_L and Icelandic layouts to bootcd
svn path=/trunk/; revision=33146
2008-04-25 16:50:06 +00:00
Dmitry Chapyshev
94996695bd - Add US IBM Arabic 238_L keyboard layout
- Add Icelandic keyboard layout

svn path=/trunk/; revision=33145
2008-04-25 16:49:17 +00:00
Daniel Reimer
4cbe7697a1 Replace ROSCalc with Wine Calc.
svn path=/trunk/; revision=33144
2008-04-25 15:41:03 +00:00
Daniel Reimer
bdfd4666ac Replace Wine Calc with ROSCalc
svn path=/trunk/; revision=33143
2008-04-25 15:40:31 +00:00
Daniel Reimer
4c90f1b335 What do we learn here? Always try patches with a updated trunk. Removed Bulgarian Translation again. Its outdated.
svn path=/trunk/; revision=33142
2008-04-25 11:55:28 +00:00
Daniel Reimer
3f380b3dc9 Bug 3192: Bulgarian translation of ReactOS by Станев (sstpr@narod.ru)
Bug 3194: Czech translation update by Radek Liška (radekliska@gmail.com)

svn path=/trunk/; revision=33141
2008-04-25 11:46:01 +00:00
Johannes Anderwald
baf72dcc52 - implement enumerating DirectPlay service providers
- update resources

svn path=/trunk/; revision=33140
2008-04-25 10:56:18 +00:00
Aleksey Bragin
37f8eef287 - Add more MDL flags.
- Reformat MDL implementation (mdlsup.c) to make it readable, and add comments.
- Add a couple dozen assertions to validate that MDL flags, state and addresses.
- Use ADDRESS_AND_SIZE_TO_SPAN_PAGES macro for nice MDL calculations.
- Set Mdl->Process only when required, and set/unset various MDL flags which were being ignored/incorrectly manipulated.
- Keep track of Process->NumberOfLockedPages during MDL lock/unlock.
- Don't return the base address of the MDL allocation when mapping locked pages - MDLs have a byte offset which was being ignored.
- Fix incorrect usage of MDLs found in the kernel (thanks to the new assertions).
- Split kernel vs. user mode MDL requests in a much more organized and optimized fashion.
- Fix a number of smaller bugs throughout the code.

svn path=/trunk/; revision=33139
2008-04-25 07:55:12 +00:00
Magnus Olsen
c9e1e6a6ad adding more debug output for dx
svn path=/trunk/; revision=33138
2008-04-25 05:47:32 +00:00
Timo Kreuzer
92fefe8a51 ULONG -> SIZE_T
svn path=/trunk/; revision=33137
2008-04-25 01:42:25 +00:00
Timo Kreuzer
7a84e0d0f9 ULONG -> SIZE_T for ZwAllocateVirtualMemory and MmMapViewOfSection
svn path=/trunk/; revision=33136
2008-04-25 01:16:08 +00:00
Timo Kreuzer
3115ae246c fix cast of pointer: ULONG -> ULONG_PTR
svn path=/trunk/; revision=33135
2008-04-25 01:09:28 +00:00
Timo Kreuzer
26ce8577f2 fix EngAllocUserMem parameter
svn path=/trunk/; revision=33134
2008-04-25 00:38:32 +00:00
Aleksey Bragin
d136b969cf - Rewrite NtRead/WriteVirtualMemory around MiCopyVirtualMemory, and use MmMapLockedPagesSpecifyCache to do the bulk of the work, instead of the MDL hacks that were previously used.
- Reformat and cleanup the entire file, deprecate NtVirtualLock/Unlock which didn't really work (and aren't really required for any apps for now)
- Major perf optimizations to NtRead/VirtualMemory: Use pool memory transfer when more efficient than MDL, and use local stack buffer when size permits.
- This patch provides up to 109% improvement (more than twice as fast) in certain virtual memory operations.
- Thanks to Alex for researching this issue, and providing the internal information on the various optimizations and behaviors the NT implementation uses.

svn path=/trunk/; revision=33133
2008-04-24 21:26:01 +00:00
Gregor Brunmar
4b3ff92f36 Added some work-in-progress structs needed for IDirect3D9::CreateDevice()
svn path=/trunk/; revision=33132
2008-04-24 19:57:41 +00:00
Gregor Brunmar
48b2c90e2f Renamed internal Direct3D9 structure to make more sense
svn path=/trunk/; revision=33131
2008-04-24 18:29:50 +00:00
Colin Finck
a8253264f5 kbswitch:
- Revert some changes from r33106:
    * Set the size of szTempLCID back to CCH_LAYOUT_ID + 1, a layout ID mustn't be longer than this.
      As we pass the correct size to the Registry functions as well, there can be no buffer overflow.
      MAX_PATH was probably used here, because input.dll had a bug as well, so that it saved the layout ID with the wrong length.
    * Use wsprintf over _stprintf
    * Pass the correct value to dwBufLen (in bytes, not in TCHAR's!)
- Add back SystemParametersInfo, so that the system gets to know about the keyboard layout change.
  EnumWindows is still used for setting the new keyboard layout to all existing Windows.
- Don't show a different menu for left and right clicks, that's not how most popup menus work under Windows.
  Instead append all menu items from the menu template to the popup menu.
- Call SetForegroundWindow before and post a WM_NULL message after calling TrackPopupMenu, so that the popup menu will be closed, when the user clicks somewhere else
- Fix indentation

input.dll:
- Fix some incorrect lengths passed to other functions
- Get rid of some unneeded variables
- Always use the 32-bit Registry functions over the old 16-bit deprecated ones
- Fix some other stuff here and there

svn path=/trunk/; revision=33130
2008-04-24 17:57:48 +00:00
Aleksey Bragin
9dc0da2dea - Reformat Se code and put functions to more appropriate locations.
svn path=/trunk/; revision=33129
2008-04-23 20:38:37 +00:00
Aleksey Bragin
c72bfe8de2 - Fix logic bugs in LpcRequestPort (which is not the same as NtRequestPort as someone incorrectly assumed previously) and also reference/dereference the process who owns the server mapping.
svn path=/trunk/; revision=33128
2008-04-23 16:40:08 +00:00
Dmitry Chapyshev
983f990ed9 - Update Russian translation
svn path=/trunk/; revision=33127
2008-04-23 15:54:29 +00:00
Daniel Reimer
5da9bd0da2 Revert r33093. It breaks build for me and fixes no circular dependency for the rest.
Set the new added wine dlls to autosync in readme.wine.

svn path=/trunk/; revision=33126
2008-04-23 09:55:55 +00:00
Magnus Olsen
20a98cecc9 start setup edd directdraw local
svn path=/trunk/; revision=33125
2008-04-23 05:45:59 +00:00
Magnus Olsen
e637f94339 change directx struct
svn path=/trunk/; revision=33124
2008-04-23 05:44:20 +00:00
Magnus Olsen
4f75f1d31c comment out one line for now.
for we will use same struct as gdi object in dx/reactx header. 

svn path=/trunk/; revision=33123
2008-04-23 05:23:51 +00:00
Magnus Olsen
0d59c944b1 take offline some code, this file should be take code from win32k.
it is same as gdi handle alloc doing it. 

svn path=/trunk/; revision=33122
2008-04-23 05:21:59 +00:00
Johannes Anderwald
15d071da9a - enlarge the dialog window
- load treeview classes on startup
- link to dinput8 + dxguid library
- start implementing DirectInput dialog
- use DirectInput version 8 for now


svn path=/trunk/; revision=33121
2008-04-22 23:19:50 +00:00
KJK::Hyperion
5e675fb7e6 modified include/psdk/ntdef.h
Make C_ASSERT standards-compliant. Hopefully fixed for good

svn path=/trunk/; revision=33120
2008-04-22 23:09:05 +00:00
Johannes Anderwald
468e944166 - add missing constants required for dxdiag
svn path=/trunk/; revision=33119
2008-04-22 22:52:44 +00:00
KJK::Hyperion
8388a8705e I am stupid and buildbot is broken
svn path=/trunk/; revision=33118
2008-04-22 22:51:30 +00:00
KJK::Hyperion
5870ed88cc modified include/psdk/ntdef.h
C_ASSERT is equivalent to a typedef, NOT a variable declaration

modified   ntoskrnl/mm/pe.c
   Convert as many ASSERTs as possible to C_ASSERT

svn path=/trunk/; revision=33117
2008-04-22 22:45:53 +00:00
Aleksey Bragin
e74ec0acfc Bug fixes from Alex:
- CDFS should enter a critical region before acquiring a resource.
- "Fix" resource assert during installation by adding some padding at the end of the VFAT FCB header -- corruption happens at pad 51.
- Once we detect corruption at pad 51, skip the FCB instead of attempting to flush it.
- Fix a serious bug in our detection of incorrect resource usage while APCs are not disabled.
- Fix a serious bug which caused shared resources not to wake up waiters when it was released, and which cause it to wake up waiters when there were still active locks held.
 
New ERESOURCE implementation by Aleksey (thanks to Alex for providing the information required)
- Remove ERESOURCE_XP concept, and fix the three incorrect and different definitions of the ERESOURCE structure.
- Fix the ERESOURCE implementation to use the new Vista ERESOURCE type. Two main changes:
   * The count is now a 32-bit count called ActiveEntries. ActiveCount is now simply a flip-flop bit (0/1) for backward compatibility (we set to 0 when active entries is 0, and 1 when active entries is > 0)
   * Instead of caching two owners, we only cache one owner, in the OwnerEntry field.
- Optimize some search algorithms slightly (just better code).
- Remove duplicated code for ExReleaseResourceLite and call ExReleaseResourceForThreadLite instead. Alex says this is ok.

svn path=/trunk/; revision=33111
2008-04-22 20:44:34 +00:00
3393 changed files with 180593 additions and 321146 deletions

View File

@@ -1,14 +0,0 @@
<?xml version="1.0"?>
<project name="TechBot" default="build">
<target name="build" description="Build components">
<delete dir="bin" failonerror="false" />
<nant buildfile="Compression/Default.build" />
<nant buildfile="CHMLibrary/Default.build" />
<nant buildfile="TechBot.IRCLibrary/Default.build" />
<nant buildfile="TechBot.Library/Default.build" />
<nant buildfile="TechBot.Console/Default.build" />
<nant buildfile="TechBot/Default.build" />
</target>
</project>

View File

@@ -0,0 +1,42 @@
using System;
using TechBot.Library;
namespace TechBot.Commands.Common
{
public abstract class BugCommand : Command
{
// private string m_BugID = null;
public BugCommand()
{
}
public string BugID
{
get { return Parameters; }
set { Parameters = value; }
}
public override void ExecuteCommand()
{
if (string.IsNullOrEmpty(BugID))
{
Say("Please provide a valid bug number.");
}
else
{
try
{
Say(BugUrl, Int32.Parse(BugID));
}
catch (Exception)
{
Say("{0} is not a valid bug number.", BugID);
}
}
}
protected abstract string BugUrl { get; }
}
}

View File

@@ -1,206 +1,180 @@
using System;
using System.Xml;
using System.Collections;
namespace TechBot.Library
{
public class ErrorCommand : Command
{
private NtStatusCommand ntStatus;
private WinerrorCommand winerror;
private HResultCommand hresult;
public ErrorCommand(TechBotService techBot)
: base(techBot)
{
this.ntStatus = new NtStatusCommand(techBot);
this.winerror = new WinerrorCommand(techBot);
this.hresult = new HResultCommand(techBot);
}
/*
public bool CanHandle(string commandName)
{
return CanHandle(commandName,
new string[] { "error" });
}
*/
public override string[] AvailableCommands
{
get { return new string[] { "error" }; }
}
private static int GetSeverity(long error)
{
return (int)((error >> 30) & 0x3);
}
private static bool IsCustomer(long error)
{
return (error & 0x20000000) != 0;
}
private static bool IsReserved(long error)
{
return (error & 0x10000000) != 0;
}
private static int GetFacility(long error)
{
return (int)((error >> 16) & 0xFFF);
}
private static short GetCode(long error)
{
return (short)((error >> 0) & 0xFFFF);
}
private static string FormatSeverity(long error)
{
int severity = GetSeverity(error);
switch (severity)
{
case 0: return "SUCCESS";
case 1: return "INFORMATIONAL";
case 2: return "WARNING";
case 3: return "ERROR";
}
return null;
}
private static string FormatFacility(long error)
{
int facility = GetFacility(error);
return facility.ToString();
}
private static string FormatCode(long error)
{
int code = GetCode(error);
return code.ToString();
}
public override void Handle(MessageContext context,
string commandName,
string parameters)
{
string originalErrorText = parameters.Trim();
if (originalErrorText.Equals(String.Empty))
{
TechBot.ServiceOutput.WriteLine(context,
"Please provide an Error Code.");
return;
}
string errorText = originalErrorText;
retry:
NumberParser np = new NumberParser();
long error = np.Parse(errorText);
if (np.Error)
{
TechBot.ServiceOutput.WriteLine(context,
String.Format("{0} is not a valid Error Code.",
originalErrorText));
return;
}
ArrayList descriptions = new ArrayList();
// Error is out of bounds
if ((ulong)error > uint.MaxValue)
{
// Do nothing
}
// Error is outside of the range [0, 65535]: it cannot be a plain Win32 error code
else if ((ulong)error > ushort.MaxValue)
{
// Customer bit is set: custom error code
if (IsCustomer(error))
{
string description = String.Format("[custom, severity {0}, facility {1}, code {2}]",
FormatSeverity(error),
FormatFacility(error),
FormatCode(error));
descriptions.Add(description);
}
// Reserved bit is set: HRESULT_FROM_NT(ntstatus)
else if (IsReserved(error))
{
int status = (int)(error & 0xCFFFFFFF);
string description = ntStatus.GetNtstatusDescription(status);
if (description == null)
description = status.ToString("X");
description = String.Format("HRESULT_FROM_NT({0})", description);
descriptions.Add(description);
}
// Win32 facility: HRESULT_FROM_WIN32(winerror)
else if (GetFacility(error) == 7)
{
// Must be an error code
if (GetSeverity(error) == 2)
{
short err = GetCode(error);
string description = winerror.GetWinerrorDescription(err);
if (description == null)
description = err.ToString("D");
description = String.Format("HRESULT_FROM_WIN32({0})", description);
descriptions.Add(description);
}
}
}
string winerrorDescription = winerror.GetWinerrorDescription(error);
string ntstatusDescription = ntStatus.GetNtstatusDescription(error);
string hresultDescription = hresult.GetHresultDescription(error);
if (winerrorDescription != null)
descriptions.Add(winerrorDescription);
if (ntstatusDescription != null)
descriptions.Add(ntstatusDescription);
if (hresultDescription != null)
descriptions.Add(hresultDescription);
if (descriptions.Count == 0)
{
// Last chance heuristics: attempt to parse a 8-digit decimal as hexadecimal
if (errorText.Length == 8)
{
errorText = "0x" + errorText;
goto retry;
}
TechBot.ServiceOutput.WriteLine(context,
String.Format("I don't know about Error Code {0}.",
originalErrorText));
}
else if (descriptions.Count == 1)
{
string description = (string)descriptions[0];
TechBot.ServiceOutput.WriteLine(context,
String.Format("{0} is {1}.",
originalErrorText,
description));
}
else
{
TechBot.ServiceOutput.WriteLine(context,
String.Format("{0} could be:",
originalErrorText));
foreach(string description in descriptions)
TechBot.ServiceOutput.WriteLine(context, String.Format("\t{0}", description));
}
}
public override string Help()
{
return "!error <value>";
}
}
}
using System;
using System.Xml;
using System.Collections;
using TechBot.Library;
namespace TechBot.Commands.Common
{
[Command("error", Help = "!error <value>")]
public class ErrorCommand : Command
{
private NtStatusCommand ntStatus;
private WinErrorCommand winerror;
private HResultCommand hresult;
public ErrorCommand()
{
this.ntStatus = new NtStatusCommand();
this.winerror = new WinErrorCommand();
this.hresult = new HResultCommand();
}
private static int GetSeverity(long error)
{
return (int)((error >> 30) & 0x3);
}
private static bool IsCustomer(long error)
{
return (error & 0x20000000) != 0;
}
private static bool IsReserved(long error)
{
return (error & 0x10000000) != 0;
}
private static int GetFacility(long error)
{
return (int)((error >> 16) & 0xFFF);
}
private static short GetCode(long error)
{
return (short)((error >> 0) & 0xFFFF);
}
private static string FormatSeverity(long error)
{
int severity = GetSeverity(error);
switch (severity)
{
case 0: return "SUCCESS";
case 1: return "INFORMATIONAL";
case 2: return "WARNING";
case 3: return "ERROR";
}
return null;
}
private static string FormatFacility(long error)
{
int facility = GetFacility(error);
return facility.ToString();
}
private static string FormatCode(long error)
{
int code = GetCode(error);
return code.ToString();
}
public override void ExecuteCommand()
{
if (Parameters.Equals(String.Empty))
{
Say("Please provide an Error Code.");
return;
}
string errorText = Parameters;
retry:
NumberParser np = new NumberParser();
long error = np.Parse(errorText);
if (np.Error)
{
Say("{0} is not a valid Error Code.", Parameters);
return;
}
ArrayList descriptions = new ArrayList();
// Error is out of bounds
if ((ulong)error > uint.MaxValue)
{
// Do nothing
}
// Error is outside of the range [0, 65535]: it cannot be a plain Win32 error code
else if ((ulong)error > ushort.MaxValue)
{
// Customer bit is set: custom error code
if (IsCustomer(error))
{
string description = String.Format("[custom, severity {0}, facility {1}, code {2}]",
FormatSeverity(error),
FormatFacility(error),
FormatCode(error));
descriptions.Add(description);
}
// Reserved bit is set: HRESULT_FROM_NT(ntstatus)
else if (IsReserved(error))
{
int status = (int)(error & 0xCFFFFFFF);
string description = ntStatus.GetNtstatusDescription(status);
if (description == null)
description = status.ToString("X");
description = String.Format("HRESULT_FROM_NT({0})", description);
descriptions.Add(description);
}
// Win32 facility: HRESULT_FROM_WIN32(winerror)
else if (GetFacility(error) == 7)
{
// Must be an error code
if (GetSeverity(error) == 2)
{
short err = GetCode(error);
string description = winerror.GetWinerrorDescription(err);
if (description == null)
description = err.ToString("D");
description = String.Format("HRESULT_FROM_WIN32({0})", description);
descriptions.Add(description);
}
}
}
string winerrorDescription = winerror.GetWinerrorDescription(error);
string ntstatusDescription = ntStatus.GetNtstatusDescription(error);
string hresultDescription = hresult.GetHresultDescription(error);
if (winerrorDescription != null)
descriptions.Add(winerrorDescription);
if (ntstatusDescription != null)
descriptions.Add(ntstatusDescription);
if (hresultDescription != null)
descriptions.Add(hresultDescription);
if (descriptions.Count == 0)
{
// Last chance heuristics: attempt to parse a 8-digit decimal as hexadecimal
if (errorText.Length == 8)
{
errorText = "0x" + errorText;
goto retry;
}
Say("I don't know about Error Code {0}.",
Parameters);
}
else if (descriptions.Count == 1)
{
string description = (string)descriptions[0];
Say("{0} is {1}.",
Parameters,
description);
}
else
{
Say("{0} could be:", Parameters);
foreach (string description in descriptions)
Say("\t{0}", description);
}
}
}
}

View File

@@ -0,0 +1,66 @@
using System;
using System.Xml;
using TechBot.Library;
namespace TechBot.Commands.Common
{
[Command("hresult", Help = "!hresult <value>")]
public class HResultCommand : XmlLookupCommand
{
public HResultCommand()
{
}
public override string XmlFile
{
get { return Settings.Default.HResultXml; }
}
public override void ExecuteCommand()
{
if (string.IsNullOrEmpty(Text))
{
Say("Please provide a valid HRESULT value.");
}
else
{
NumberParser np = new NumberParser();
long hresult = np.Parse(Text);
if (np.Error)
{
Say("{0} is not a valid HRESULT value.", Text);
return;
}
string description = GetHresultDescription(hresult);
if (description != null)
{
Say("{0} is {1}.",
Text,
description);
}
else
{
Say("I don't know about HRESULT {0}.", Text);
}
}
}
public string GetHresultDescription(long hresult)
{
XmlElement root = base.m_XmlDocument.DocumentElement;
XmlNode node = root.SelectSingleNode(String.Format("Hresult[@value='{0}']",
hresult.ToString("X8")));
if (node != null)
{
XmlAttribute text = node.Attributes["text"];
if (text == null)
throw new Exception("Node has no text attribute.");
return text.Value;
}
else
return null;
}
}
}

View File

@@ -0,0 +1,66 @@
using System;
using System.Xml;
using TechBot.Library;
namespace TechBot.Commands.Common
{
[Command("ntstatus", Help = "!ntstatus <value>")]
public class NtStatusCommand : XmlLookupCommand
{
public NtStatusCommand()
{
}
public override string XmlFile
{
get { return Settings.Default.NtStatusXml; }
}
public override void ExecuteCommand()
{
if (string.IsNullOrEmpty(Text))
{
Say("Please provide a valid NTSTATUS value.");
}
else
{
NumberParser np = new NumberParser();
long ntstatus = np.Parse(Text);
if (np.Error)
{
Say("{0} is not a valid NTSTATUS value.", Text);
return;
}
string description = GetNtstatusDescription(ntstatus);
if (description != null)
{
Say("{0} is {1}.",
Text,
description);
}
else
{
Say("I don't know about NTSTATUS {0}.", Text);
}
}
}
public string GetNtstatusDescription(long ntstatus)
{
XmlElement root = base.m_XmlDocument.DocumentElement;
XmlNode node = root.SelectSingleNode(String.Format("Ntstatus[@value='{0}']",
ntstatus.ToString("X8")));
if (node != null)
{
XmlAttribute text = node.Attributes["text"];
if (text == null)
throw new Exception("Node has no text attribute.");
return text.Value;
}
else
return null;
}
}
}

View File

@@ -0,0 +1,35 @@
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
// General Information about an assembly is controlled through the following
// set of attributes. Change these attribute values to modify the information
// associated with an assembly.
[assembly: AssemblyTitle("TechBot.Commands.Common")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("Sand")]
[assembly: AssemblyProduct("TechBot.Commands.Common")]
[assembly: AssemblyCopyright("Copyright © Sand 2008")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
// Setting ComVisible to false makes the types in this assembly not visible
// to COM components. If you need to access a type in this assembly from
// COM, set the ComVisible attribute to true on that type.
[assembly: ComVisible(false)]
// The following GUID is for the ID of the typelib if this project is exposed to COM
[assembly: Guid("5d39d6f8-37fb-423b-ba88-1d5d8e5a1317")]
// Version information for an assembly consists of the following four values:
//
// Major Version
// Minor Version
// Build Number
// Revision
//
// You can specify all the values or you can default the Revision and Build Numbers
// by using the '*' as shown below:
[assembly: AssemblyVersion("1.0.0.0")]
[assembly: AssemblyFileVersion("1.0.0.0")]

View File

@@ -0,0 +1,21 @@
using System;
using System.Collections.Generic;
using System.Text;
using TechBot.Library;
namespace TechBot.Commands.Common
{
[Command("rosbug", Help = "!rosbug <number>", Description = "Will give you a link to the reqested ReactOS bug")]
class ReactOSBugUrl : BugCommand
{
public ReactOSBugUrl()
{
}
protected override string BugUrl
{
get { return "http://www.reactos.org/bugzilla/show_bug.cgi?id={0}"; }
}
}
}

View File

@@ -0,0 +1,21 @@
using System;
using System.Collections.Generic;
using System.Text;
using TechBot.Library;
namespace TechBot.Commands.Common
{
[Command("sambabug", Help = "!sambabug <number>", Description = "Will give you a link to the reqested Samba bug")]
class SambaBugUrl : BugCommand
{
public SambaBugUrl()
{
}
protected override string BugUrl
{
get { return "https://bugzilla.samba.org/show_bug.cgi?id={0}"; }
}
}
}

View File

@@ -0,0 +1,71 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:2.0.50727.1433
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
namespace TechBot.Commands.Common {
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "8.0.0.0")]
internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase {
private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings())));
public static Settings Default {
get {
return defaultInstance;
}
}
[global::System.Configuration.ApplicationScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("C:\\Ros\\current\\irc\\TechBot\\Resources\\ntstatus.xml")]
public string NtStatusXml {
get {
return ((string)(this["NtStatusXml"]));
}
}
[global::System.Configuration.ApplicationScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("C:\\Ros\\current\\irc\\TechBot\\Resources\\winerror.xml")]
public string WinErrorXml {
get {
return ((string)(this["WinErrorXml"]));
}
}
[global::System.Configuration.ApplicationScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("C:\\Ros\\current\\irc\\TechBot\\Resources\\hresult.xml")]
public string HResultXml {
get {
return ((string)(this["HResultXml"]));
}
}
[global::System.Configuration.ApplicationScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("C:\\Ros\\current\\irc\\TechBot\\Resources\\wm.xml")]
public string WMXml {
get {
return ((string)(this["WMXml"]));
}
}
[global::System.Configuration.ApplicationScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("svn://svn.reactos.org/trunk/reactos")]
public string SVNRoot {
get {
return ((string)(this["SVNRoot"]));
}
}
}
}

View File

@@ -0,0 +1,28 @@
namespace TechBot.Commands.Common {
// This class allows you to handle specific events on the settings class:
// The SettingChanging event is raised before a setting's value is changed.
// The PropertyChanged event is raised after a setting's value is changed.
// The SettingsLoaded event is raised after the setting values are loaded.
// The SettingsSaving event is raised before the setting values are saved.
internal sealed partial class Settings {
public Settings() {
// // To add event handlers for saving and changing settings, uncomment the lines below:
//
// this.SettingChanging += this.SettingChangingEventHandler;
//
// this.SettingsSaving += this.SettingsSavingEventHandler;
//
}
private void SettingChangingEventHandler(object sender, System.Configuration.SettingChangingEventArgs e) {
// Add code to handle the SettingChangingEvent event here.
}
private void SettingsSavingEventHandler(object sender, System.ComponentModel.CancelEventArgs e) {
// Add code to handle the SettingsSaving event here.
}
}
}

View File

@@ -0,0 +1,21 @@
<?xml version='1.0' encoding='utf-8'?>
<SettingsFile xmlns="http://schemas.microsoft.com/VisualStudio/2004/01/settings" CurrentProfile="(Default)" GeneratedClassNamespace="TechBot.Commands.Common" GeneratedClassName="Settings">
<Profiles />
<Settings>
<Setting Name="NtStatusXml" Type="System.String" Scope="Application">
<Value Profile="(Default)">C:\Ros\current\irc\TechBot\Resources\ntstatus.xml</Value>
</Setting>
<Setting Name="WinErrorXml" Type="System.String" Scope="Application">
<Value Profile="(Default)">C:\Ros\current\irc\TechBot\Resources\winerror.xml</Value>
</Setting>
<Setting Name="HResultXml" Type="System.String" Scope="Application">
<Value Profile="(Default)">C:\Ros\current\irc\TechBot\Resources\hresult.xml</Value>
</Setting>
<Setting Name="WMXml" Type="System.String" Scope="Application">
<Value Profile="(Default)">C:\Ros\current\irc\TechBot\Resources\wm.xml</Value>
</Setting>
<Setting Name="SVNRoot" Type="System.String" Scope="Application">
<Value Profile="(Default)">svn://svn.reactos.org/trunk/reactos</Value>
</Setting>
</Settings>
</SettingsFile>

View File

@@ -0,0 +1,22 @@
using System;
using TechBot.Library;
namespace TechBot.Commands.Common
{
[Command("svn", Help = "!svn" , Description="Where the ROS SVN repository is located")]
public class SvnCommand : Command
{
private string m_SvnRoot;
public SvnCommand()
{
m_SvnRoot = Settings.Default.SVNRoot;
}
public override void ExecuteCommand()
{
Say("svn co {0}", m_SvnRoot);
}
}
}

View File

@@ -0,0 +1,75 @@
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProductVersion>8.0.50727</ProductVersion>
<SchemaVersion>2.0</SchemaVersion>
<ProjectGuid>{041B5F06-BF97-4981-B024-3A7B6DD9F6AE}</ProjectGuid>
<OutputType>Library</OutputType>
<AppDesignerFolder>Properties</AppDesignerFolder>
<RootNamespace>TechBot.Commands.Common</RootNamespace>
<AssemblyName>TechBot.Commands.Common</AssemblyName>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<Optimize>false</Optimize>
<OutputPath>bin\Debug\</OutputPath>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
<Optimize>true</Optimize>
<OutputPath>bin\Release\</OutputPath>
<DefineConstants>TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<ItemGroup>
<Reference Include="System" />
<Reference Include="System.Data" />
<Reference Include="System.Xml" />
</ItemGroup>
<ItemGroup>
<Compile Include="Base\BugCommand.cs" />
<Compile Include="ErrorCommand.cs" />
<Compile Include="HResultCommand.cs" />
<Compile Include="NtStatusCommand.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
<Compile Include="ReactOSBugUrl.cs" />
<Compile Include="SambaBugUrl.cs" />
<Compile Include="Settings.cs" />
<Compile Include="Settings.Designer.cs">
<DependentUpon>Settings.settings</DependentUpon>
<AutoGen>True</AutoGen>
<DesignTimeSharedInput>True</DesignTimeSharedInput>
</Compile>
<Compile Include="SvnCommand.cs" />
<Compile Include="WineBugUrl.cs" />
<Compile Include="WinerrorCommand.cs" />
<Compile Include="WMCommand.cs" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\TechBot.Library\TechBot.Library.csproj">
<Project>{1114F34D-F388-4F38-AE27-C0EE1B10B777}</Project>
<Name>TechBot.Library</Name>
</ProjectReference>
</ItemGroup>
<ItemGroup>
<None Include="app.config" />
<None Include="Settings.settings">
<Generator>SettingsSingleFileGenerator</Generator>
<LastGenOutput>Settings.Designer.cs</LastGenOutput>
</None>
</ItemGroup>
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
Other similar extension points exist, see Microsoft.Common.targets.
<Target Name="BeforeBuild">
</Target>
<Target Name="AfterBuild">
</Target>
-->
</Project>

View File

@@ -0,0 +1,94 @@
using System;
using System.Xml;
using TechBot.Library;
namespace TechBot.Commands.Common
{
[Command("wm" , Help = "!wm <value> or !wm <name>")]
public class WMCommand : XmlCommand
{
public WMCommand()
{
}
public override string XmlFile
{
get { return Settings.Default.WMXml; }
}
[CommandParameter("wm", "The windows message to check" , DefaultParameter = true)]
public string WMText
{
get { return Parameters; }
set { Parameters = value; }
}
public override void ExecuteCommand()
{
if (string.IsNullOrEmpty(WMText))
{
Say("Please provide a valid window message value or name.");
}
else
{
NumberParser np = new NumberParser();
long wm = np.Parse(WMText);
string output;
if (np.Error)
{
// Assume "!wm <name>" form.
output = GetWmNumber(WMText);
}
else
{
output = GetWmDescription(wm);
}
if (output != null)
{
Say("{0} is {1}.",
WMText,
output);
}
else
{
Say("I don't know about window message {0}.", WMText);
}
}
}
private string GetWmDescription(long wm)
{
XmlElement root = base.m_XmlDocument.DocumentElement;
XmlNode node = root.SelectSingleNode(String.Format("WindowMessage[@value='{0}']",
wm));
if (node != null)
{
XmlAttribute text = node.Attributes["text"];
if (text == null)
throw new Exception("Node has no text attribute.");
return text.Value;
}
else
return null;
}
private string GetWmNumber(string wmName)
{
XmlElement root = base.m_XmlDocument.DocumentElement;
XmlNode node = root.SelectSingleNode(String.Format("WindowMessage[@text='{0}']",
wmName));
if (node != null)
{
XmlAttribute value = node.Attributes["value"];
if (value == null)
throw new Exception("Node has no value attribute.");
return value.Value;
}
else
return null;
}
}
}

View File

@@ -0,0 +1,21 @@
using System;
using System.Collections.Generic;
using System.Text;
using TechBot.Library;
namespace TechBot.Commands.Common
{
[Command("winebug", Help = "!winebug <number>" , Description="Will give you a link to the reqested Wine bug")]
class WineBugUrl : BugCommand
{
public WineBugUrl()
{
}
protected override string BugUrl
{
get { return "http://bugs.winehq.org/show_bug.cgi?id={0}"; }
}
}
}

View File

@@ -0,0 +1,66 @@
using System;
using System.Xml;
using TechBot.Library;
namespace TechBot.Commands.Common
{
[Command("winerror", Help = "!winerror <value>")]
public class WinErrorCommand : XmlLookupCommand
{
public WinErrorCommand()
{
}
public override string XmlFile
{
get { return Settings.Default.WinErrorXml; }
}
public override void ExecuteCommand()
{
if (string.IsNullOrEmpty(Text))
{
Say("Please provide a valid System Error Code value.");
}
else
{
NumberParser np = new NumberParser();
long winerror = np.Parse(Text);
if (np.Error)
{
Say("{0} is not a valid System Error Code value.", Text);
return;
}
string description = GetWinerrorDescription(winerror);
if (description != null)
{
Say("{0} is {1}.",
Text,
description);
}
else
{
Say("I don't know about System Error Code {0}.", Text);
}
}
}
public string GetWinerrorDescription(long winerror)
{
XmlElement root = base.m_XmlDocument.DocumentElement;
XmlNode node = root.SelectSingleNode(String.Format("Winerror[@value='{0}']",
winerror.ToString()));
if (node != null)
{
XmlAttribute text = node.Attributes["text"];
if (text == null)
throw new Exception("Node has no text attribute.");
return text.Value;
}
else
return null;
}
}
}

View File

@@ -0,0 +1,27 @@
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<configSections>
<sectionGroup name="applicationSettings" type="System.Configuration.ApplicationSettingsGroup, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" >
<section name="TechBot.Commands.Common.Settings" type="System.Configuration.ClientSettingsSection, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
</sectionGroup>
</configSections>
<applicationSettings>
<TechBot.Commands.Common.Settings>
<setting name="NtStatusXml" serializeAs="String">
<value>C:\Ros\current\irc\TechBot\Resources\ntstatus.xml</value>
</setting>
<setting name="WinErrorXml" serializeAs="String">
<value>C:\Ros\current\irc\TechBot\Resources\winerror.xml</value>
</setting>
<setting name="HResultXml" serializeAs="String">
<value>C:\Ros\current\irc\TechBot\Resources\hresult.xml</value>
</setting>
<setting name="WMXml" serializeAs="String">
<value>C:\Ros\current\irc\TechBot\Resources\wm.xml</value>
</setting>
<setting name="SVNRoot" serializeAs="String">
<value>svn://svn.reactos.org/trunk/reactos</value>
</setting>
</TechBot.Commands.Common.Settings>
</applicationSettings>
</configuration>

View File

@@ -1,353 +1,309 @@
using System;
using System.IO;
using System.Data;
using System.Text.RegularExpressions;
using HtmlHelp;
using HtmlHelp.ChmDecoding;
namespace TechBot.Library
{
public class ApiCommand : Command
{
private const bool IsVerbose = false;
private HtmlHelpSystem chm;
private string chmPath;
private string mainChm;
public ApiCommand(TechBotService techBot)
: base(techBot)
{
Run();
}
private void WriteIfVerbose(MessageContext context,
string message)
{
if (IsVerbose)
TechBot.ServiceOutput.WriteLine(context,
message);
}
private void Run()
{
string CHMFilename = Path.Combine(chmPath, mainChm);
chm = new HtmlHelpSystem();
chm.OpenFile(CHMFilename, null);
Console.WriteLine(String.Format("Loaded main CHM: {0}",
Path.GetFileName(CHMFilename)));
foreach (string filename in Directory.GetFiles(chmPath))
{
if (!Path.GetExtension(filename).ToLower().Equals(".chm"))
continue;
if (Path.GetFileName(filename).ToLower().Equals(mainChm))
continue;
Console.WriteLine(String.Format("Loading CHM: {0}",
Path.GetFileName(filename)));
try
{
chm.MergeFile(filename);
}
catch (Exception ex)
{
Console.WriteLine(String.Format("Could not load CHM: {0}. Exception {1}",
Path.GetFileName(filename),
ex));
}
}
Console.WriteLine(String.Format("Loaded {0} CHMs",
chm.FileList.Length));
}
public override string[] AvailableCommands
{
get { return new string[] { "api" }; }
}
/*
public bool CanHandle(string commandName)
{
return CanHandle(commandName,
new string[] { "api" });
}
*/
public override void Handle(MessageContext context,
string commandName,
string parameters)
{
if (parameters.Trim().Equals(String.Empty))
DisplayNoKeyword(context);
else
Search(context,
parameters);
}
public override string Help()
{
return "!api <apiname>";
}
private bool SearchIndex(MessageContext context,
string keyword)
{
if (chm.HasIndex)
{
IndexItem item = chm.Index.SearchIndex(keyword,
IndexType.KeywordLinks);
if (item != null && item.Topics.Count > 0)
{
WriteIfVerbose(context,
String.Format("Keyword {0} found in index",
item.KeyWord));
IndexTopic indexTopic = item.Topics[0] as IndexTopic;
return DisplayResult(context,
keyword,
indexTopic);
}
else
{
WriteIfVerbose(context,
String.Format("Keyword {0} not found in index",
keyword));
return false;
}
}
else
return false;
}
private void SearchFullText(MessageContext context,
string keyword)
{
string sort = "Rating ASC";
WriteIfVerbose(context,
String.Format("Searching fulltext database for {0}",
keyword));
bool partialMatches = false;
bool titlesOnly = true;
int maxResults = 100;
DataTable results = chm.PerformSearch(keyword,
maxResults,
partialMatches,
titlesOnly);
WriteIfVerbose(context,
String.Format("results.Rows.Count = {0}",
results != null ?
results.Rows.Count.ToString() : "(none)"));
if (results != null && results.Rows.Count > 0)
{
results.DefaultView.Sort = sort;
if (!DisplayResult(context,
keyword,
results))
{
DisplayNoResult(context,
keyword);
}
}
else
{
DisplayNoResult(context,
keyword);
}
}
private void Search(MessageContext context,
string keyword)
{
if (!SearchIndex(context,
keyword))
SearchFullText(context,
keyword);
}
private bool DisplayResult(MessageContext context,
string keyword,
IndexTopic indexTopic)
{
keyword = keyword.Trim().ToLower();
string url = indexTopic.URL;
WriteIfVerbose(context,
String.Format("URL from index search {0}",
url));
string prototype = ExtractPrototype(context,
url);
if (prototype == null || prototype.Trim().Equals(String.Empty))
return false;
string formattedPrototype = FormatPrototype(prototype);
TechBot.ServiceOutput.WriteLine(context,
formattedPrototype);
return true;
}
private bool DisplayResult(MessageContext context,
string keyword,
DataTable results)
{
keyword = keyword.Trim().ToLower();
for (int i = 0; i < results.DefaultView.Count; i++)
{
DataRowView row = results.DefaultView[i];
string title = row["Title"].ToString();
WriteIfVerbose(context,
String.Format("Examining {0}", title));
if (title.Trim().ToLower().Equals(keyword))
{
string location = row["Location"].ToString();
string rating = row["Rating"].ToString();
string url = row["Url"].ToString();
string prototype = ExtractPrototype(context,
url);
if (prototype == null || prototype.Trim().Equals(String.Empty))
continue;
string formattedPrototype = FormatPrototype(prototype);
TechBot.ServiceOutput.WriteLine(context,
formattedPrototype);
return true;
}
}
return false;
}
private void DisplayNoResult(MessageContext context,
string keyword)
{
TechBot.ServiceOutput.WriteLine(context,
String.Format("I don't know about keyword {0}",
keyword));
}
private void DisplayNoKeyword(MessageContext context)
{
TechBot.ServiceOutput.WriteLine(context,
"Please give me a keyword.");
}
private string ReplaceComments(string s)
{
return Regex.Replace(s, "//(.+)\r\n", "");
}
private string ReplaceLineEndings(string s)
{
return Regex.Replace(s, "(\r\n)+", " ");
}
private string ReplaceSpaces(string s)
{
return Regex.Replace(s, @" +", " ");
}
private string ReplaceSpacesBeforeLeftParenthesis(string s)
{
return Regex.Replace(s, @"\( ", @"(");
}
private string ReplaceSpacesBeforeRightParenthesis(string s)
{
return Regex.Replace(s, @" \)", @")");
}
private string ReplaceSemicolon(string s)
{
return Regex.Replace(s, @";", @"");
}
private string FormatPrototype(string prototype)
{
string s = ReplaceComments(prototype);
s = ReplaceLineEndings(s);
s = ReplaceSpaces(s);
s = ReplaceSpacesBeforeLeftParenthesis(s);
s = ReplaceSpacesBeforeRightParenthesis(s);
s = ReplaceSemicolon(s);
return s;
}
private string ExtractPrototype(MessageContext context,
string url)
{
string page = GetPage(context,
url);
Match match = Regex.Match(page,
"<PRE class=\"?syntax\"?>(.+)</PRE>",
RegexOptions.Multiline |
RegexOptions.Singleline);
if (match.Groups.Count > 1)
{
string prototype = match.Groups[1].ToString();
return StripHtml(StripAfterSlashPre(prototype));
}
return "";
}
private string StripAfterSlashPre(string html)
{
int index = html.IndexOf("</PRE>");
if (index != -1)
{
return html.Substring(0, index);
}
else
return html;
}
private string StripHtml(string html)
{
return Regex.Replace(html, @"<(.|\n)*?>", String.Empty);
}
private string GetPage(MessageContext context,
string url)
{
string CHMFileName = "";
string topicName = "";
string anchor = "";
CHMStream.CHMStream baseStream;
if (!chm.BaseStream.GetCHMParts(url, ref CHMFileName, ref topicName, ref anchor))
{
baseStream = chm.BaseStream;
CHMFileName = baseStream.CHMFileName;
topicName = url;
anchor = "";
}
else
{
baseStream = GetBaseStreamFromCHMFileName(context,
CHMFileName);
}
if ((topicName == "") || (CHMFileName == "") || (baseStream == null))
{
return "";
}
return baseStream.ExtractTextFile(topicName);
}
private CHMStream.CHMStream GetBaseStreamFromCHMFileName(MessageContext context,
string CHMFileName)
{
foreach (CHMFile file in chm.FileList)
{
WriteIfVerbose(context,
String.Format("Compare: {0} <> {1}",
file.ChmFilePath,
CHMFileName));
if (file.ChmFilePath.ToLower().Equals(CHMFileName.ToLower()))
{
return file.BaseStream;
}
}
WriteIfVerbose(context,
String.Format("Could not find loaded CHM file in list: {0}",
CHMFileName));
return null;
}
}
}
using System;
using System.IO;
using System.Data;
using System.Text.RegularExpressions;
using HtmlHelp;
using HtmlHelp.ChmDecoding;
using TechBot.Library;
namespace TechBot.Commands.MSDN
{
[Command("api", Help = "!api <apiname>")]
public class ApiCommand : Command
{
private bool IsVerbose = false;
private HtmlHelpSystem chm;
public ApiCommand()
{
LoadCHM();
}
[CommandParameter("api", "The API name")]
public string API
{
get { return Parameters; }
set { Parameters = value; }
}
private void WriteIfVerbose(string message)
{
if (IsVerbose)
Say(message);
}
private void LoadCHM()
{
string CHMFilename = Path.Combine(Settings.Default.ChmPath, Settings.Default.MainChm);
chm = new HtmlHelpSystem();
chm.OpenFile(CHMFilename, null);
Console.WriteLine(String.Format("Loaded main CHM: {0}",
Path.GetFileName(CHMFilename)));
foreach (string filename in Directory.GetFiles(Settings.Default.ChmPath))
{
if (!Path.GetExtension(filename).ToLower().Equals(".chm"))
continue;
if (Path.GetFileName(filename).ToLower().Equals(Settings.Default.MainChm))
continue;
Console.WriteLine(String.Format("Loading CHM: {0}",
Path.GetFileName(filename)));
try
{
chm.MergeFile(filename);
}
catch (Exception ex)
{
Console.WriteLine(String.Format("Could not load CHM: {0}. Exception {1}",
Path.GetFileName(filename),
ex));
}
}
Console.WriteLine(String.Format("Loaded {0} CHMs",
chm.FileList.Length));
}
public override void ExecuteCommand()
{
if (Name.Trim().Equals(String.Empty))
{
Say("Please give me a keyword.");
}
else
{
Search(Name);
}
}
private bool SearchIndex(
string keyword)
{
if (chm.HasIndex)
{
IndexItem item = chm.Index.SearchIndex(keyword,
IndexType.KeywordLinks);
if (item != null && item.Topics.Count > 0)
{
WriteIfVerbose(String.Format("Keyword {0} found in index",
item.KeyWord));
IndexTopic indexTopic = item.Topics[0] as IndexTopic;
return DisplayResult( keyword,
indexTopic);
}
else
{
WriteIfVerbose(String.Format("Keyword {0} not found in index",
keyword));
return false;
}
}
else
return false;
}
private void SearchFullText(string keyword)
{
string sort = "Rating ASC";
WriteIfVerbose(String.Format("Searching fulltext database for {0}",
keyword));
bool partialMatches = false;
bool titlesOnly = true;
int maxResults = 100;
DataTable results = chm.PerformSearch(keyword,
maxResults,
partialMatches,
titlesOnly);
WriteIfVerbose(String.Format("results.Rows.Count = {0}",
results != null ?
results.Rows.Count.ToString() : "(none)"));
if (results != null && results.Rows.Count > 0)
{
results.DefaultView.Sort = sort;
if (!DisplayResult(keyword,
results))
{
Say("No result");
}
}
else
{
Say("No result");
}
}
private void Search(string keyword)
{
if (!SearchIndex(keyword))
SearchFullText(keyword);
}
private bool DisplayResult(string keyword,
IndexTopic indexTopic)
{
keyword = keyword.Trim().ToLower();
string url = indexTopic.URL;
WriteIfVerbose(String.Format("URL from index search {0}",
url));
string prototype = ExtractPrototype(url);
if (prototype == null || prototype.Trim().Equals(String.Empty))
return false;
string formattedPrototype = FormatPrototype(prototype);
Say(formattedPrototype);
return true;
}
private bool DisplayResult(string keyword,
DataTable results)
{
keyword = keyword.Trim().ToLower();
for (int i = 0; i < results.DefaultView.Count; i++)
{
DataRowView row = results.DefaultView[i];
string title = row["Title"].ToString();
WriteIfVerbose(String.Format("Examining {0}", title));
if (title.Trim().ToLower().Equals(keyword))
{
string location = row["Location"].ToString();
string rating = row["Rating"].ToString();
string url = row["Url"].ToString();
string prototype = ExtractPrototype(url);
if (prototype == null || prototype.Trim().Equals(String.Empty))
continue;
string formattedPrototype = FormatPrototype(prototype);
Say(formattedPrototype);
return true;
}
}
return false;
}
private void DisplayNoResult(MessageContext context,
string keyword)
{
TechBot.ServiceOutput.WriteLine(context,
String.Format("I don't know about keyword {0}",
keyword));
}
private string ReplaceComments(string s)
{
return Regex.Replace(s, "//(.+)\r\n", "");
}
private string ReplaceLineEndings(string s)
{
return Regex.Replace(s, "(\r\n)+", " ");
}
private string ReplaceSpaces(string s)
{
return Regex.Replace(s, @" +", " ");
}
private string ReplaceSpacesBeforeLeftParenthesis(string s)
{
return Regex.Replace(s, @"\( ", @"(");
}
private string ReplaceSpacesBeforeRightParenthesis(string s)
{
return Regex.Replace(s, @" \)", @")");
}
private string ReplaceSemicolon(string s)
{
return Regex.Replace(s, @";", @"");
}
private string FormatPrototype(string prototype)
{
string s = ReplaceComments(prototype);
s = ReplaceLineEndings(s);
s = ReplaceSpaces(s);
s = ReplaceSpacesBeforeLeftParenthesis(s);
s = ReplaceSpacesBeforeRightParenthesis(s);
s = ReplaceSemicolon(s);
return s;
}
private string ExtractPrototype(string url)
{
string page = GetPage(url);
Match match = Regex.Match(page,
"<PRE class=\"?syntax\"?>(.+)</PRE>",
RegexOptions.Multiline |
RegexOptions.Singleline);
if (match.Groups.Count > 1)
{
string prototype = match.Groups[1].ToString();
return StripHtml(StripAfterSlashPre(prototype));
}
return "";
}
private string StripAfterSlashPre(string html)
{
int index = html.IndexOf("</PRE>");
if (index != -1)
{
return html.Substring(0, index);
}
else
return html;
}
private string StripHtml(string html)
{
return Regex.Replace(html, @"<(.|\n)*?>", String.Empty);
}
private string GetPage(string url)
{
string CHMFileName = "";
string topicName = "";
string anchor = "";
CHMStream.CHMStream baseStream;
if (!chm.BaseStream.GetCHMParts(url, ref CHMFileName, ref topicName, ref anchor))
{
baseStream = chm.BaseStream;
CHMFileName = baseStream.CHMFileName;
topicName = url;
anchor = "";
}
else
{
baseStream = GetBaseStreamFromCHMFileName(CHMFileName);
}
if ((topicName == "") || (CHMFileName == "") || (baseStream == null))
{
return "";
}
return baseStream.ExtractTextFile(topicName);
}
private CHMStream.CHMStream GetBaseStreamFromCHMFileName(string CHMFileName)
{
foreach (CHMFile file in chm.FileList)
{
WriteIfVerbose(String.Format("Compare: {0} <> {1}",
file.ChmFilePath,
CHMFileName));
if (file.ChmFilePath.ToLower().Equals(CHMFileName.ToLower()))
{
return file.BaseStream;
}
}
WriteIfVerbose(String.Format("Could not find loaded CHM file in list: {0}",
CHMFileName));
return null;
}
}
}

View File

@@ -0,0 +1,35 @@
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
// General Information about an assembly is controlled through the following
// set of attributes. Change these attribute values to modify the information
// associated with an assembly.
[assembly: AssemblyTitle("TechBot.Commands.MSDN")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("Sand")]
[assembly: AssemblyProduct("TechBot.Commands.MSDN")]
[assembly: AssemblyCopyright("Copyright © Sand 2008")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
// Setting ComVisible to false makes the types in this assembly not visible
// to COM components. If you need to access a type in this assembly from
// COM, set the ComVisible attribute to true on that type.
[assembly: ComVisible(false)]
// The following GUID is for the ID of the typelib if this project is exposed to COM
[assembly: Guid("8a6332ce-82e3-4fbd-a799-8f4b8d025955")]
// Version information for an assembly consists of the following four values:
//
// Major Version
// Minor Version
// Build Number
// Revision
//
// You can specify all the values or you can default the Revision and Build Numbers
// by using the '*' as shown below:
[assembly: AssemblyVersion("1.0.0.0")]
[assembly: AssemblyFileVersion("1.0.0.0")]

View File

@@ -0,0 +1,50 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:2.0.50727.1433
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
namespace TechBot.Commands.MSDN {
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "8.0.0.0")]
internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase {
private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings())));
public static Settings Default {
get {
return defaultInstance;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("C:\\IRC\\TechBot\\CHM")]
public string ChmPath {
get {
return ((string)(this["ChmPath"]));
}
set {
this["ChmPath"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("kmarch.chm")]
public string MainChm {
get {
return ((string)(this["MainChm"]));
}
set {
this["MainChm"] = value;
}
}
}
}

View File

@@ -0,0 +1,12 @@
<?xml version='1.0' encoding='utf-8'?>
<SettingsFile xmlns="http://schemas.microsoft.com/VisualStudio/2004/01/settings" CurrentProfile="(Default)" GeneratedClassNamespace="TechBot.Commands.MSDN" GeneratedClassName="Settings">
<Profiles />
<Settings>
<Setting Name="ChmPath" Type="System.String" Scope="User">
<Value Profile="(Default)">C:\IRC\TechBot\CHM</Value>
</Setting>
<Setting Name="MainChm" Type="System.String" Scope="User">
<Value Profile="(Default)">kmarch.chm</Value>
</Setting>
</Settings>
</SettingsFile>

View File

@@ -0,0 +1,69 @@
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProductVersion>8.0.50727</ProductVersion>
<SchemaVersion>2.0</SchemaVersion>
<ProjectGuid>{ADBF1ED6-A586-4707-BD59-4CD53448D0FE}</ProjectGuid>
<OutputType>Library</OutputType>
<AppDesignerFolder>Properties</AppDesignerFolder>
<RootNamespace>TechBot.Commands.MSDN</RootNamespace>
<AssemblyName>TechBot.Commands.MSDN</AssemblyName>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<Optimize>false</Optimize>
<OutputPath>bin\Debug\</OutputPath>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
<Optimize>true</Optimize>
<OutputPath>bin\Release\</OutputPath>
<DefineConstants>TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<ItemGroup>
<Reference Include="System" />
<Reference Include="System.Data" />
<Reference Include="System.Xml" />
</ItemGroup>
<ItemGroup>
<Compile Include="ApiCommand.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
<Compile Include="Settings.Designer.cs">
<AutoGen>True</AutoGen>
<DesignTimeSharedInput>True</DesignTimeSharedInput>
<DependentUpon>Settings.settings</DependentUpon>
</Compile>
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\CHMLibrary\CHMLibrary.csproj">
<Project>{72E5CCA1-6318-4D62-964D-CB23A5C743B5}</Project>
<Name>CHMLibrary</Name>
</ProjectReference>
<ProjectReference Include="..\TechBot.Library\TechBot.Library.csproj">
<Project>{1114F34D-F388-4F38-AE27-C0EE1B10B777}</Project>
<Name>TechBot.Library</Name>
</ProjectReference>
</ItemGroup>
<ItemGroup>
<None Include="app.config" />
<None Include="Settings.settings">
<Generator>SettingsSingleFileGenerator</Generator>
<LastGenOutput>Settings.Designer.cs</LastGenOutput>
</None>
</ItemGroup>
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
Other similar extension points exist, see Microsoft.Common.targets.
<Target Name="BeforeBuild">
</Target>
<Target Name="AfterBuild">
</Target>
-->
</Project>

View File

@@ -0,0 +1,5 @@
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<ProjectView>ProjectFiles</ProjectView>
</PropertyGroup>
</Project>

View File

@@ -0,0 +1,18 @@
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<configSections>
<sectionGroup name="userSettings" type="System.Configuration.UserSettingsGroup, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" >
<section name="TechBot.Commands.MSDN.Settings" type="System.Configuration.ClientSettingsSection, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" allowExeDefinition="MachineToLocalUser" requirePermission="false" />
</sectionGroup>
</configSections>
<userSettings>
<TechBot.Commands.MSDN.Settings>
<setting name="ChmPath" serializeAs="String">
<value>C:\IRC\TechBot\CHM</value>
</setting>
<setting name="MainChm" serializeAs="String">
<value>kmarch.chm</value>
</setting>
</TechBot.Commands.MSDN.Settings>
</userSettings>
</configuration>

View File

@@ -1,15 +1,27 @@
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<appSettings>
<add key="IRCServerHostName" value="irc.eu.freenode.net" />
<add key="IRCServerHostPort" value="6667" />
<add key="IRCChannelNames" value="channel1;channel2" />
<add key="IRCBotName" value="MyBot" />
<add key="IRCBotPassword" value="MyPassword" />
<add key="ChmPath" value="C:\IRC\TechBot\CHM" />
<add key="MainChm" value="kmarch.chm" />
<add key="BugUrl" value="http://www.reactos.org/bugzilla/show_bug.cgi?id={0}" />
<add key="WineBugUrl" value="http://bugs.winehq.org/show_bug.cgi?id={0}" />
<add key="SambaBugUrl" value="https://bugzilla.samba.org/show_bug.cgi?id={0}" />
</appSettings>
</configuration>
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<configSections>
<sectionGroup name="userSettings" type="System.Configuration.UserSettingsGroup, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" >
<section name="TechBot.Console.Settings" type="System.Configuration.ClientSettingsSection, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" allowExeDefinition="MachineToLocalUser" requirePermission="false" />
</sectionGroup>
</configSections>
<userSettings>
<TechBot.Console.Settings>
<setting name="IRCServerHostName" serializeAs="String">
<value>irc.eu.freenode.net</value>
</setting>
<setting name="IRCChannelNames" serializeAs="String">
<value>rbuildbottest2</value>
</setting>
<setting name="IRCBotName" serializeAs="String">
<value>RBuildBot2</value>
</setting>
<setting name="IRCBotPassword" serializeAs="String">
<value>qwerty</value>
</setting>
<setting name="IRCServerHostPort" serializeAs="String">
<value>6667</value>
</setting>
</TechBot.Console.Settings>
</userSettings>
</configuration>

View File

@@ -0,0 +1,37 @@
using System;
using System.Collections.Generic;
using System.Text;
using TechBot.Library;
namespace TechBot.Console
{
public class ConsoleServiceOutput : IServiceOutput
{
public void WriteLine(MessageContext context,
string message)
{
System.Console.WriteLine(message);
}
}
public class ConsoleTechBotService : TechBotService
{
public ConsoleTechBotService()
: base(new ConsoleServiceOutput())
{
System.Console.WriteLine("TechBot running console service...");
}
public override void Run()
{
//Call the base class
base.Run();
while (true)
{
InjectMessage(System.Console.ReadLine());
}
}
}
}

View File

@@ -1,260 +1,29 @@
using System;
using System.Configuration;
using TechBot.Library;
namespace TechBot.Console
{
public class ConsoleServiceOutput : IServiceOutput
{
public void WriteLine(MessageContext context,
string message)
{
System.Console.WriteLine(message);
}
}
class MainClass
{
private static void VerifyRequiredOption(string optionName,
string optionValue)
{
if (optionValue == null)
{
throw new Exception(String.Format("Option '{0}' not set.",
optionName));
}
}
private static string IRCServerHostName
{
get
{
string optionName = "IRCServerHostName";
string s = ConfigurationSettings.AppSettings[optionName];
VerifyRequiredOption(optionName,
s);
return s;
}
}
private static int IRCServerHostPort
{
get
{
string optionName = "IRCServerHostPort";
string s = ConfigurationSettings.AppSettings[optionName];
VerifyRequiredOption(optionName,
s);
return Int32.Parse(s);
}
}
private static string IRCChannelNames
{
get
{
string optionName = "IRCChannelNames";
string s = ConfigurationSettings.AppSettings[optionName];
VerifyRequiredOption(optionName,
s);
return s;
}
}
private static string IRCBotName
{
get
{
string optionName = "IRCBotName";
string s = ConfigurationSettings.AppSettings[optionName];
VerifyRequiredOption(optionName,
s);
return s;
}
}
private static string IRCBotPassword
{
get
{
string optionName = "IRCBotPassword";
string s = ConfigurationSettings.AppSettings[optionName];
VerifyRequiredOption(optionName,
s);
return s;
}
}
private static string ChmPath
{
get
{
string optionName = "ChmPath";
string s = ConfigurationSettings.AppSettings[optionName];
VerifyRequiredOption(optionName,
s);
return s;
}
}
private static string MainChm
{
get
{
string optionName = "MainChm";
string s = ConfigurationSettings.AppSettings[optionName];
VerifyRequiredOption(optionName,
s);
return s;
}
}
private static string NtstatusXml
{
get
{
string optionName = "NtstatusXml";
string s = ConfigurationSettings.AppSettings[optionName];
VerifyRequiredOption(optionName,
s);
return s;
}
}
private static string WinerrorXml
{
get
{
string optionName = "WinerrorXml";
string s = ConfigurationSettings.AppSettings[optionName];
VerifyRequiredOption(optionName,
s);
return s;
}
}
private static string HresultXml
{
get
{
string optionName = "HresultXml";
string s = ConfigurationSettings.AppSettings[optionName];
VerifyRequiredOption(optionName,
s);
return s;
}
}
private static string WmXml
{
get
{
string optionName = "WmXml";
string s = ConfigurationSettings.AppSettings[optionName];
VerifyRequiredOption(optionName,
s);
return s;
}
}
private static string SvnCommand
{
get
{
string optionName = "SvnCommand";
string s = ConfigurationSettings.AppSettings[optionName];
VerifyRequiredOption(optionName,
s);
return s;
}
}
private static string BugUrl
{
get
{
string optionName = "BugUrl";
string s = ConfigurationSettings.AppSettings[optionName];
VerifyRequiredOption(optionName,
s);
return s;
}
}
private static string WineBugUrl
{
get
{
string optionName = "WineBugUrl";
string s = ConfigurationSettings.AppSettings[optionName];
VerifyRequiredOption(optionName,
s);
return s;
}
}
private static string SambaBugUrl
{
get
{
string optionName = "SambaBugUrl";
string s = ConfigurationSettings.AppSettings[optionName];
VerifyRequiredOption(optionName,
s);
return s;
}
}
private static void RunIrcService()
{
IrcService ircService = new IrcService(IRCServerHostName,
IRCServerHostPort,
IRCChannelNames,
IRCBotName,
IRCBotPassword,
ChmPath,
MainChm,
//NtstatusXml,
//WinerrorXml,
//HresultXml,
//WmXml,
//SvnCommand,
BugUrl,
WineBugUrl,
SambaBugUrl);
ircService.Run();
}
public static void Main(string[] args)
{
if (args.Length > 0 && args[0].ToLower().Equals("irc"))
{
RunIrcService();
return;
}
System.Console.WriteLine("TechBot running console service...");
TechBotService service = new TechBotService(new ConsoleServiceOutput(),
ChmPath,
MainChm);
//NtstatusXml,
//WinerrorXml,
//HresultXml,
//WmXml,
//SvnCommand,
//BugUrl,
//WineBugUrl,
//SambaBugUrl);
service.Run();
while (true)
{
string s = System.Console.ReadLine();
service.InjectMessage(null,
s);
}
}
}
}
using System;
using System.Configuration;
using TechBot.Library;
namespace TechBot.Console
{
class MainClass
{
public static void Main(string[] args)
{
TechBotService m_TechBot = null;
if (args.Length > 0 && args[0].ToLower().Equals("irc"))
{
m_TechBot = new IrcTechBotService(Settings.Default.IRCServerHostName,
Settings.Default.IRCServerHostPort,
Settings.Default.IRCChannelNames,
Settings.Default.IRCBotName,
Settings.Default.IRCBotPassword);
}
else
{
m_TechBot = new ConsoleTechBotService();
}
m_TechBot.Run();
}
}
}

View File

@@ -0,0 +1,86 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:2.0.50727.1433
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
namespace TechBot.Console {
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "8.0.0.0")]
internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase {
private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings())));
public static Settings Default {
get {
return defaultInstance;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("irc.eu.freenode.net")]
public string IRCServerHostName {
get {
return ((string)(this["IRCServerHostName"]));
}
set {
this["IRCServerHostName"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("rbuildbottest2")]
public string IRCChannelNames {
get {
return ((string)(this["IRCChannelNames"]));
}
set {
this["IRCChannelNames"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("RBuildBot2")]
public string IRCBotName {
get {
return ((string)(this["IRCBotName"]));
}
set {
this["IRCBotName"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("qwerty")]
public string IRCBotPassword {
get {
return ((string)(this["IRCBotPassword"]));
}
set {
this["IRCBotPassword"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("6667")]
public int IRCServerHostPort {
get {
return ((int)(this["IRCServerHostPort"]));
}
set {
this["IRCServerHostPort"] = value;
}
}
}
}

View File

@@ -0,0 +1,21 @@
<?xml version='1.0' encoding='utf-8'?>
<SettingsFile xmlns="http://schemas.microsoft.com/VisualStudio/2004/01/settings" CurrentProfile="(Default)" GeneratedClassNamespace="TechBot.Console" GeneratedClassName="Settings">
<Profiles />
<Settings>
<Setting Name="IRCServerHostName" Type="System.String" Scope="User">
<Value Profile="(Default)">irc.eu.freenode.net</Value>
</Setting>
<Setting Name="IRCChannelNames" Type="System.String" Scope="User">
<Value Profile="(Default)">rbuildbottest2</Value>
</Setting>
<Setting Name="IRCBotName" Type="System.String" Scope="User">
<Value Profile="(Default)">RBuildBot2</Value>
</Setting>
<Setting Name="IRCBotPassword" Type="System.String" Scope="User">
<Value Profile="(Default)">qwerty</Value>
</Setting>
<Setting Name="IRCServerHostPort" Type="System.Int32" Scope="User">
<Value Profile="(Default)">6667</Value>
</Setting>
</Settings>
</SettingsFile>

View File

@@ -38,12 +38,26 @@
-->
<ItemGroup>
<Compile Include="AssemblyInfo.cs" />
<Compile Include="ConsoleTechBotService.cs" />
<Compile Include="Main.cs" />
<Compile Include="Settings.Designer.cs">
<AutoGen>True</AutoGen>
<DesignTimeSharedInput>True</DesignTimeSharedInput>
<DependentUpon>Settings.settings</DependentUpon>
</Compile>
</ItemGroup>
<ItemGroup>
<Reference Include="System" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\TechBot.Commands.Common\TechBot.Commands.Common.csproj">
<Project>{041B5F06-BF97-4981-B024-3A7B6DD9F6AE}</Project>
<Name>TechBot.Commands.Common</Name>
</ProjectReference>
<ProjectReference Include="..\TechBot.Commands.RBuild\TechBot.Commands.RBuild.csproj">
<Project>{D676FEDE-62DD-4B4D-94C6-308598E827F9}</Project>
<Name>TechBot.Commands.RBuild</Name>
</ProjectReference>
<ProjectReference Include="..\TechBot.IRCLibrary\TechBot.IRCLibrary.csproj">
<Project>{D2A57931-DF04-4BC3-BD11-75DF4F3B0A88}</Project>
<Name>TechBot.IRCLibrary</Name>
@@ -54,7 +68,11 @@
</ProjectReference>
</ItemGroup>
<ItemGroup>
<None Include="App.config" />
<None Include="app.config" />
<None Include="Settings.settings">
<Generator>SettingsSingleFileGenerator</Generator>
<LastGenOutput>Settings.Designer.cs</LastGenOutput>
</None>
</ItemGroup>
<ItemGroup>
<Folder Include="Properties\" />

View File

@@ -16,6 +16,10 @@ namespace TechBot.IRCLibrary
/// </summary>
public delegate void ChannelUserDatabaseChangedHandler(IrcChannel channel);
public delegate void OnConnectHandler ();
public delegate void OnDisconnectHandler();
public delegate void OnConnectionLostHandler();
/// <summary>
/// An IRC client.
/// </summary>
@@ -202,6 +206,10 @@ namespace TechBot.IRCLibrary
public event ChannelUserDatabaseChangedHandler ChannelUserDatabaseChanged;
public event OnConnectHandler OnConnect;
public event OnConnectionLostHandler OnConnectionLost;
public event OnDisconnectHandler OnDisconnect;
#endregion
#region Public properties
@@ -291,20 +299,39 @@ namespace TechBot.IRCLibrary
/// <param name="ar">IAsyncResult object.</param>
private void ReadComplete(IAsyncResult ar)
{
StateObject stateObject = (StateObject) ar.AsyncState;
if (stateObject.Stream.CanRead)
{
int bytesReceived = stateObject.Stream.EndRead(ar);
if (bytesReceived > 0)
{
messageStream.Write(Encoding.GetString(stateObject.Buffer, 0, bytesReceived));
while (messageStream.DataAvailable)
{
OnMessageReceived(new IrcMessage(messageStream.Read()));
}
}
}
Receive();
try
{
StateObject stateObject = (StateObject)ar.AsyncState;
if (stateObject.Stream.CanRead)
{
int bytesReceived = stateObject.Stream.EndRead(ar);
if (bytesReceived > 0)
{
messageStream.Write(Encoding.GetString(stateObject.Buffer, 0, bytesReceived));
while (messageStream.DataAvailable)
{
OnMessageReceived(new IrcMessage(messageStream.Read()));
}
}
}
Receive();
}
catch (SocketException)
{
if (OnConnectionLost != null)
OnConnectionLost();
}
catch (IOException)
{
if (OnConnectionLost != null)
OnConnectionLost();
}
catch (Exception)
{
if (OnConnectionLost != null)
OnConnectionLost();
}
}
/// <summary>
@@ -498,6 +525,9 @@ namespace TechBot.IRCLibrary
connected = false;
tcpClient.Close();
tcpClient = null;
if (OnDisconnect != null)
OnDisconnect();
}
}
@@ -507,19 +537,37 @@ namespace TechBot.IRCLibrary
/// <param name="message">The message to be sent.</param>
public void SendMessage(IrcMessage message)
{
if (!connected)
{
throw new NotConnectedException();
}
/* Serialize sending messages */
lock (typeof(IrcClient))
{
NetworkStream networkStream = tcpClient.GetStream();
byte[] bytes = Encoding.GetBytes(message.Line);
networkStream.Write(bytes, 0, bytes.Length);
networkStream.Flush();
}
try
{
if (!connected)
{
throw new NotConnectedException();
}
/* Serialize sending messages */
lock (typeof(IrcClient))
{
NetworkStream networkStream = tcpClient.GetStream();
byte[] bytes = Encoding.GetBytes(message.Line);
networkStream.Write(bytes, 0, bytes.Length);
networkStream.Flush();
}
}
catch (SocketException)
{
if (OnConnectionLost != null)
OnConnectionLost();
}
catch (IOException)
{
if (OnConnectionLost != null)
OnConnectionLost();
}
catch (Exception)
{
if (OnConnectionLost != null)
OnConnectionLost();
}
}
/// <summary>

View File

@@ -50,6 +50,9 @@
<ItemGroup>
<Reference Include="System" />
</ItemGroup>
<ItemGroup>
<None Include="app.config" />
</ItemGroup>
<ItemGroup>
<Folder Include="Properties\" />
</ItemGroup>

View File

@@ -0,0 +1,15 @@
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<configSections>
<sectionGroup name="userSettings" type="System.Configuration.UserSettingsGroup, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" >
<section name="TechBot.IRCLibrary.Settings" type="System.Configuration.ClientSettingsSection, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" allowExeDefinition="MachineToLocalUser" requirePermission="false" />
</sectionGroup>
</configSections>
<userSettings>
<TechBot.IRCLibrary.Settings>
<setting name="CommandPrefix" serializeAs="String">
<value>@</value>
</setting>
</TechBot.IRCLibrary.Settings>
</userSettings>
</configuration>

View File

@@ -0,0 +1,35 @@
using System;
using System.Collections.Generic;
using System.Text;
namespace TechBot.Library
{
public class CommandAttribute : Attribute
{
private string m_Name = null;
private string m_Help = "No help for this command is available";
private string m_Desc = "No description for this command is available";
public CommandAttribute(string name)
{
m_Name = name;
}
public string Name
{
get { return m_Name; }
}
public string Help
{
get { return m_Help; }
set { m_Help = value; }
}
public string Description
{
get { return m_Desc; }
set { m_Desc = value; }
}
}
}

View File

@@ -0,0 +1,34 @@
using System;
namespace TechBot.Library
{
/// <summary>
/// This class implements an alias attribute to work in conjunction
/// with the <see cref="CommandLineSwitchAttribute">CommandLineSwitchAttribute</see>
/// attribute. If the CommandLineSwitchAttribute exists, then this attribute
/// defines an alias for it.
/// </summary>
[AttributeUsage( AttributeTargets.Property )]
public class CommandParameterAliasAttribute : Attribute
{
#region Private Variables
protected string m_Alias = "";
#endregion
#region Public Properties
public string Alias
{
get { return m_Alias; }
}
#endregion
#region Constructors
public CommandParameterAliasAttribute(string alias)
{
m_Alias = alias;
}
#endregion
}
}

View File

@@ -0,0 +1,50 @@
using System;
namespace TechBot.Library
{
/// <summary>Implements a basic command-line switch by taking the
/// switching name and the associated description.</summary>
/// <remark>Only currently is implemented for properties, so all
/// auto-switching variables should have a get/set method supplied.</remark>
[AttributeUsage( AttributeTargets.Property )]
public class CommandParameterAttribute : Attribute
{
#region Private Variables
private string m_name = "";
private string m_description = "";
private bool m_Required = true;
private bool m_Default = false;
#endregion
#region Public Properties
/// <summary>Accessor for retrieving the switch-name for an associated
/// property.</summary>
public string Name { get { return m_name; } }
/// <summary>Accessor for retrieving the description for a switch of
/// an associated property.</summary>
public string Description { get { return m_description; } }
public bool Required { get { return m_Required; } }
public bool DefaultParameter
{
get { return m_Default; }
set { m_Default = value; }
}
#endregion
#region Constructors
/// <summary>
/// Attribute constructor.
/// </summary>
public CommandParameterAttribute(string name, string description)
{
m_name = name;
m_description = description;
}
#endregion
}
}

View File

@@ -1,50 +0,0 @@
using System;
namespace TechBot.Library
{
public abstract class BugCommand : Command//, ICommand
{
public BugCommand(TechBotService techBot) : base (techBot)
{
}
public override void Handle(MessageContext context,
string commandName,
string parameters)
{
string bugText = parameters;
if (bugText.Equals(String.Empty))
{
TechBot.ServiceOutput.WriteLine(context,
"Please provide a valid bug number.");
return;
}
NumberParser np = new NumberParser();
long bug = np.Parse(bugText);
if (np.Error)
{
TechBot.ServiceOutput.WriteLine(context,
String.Format("{0} is not a valid bug number.",
bugText));
return;
}
/*
string bugUrl = this.RosBugUrl;
if (context is ChannelMessageContext)
{
ChannelMessageContext channelContext = context as ChannelMessageContext;
if (channelContext.Channel.Name == "winehackers")
bugUrl = this.WineBugUrl;
else if (channelContext.Channel.Name == "samba-technical")
bugUrl = this.SambaBugUrl;
}*/
TechBot.ServiceOutput.WriteLine(context, String.Format(BugUrl, bug));
}
protected abstract string BugUrl { get; }
}
}

View File

@@ -0,0 +1,20 @@
using System;
using System.Collections.Generic;
using System.Text;
namespace TechBot.Library
{
public class CommandBuilderCollection : List<CommandBuilder>
{
public CommandBuilder Find(string name)
{
foreach (CommandBuilder command in this)
{
if (command.Name == name)
return command;
}
return null;
}
}
}

View File

@@ -1,53 +0,0 @@
using System;
namespace TechBot.Library
{
/*
public interface ICommand
{
bool CanHandle(string commandName);
void Handle(MessageContext context,
string commandName,
string parameters);
//string Help();
}*/
public abstract class Command
{
protected TechBotService m_TechBotService = null;
public Command(TechBotService techbot)
{
m_TechBotService = techbot;
}
public TechBotService TechBot
{
get { return m_TechBotService; }
}
public abstract string[] AvailableCommands { get; }
public abstract void Handle(MessageContext context,
string commandName,
string parameters);
/*
protected bool CanHandle(string commandName,
string[] availableCommands)
{
foreach (string availableCommand in availableCommands)
{
if (String.Compare(availableCommand, commandName, true) == 0)
return true;
}
return false;
}
*/
public virtual string Help()
{
return "No help is available for this command";
}
}
}

View File

@@ -0,0 +1,90 @@
using System;
using System.Text.RegularExpressions;
namespace TechBot.Library
{
public abstract class Command
{
protected TechBotService m_TechBotService = null;
protected MessageContext m_Context = null;
protected string m_Params = null;
public TechBotService TechBot
{
get { return m_TechBotService; }
set { m_TechBotService = value; }
}
public MessageContext Context
{
get { return m_Context; }
set { m_Context = value; }
}
public virtual bool AnswerInPublic
{
get { return true; }
}
public string Name
{
get
{
CommandAttribute commandAttribute = (CommandAttribute)
Attribute.GetCustomAttribute(GetType(), typeof(CommandAttribute));
return commandAttribute.Name;
}
}
public string Parameters
{
get { return m_Params; }
set { m_Params = value; }
}
protected virtual void Say()
{
TechBot.ServiceOutput.WriteLine(Context, string.Empty);
}
protected virtual void Say(string message)
{
TechBot.ServiceOutput.WriteLine(Context, message);
}
protected virtual void Say(string format , params object[] args)
{
TechBot.ServiceOutput.WriteLine(Context, String.Format(format, args));
}
public void Run()
{
if (Context is ChannelMessageContext)
{
if (AnswerInPublic)
{
ExecuteCommand();
}
else
{
Say("Sorry, I only respond '{0}' in private , PM me!", Name);
}
}
else
{
ExecuteCommand();
}
}
public abstract void ExecuteCommand();
public virtual void Initialize()
{
}
public virtual void DeInitialize()
{
}
}
}

View File

@@ -9,8 +9,7 @@ namespace TechBot.Library
{
protected XmlDocument m_XmlDocument;
public XmlCommand(TechBotService techBot)
: base(techBot)
public XmlCommand()
{
m_XmlDocument = new XmlDocument();
m_XmlDocument.Load(XmlFile);

View File

@@ -0,0 +1,15 @@
using System;
using System.Collections.Generic;
using System.Text;
namespace TechBot.Library
{
public abstract class XmlLookupCommand : XmlCommand
{
public virtual string Text
{
get { return Parameters; }
set { Parameters = value; }
}
}
}

View File

@@ -0,0 +1,78 @@
using System;
using System.Reflection;
using System.Collections;
namespace TechBot.Library
{
[Command("help", Help = "!help or !help -name:[CommandName]", Description = "Shows this help , type 'help -name:[CommandName]'")]
public class HelpCommand : Command
{
public HelpCommand()
{
}
public override bool AnswerInPublic
{
get { return false; }
}
[CommandParameter("Name", "The command name to show help")]
public string CommandName
{
get { return Parameters; }
set { Parameters = value; }
}
public override void ExecuteCommand()
{
if (string.IsNullOrEmpty(CommandName))
{
Say("I support the following commands:");
foreach (CommandBuilder command in TechBot.Commands)
{
Say("{0}{1} - {2}",
Settings.Default.CommandPrefix,
command.Name,
command.Description);
}
}
else
{
CommandBuilder cmdBuilder = TechBot.Commands.Find(CommandName);
if (cmdBuilder == null)
{
Say("Command '{0}' is not recognized. Type '!help' to show all available commands", CommandName);
}
else
{
Say("Command '{0}' help:", CommandName);
Say();
Say(cmdBuilder.Description);
Say();
Say(cmdBuilder.Help);
Say();
Say("Parameters :");
Say();
PropertyInfo[] propertyInfoArray = cmdBuilder.Type.GetProperties(BindingFlags.Public | BindingFlags.Instance);
foreach (PropertyInfo propertyInfo in propertyInfoArray)
{
CommandParameterAttribute[] commandAttributes = (CommandParameterAttribute[])
Attribute.GetCustomAttributes(propertyInfo, typeof(CommandParameterAttribute));
foreach (CommandParameterAttribute parameter in commandAttributes)
{
Say("\t-{0}: [{1}]",
parameter.Name,
parameter.Description);
}
}
Say();
}
}
}
}
}

View File

@@ -0,0 +1,52 @@
using System;
using System.Reflection;
using System.Collections.Generic;
using System.Text;
namespace TechBot.Library
{
public class CommandBuilder
{
private Type m_CommandType;
private string m_CommandName;
private string m_CommandHelp;
private string m_CommandDesc;
public CommandBuilder(Type commandType)
{
m_CommandType = commandType;
CommandAttribute commandAttribute = (CommandAttribute)
Attribute.GetCustomAttribute(commandType, typeof(CommandAttribute));
m_CommandName = commandAttribute.Name;
m_CommandHelp = commandAttribute.Help;
m_CommandDesc = commandAttribute.Description;
}
public string Name
{
get { return m_CommandName; }
}
public string Help
{
get { return m_CommandHelp; }
}
public string Description
{
get { return m_CommandDesc; }
}
public Type Type
{
get { return m_CommandType; }
}
public Command CreateCommand()
{
return (Command)Type.Assembly.CreateInstance(Type.FullName, true);
}
}
}

View File

@@ -0,0 +1,60 @@
using System;
using System.IO;
using System.Collections;
using System.Collections.Generic;
using System.ComponentModel;
using System.Reflection;
namespace TechBot.Library
{
public class CommandFactory
{
private static CommandBuilderCollection m_Commands = new CommandBuilderCollection();
private CommandFactory()
{
}
public static void LoadPlugins()
{
//get the file names of the dll files in the current directory.
foreach (string fileName in Directory.GetFiles(Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().Location), "*.dll"))
{
LoadPluginsFromDLLFile(fileName);
}
}
private static void LoadPluginsFromDLLFile(string sFile)
{
Assembly assPlugin = Assembly.LoadFile(sFile);
Console.WriteLine("Loading plugins from : {0}", assPlugin.Location);
if (assPlugin != null)
{
foreach (Type pluginType in assPlugin.GetTypes())
{
if (pluginType.IsSubclassOf(typeof(Command)))
{
if (pluginType.IsAbstract == false)
{
CommandBuilder cmdBuilder = new CommandBuilder(pluginType);
Console.WriteLine("{0}:{1}",
cmdBuilder.Name,
cmdBuilder.Description);
//Add it to the list.
Commands.Add(new CommandBuilder(pluginType));
}
}
}
}
}
public static CommandBuilderCollection Commands
{
get { return m_Commands; }
}
}
}

View File

@@ -1,37 +0,0 @@
using System;
using System.Collections;
namespace TechBot.Library
{
public class HelpCommand : Command
{
public HelpCommand(TechBotService techBot)
: base(techBot)
{
}
public override string[] AvailableCommands
{
get { return new string[] { "help" }; }
}
public override void Handle(
MessageContext context,
string commandName,
string parameters)
{
TechBot.ServiceOutput.WriteLine(context, "I support the following commands:");
foreach (Command command in TechBot.Commands)
{
TechBot.ServiceOutput.WriteLine(context,
command.Help());
}
}
public override string Help()
{
return "!help";
}
}
}

View File

@@ -1,90 +0,0 @@
using System;
using System.Xml;
namespace TechBot.Library
{
public class HResultCommand : XmlCommand
{
public HResultCommand(TechBotService techBot)
: base(techBot)
{
}
public override string XmlFile
{
get { return Settings.Default.HResultXml; }
}
public override string[] AvailableCommands
{
get { return new string[] { "hresult" }; }
}
/*
public bool CanHandle(string commandName)
{
return CanHandle(commandName,
new string[] { "hresult" });
}
*/
public override void Handle(MessageContext context,
string commandName,
string parameters)
{
string hresultText = parameters;
if (hresultText.Equals(String.Empty))
{
TechBot.ServiceOutput.WriteLine(context,
"Please provide a valid HRESULT value.");
return;
}
NumberParser np = new NumberParser();
long hresult = np.Parse(hresultText);
if (np.Error)
{
TechBot.ServiceOutput.WriteLine(context,
String.Format("{0} is not a valid HRESULT value.",
hresultText));
return;
}
string description = GetHresultDescription(hresult);
if (description != null)
{
TechBot.ServiceOutput.WriteLine(context,
String.Format("{0} is {1}.",
hresultText,
description));
}
else
{
TechBot.ServiceOutput.WriteLine(context,
String.Format("I don't know about HRESULT {0}.",
hresultText));
}
}
public override string Help()
{
return "!hresult <value>";
}
public string GetHresultDescription(long hresult)
{
XmlElement root = base.m_XmlDocument.DocumentElement;
XmlNode node = root.SelectSingleNode(String.Format("Hresult[@value='{0}']",
hresult.ToString("X8")));
if (node != null)
{
XmlAttribute text = node.Attributes["text"];
if (text == null)
throw new Exception("Node has no text attribute.");
return text.Value;
}
else
return null;
}
}
}

View File

@@ -7,43 +7,33 @@ namespace TechBot.Library
{
}
public class ChannelMessageContext : MessageContext
{
private IrcChannel channel;
private IrcChannel m_IrcChannel;
public IrcChannel Channel
{
get
{
return channel;
}
}
public IrcChannel Channel
{
get { return m_IrcChannel; }
}
public ChannelMessageContext(IrcChannel channel)
{
this.channel = channel;
m_IrcChannel = channel;
}
}
public class UserMessageContext : MessageContext
{
private IrcUser user;
private IrcUser m_IrcUser;
public IrcUser User
{
get
{
return user;
}
}
public IrcUser User
{
get { return m_IrcUser; }
}
public UserMessageContext(IrcUser user)
{
this.user = user;
m_IrcUser = user;
}
}
}

View File

@@ -1,88 +0,0 @@
using System;
using System.Xml;
namespace TechBot.Library
{
public class NtStatusCommand : XmlCommand
{
public NtStatusCommand(TechBotService techBot)
: base(techBot)
{
}
public override string XmlFile
{
get { return Settings.Default.NtStatusXml; }
}
public override string[] AvailableCommands
{
get { return new string[] { "ntstatus" }; }
}
/*
public bool CanHandle(string commandName)
{
return CanHandle(commandName,
new string[] { "ntstatus" });
}
*/
public override void Handle(MessageContext context,
string commandName,
string parameters)
{
string ntstatusText = parameters;
if (ntstatusText.Equals(String.Empty))
{
TechBot.ServiceOutput.WriteLine(context,
"Please provide a valid NTSTATUS value.");
return;
}
NumberParser np = new NumberParser();
long ntstatus = np.Parse(ntstatusText);
if (np.Error)
{
TechBot.ServiceOutput.WriteLine(context,
String.Format("{0} is not a valid NTSTATUS value.",
ntstatusText));
return;
}
string description = GetNtstatusDescription(ntstatus);
if (description != null)
{
TechBot.ServiceOutput.WriteLine(context,
String.Format("{0} is {1}.",
ntstatusText,
description));
}
else
{
TechBot.ServiceOutput.WriteLine(context,
String.Format("I don't know about NTSTATUS {0}.",
ntstatusText));
}
}
public override string Help()
{
return "!ntstatus <value>";
}
public string GetNtstatusDescription(long ntstatus)
{
XmlElement root = base.m_XmlDocument.DocumentElement;
XmlNode node = root.SelectSingleNode(String.Format("Ntstatus[@value='{0}']",
ntstatus.ToString("X8")));
if (node != null)
{
XmlAttribute text = node.Attributes["text"];
if (text == null)
throw new Exception("Node has no text attribute.");
return text.Value;
}
else
return null;
}
}
}

View File

@@ -1,29 +0,0 @@
using System;
using System.Collections.Generic;
using System.Text;
namespace TechBot.Library
{
class ReactOSBugUrl : BugCommand
{
public ReactOSBugUrl(TechBotService techBot)
: base(techBot)
{
}
public override string[] AvailableCommands
{
get { return new string[] { "rosbug" }; }
}
protected override string BugUrl
{
get { return "http://www.reactos.org/bugzilla/show_bug.cgi?id={0}"; }
}
public override string Help()
{
return "!rosbug <number>";
}
}
}

View File

@@ -1,29 +0,0 @@
using System;
using System.Collections.Generic;
using System.Text;
namespace TechBot.Library
{
class SambaBugUrl : BugCommand
{
public SambaBugUrl(TechBotService techBot)
: base(techBot)
{
}
public override string[] AvailableCommands
{
get { return new string[] { "sambabug" }; }
}
protected override string BugUrl
{
get { return "https://bugzilla.samba.org/show_bug.cgi?id={0}"; }
}
public override string Help()
{
return "!sambabug <number>";
}
}
}

View File

@@ -2,9 +2,8 @@ using System;
namespace TechBot.Library
{
public interface IServiceOutput
{
void WriteLine(MessageContext context,
string message);
}
public interface IServiceOutput
{
void WriteLine(MessageContext context, string message);
}
}

View File

@@ -1,7 +1,7 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:2.0.50727.832
// Runtime Version:2.0.50727.1433
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
@@ -67,5 +67,14 @@ namespace TechBot.Library {
return ((string)(this["SVNRoot"]));
}
}
[global::System.Configuration.ApplicationScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("@")]
public string CommandPrefix {
get {
return ((string)(this["CommandPrefix"]));
}
}
}
}

View File

@@ -17,5 +17,8 @@
<Setting Name="SVNRoot" Type="System.String" Scope="Application">
<Value Profile="(Default)">svn://svn.reactos.org/trunk/reactos</Value>
</Setting>
<Setting Name="CommandPrefix" Type="System.String" Scope="Application">
<Value Profile="(Default)">@</Value>
</Setting>
</Settings>
</SettingsFile>

View File

@@ -1,32 +0,0 @@
using System;
namespace TechBot.Library
{
public class SvnCommand : Command
{
private string m_SvnRoot;
public SvnCommand(TechBotService techBot)
: base(techBot)
{
m_SvnRoot = Settings.Default.SVNRoot;
}
public override string[] AvailableCommands
{
get { return new string[] { "svn" }; }
}
public override void Handle(MessageContext context,
string commandName,
string parameters)
{
TechBot.ServiceOutput.WriteLine(context, string.Format("svn co {0}" , m_SvnRoot));
}
public override string Help()
{
return "!svn";
}
}
}

View File

@@ -39,21 +39,19 @@
</Target>
-->
<ItemGroup>
<Compile Include="ApiCommand.cs" />
<Compile Include="BugCommand.cs" />
<Compile Include="Attributes\CommandAttribute.cs" />
<Compile Include="Attributes\CommandParameterAliasAttribute.cs" />
<Compile Include="Attributes\CommandParameterAttribute.cs" />
<Compile Include="Collections\CommandBuilderCollection.cs" />
<Compile Include="Commands\Base\XmlLookupCommand.cs" />
<Compile Include="Factory\CommandBuilder.cs" />
<Compile Include="Factory\CommandFactory.cs" />
<Compile Include="Commands\Base\Command.cs" />
<Compile Include="Commands\Base\XmlCommand.cs" />
<Compile Include="SambaBugUrl.cs" />
<Compile Include="WineBugUrl.cs" />
<Compile Include="ErrorCommand.cs" />
<Compile Include="HelpCommand.cs" />
<Compile Include="HresultCommand.cs" />
<Compile Include="Command.cs" />
<Compile Include="IrcService.cs" />
<Compile Include="Commands\HelpCommand.cs" />
<Compile Include="MessageContext.cs" />
<Compile Include="NtStatusCommand.cs" />
<Compile Include="NumberParser.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
<Compile Include="ReactOSBugUrl.cs" />
<Compile Include="ServiceOutput.cs" />
<Compile Include="Settings.cs" />
<Compile Include="Settings.Designer.cs">
@@ -61,10 +59,8 @@
<DesignTimeSharedInput>True</DesignTimeSharedInput>
<DependentUpon>Settings.settings</DependentUpon>
</Compile>
<Compile Include="SvnCommand.cs" />
<Compile Include="TechBotIrcService.cs" />
<Compile Include="TechBotService.cs" />
<Compile Include="WinerrorCommand.cs" />
<Compile Include="WmCommand.cs" />
</ItemGroup>
<ItemGroup>
<Reference Include="System" />
@@ -72,10 +68,6 @@
<Reference Include="System.XML" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\CHMLibrary\CHMLibrary.csproj">
<Project>{72E5CCA1-6318-4D62-964D-CB23A5C743B5}</Project>
<Name>CHMLibrary</Name>
</ProjectReference>
<ProjectReference Include="..\TechBot.IRCLibrary\TechBot.IRCLibrary.csproj">
<Project>{D2A57931-DF04-4BC3-BD11-75DF4F3B0A88}</Project>
<Name>TechBot.IRCLibrary</Name>

View File

@@ -1,296 +1,304 @@
using System;
using System.Text;
using System.Collections;
using System.Threading;
using TechBot.IRCLibrary;
namespace TechBot.Library
{
public class IrcService : IServiceOutput
{
private string hostname;
private int port;
private string channelnames;
private string botname;
private string password;
private string chmPath;
private string mainChm;
private string ntstatusXml;
private string winerrorXml;
private string hresultXml;
private string wmXml;
private string svnCommand;
private string bugUrl, WineBugUrl, SambaBugUrl;
private IrcClient m_IrcClient;
private ArrayList channels = new ArrayList(); /* IrcChannel */
private TechBotService service;
private bool isStopped = false;
public IrcService(string hostname,
int port,
string channelnames,
string botname,
string password,
string chmPath,
string mainChm,
//string ntstatusXml,
//string winerrorXml,
//string hresultXml,
//string wmXml,
//string svnCommand,
string BugUrl,
string WineBugUrl,
string SambaBugUrl)
{
this.hostname = hostname;
this.port = port;
this.channelnames = channelnames;
this.botname = botname;
if (password == null || password.Trim() == "")
this.password = null;
else
this.password = password;
this.chmPath = chmPath;
this.mainChm = mainChm;
this.ntstatusXml = ntstatusXml;
this.winerrorXml = winerrorXml;
this.hresultXml = hresultXml;
this.wmXml = wmXml;
this.svnCommand = svnCommand;
this.bugUrl = BugUrl;
this.WineBugUrl = WineBugUrl;
this.SambaBugUrl = SambaBugUrl;
}
public void Run()
{
service = new TechBotService(this,
chmPath,
mainChm);
//ntstatusXml,
//winerrorXml,
//hresultXml,
//wmXml,
//svnCommand,
//bugUrl,
//WineBugUrl,
//SambaBugUrl);
service.Run();
m_IrcClient = new IrcClient();
m_IrcClient.Encoding = Encoding.GetEncoding("iso-8859-1");
m_IrcClient.MessageReceived += new MessageReceivedHandler(client_MessageReceived);
m_IrcClient.ChannelUserDatabaseChanged += new ChannelUserDatabaseChangedHandler(client_ChannelUserDatabaseChanged);
Console.WriteLine("Connecting to {0} port {1}",
hostname,
port);
m_IrcClient.Connect(hostname, port);
Console.WriteLine("Connected...");
m_IrcClient.Register(botname, password, null);
Console.WriteLine("Registered as {0}...", botname);
JoinChannels();
while (!isStopped)
{
Thread.Sleep(1000);
}
PartChannels();
m_IrcClient.Diconnect();
Console.WriteLine("Disconnected...");
}
public void Stop()
{
isStopped = true;
}
private void JoinChannels()
{
foreach (string channelname in channelnames.Split(new char[] { ';' }))
{
IrcChannel channel = m_IrcClient.JoinChannel(channelname);
channels.Add(channel);
System.Console.WriteLine(String.Format("Joined channel #{0}...",
channel.Name));
}
}
private void PartChannels()
{
foreach (IrcChannel channel in channels)
{
m_IrcClient.PartChannel(channel, "Caught in the bitstream...");
System.Console.WriteLine(String.Format("Parted channel #{0}...",
channel.Name));
}
}
private string GetMessageSource(MessageContext context)
{
if (context is ChannelMessageContext)
{
ChannelMessageContext channelContext = context as ChannelMessageContext;
return String.Format("#{0}",
channelContext.Channel.Name);
}
else if (context is UserMessageContext)
{
UserMessageContext userContext = context as UserMessageContext;
return userContext.User.Nickname;
}
else
{
throw new InvalidOperationException(String.Format("Unhandled message context '{0}'",
context.GetType()));
}
}
public void WriteLine(MessageContext context,
string message)
{
if (context is ChannelMessageContext)
{
ChannelMessageContext channelContext = context as ChannelMessageContext;
channelContext.Channel.Talk(message);
}
else if (context is UserMessageContext)
{
UserMessageContext userContext = context as UserMessageContext;
userContext.User.Talk(message);
}
else
{
throw new InvalidOperationException(String.Format("Unhandled message context '{0}'",
context.GetType()));
}
}
private void ExtractMessage(string parameters,
out string message)
{
int startIndex = parameters.IndexOf(':');
if (startIndex != -1)
{
message = parameters.Substring(startIndex + 1);
}
else
{
message = parameters;
}
}
private bool GetChannelName(IrcMessage message,
out string channelName)
{
if (message.Parameters == null || !message.Parameters.StartsWith("#"))
{
channelName = null;
return false;
}
int index = message.Parameters.IndexOf(' ');
if (index == -1)
index = message.Parameters.Length;
else
index = index - 1;
channelName = message.Parameters.Substring(1, index);
return true;
}
private bool GetTargetNickname(IrcMessage message,
out string nickname)
{
if (message.Parameters == null)
{
nickname = null;
return false;
}
int index = message.Parameters.IndexOf(' ');
if (index == -1)
index = message.Parameters.Length;
nickname = message.Parameters.Substring(0, index);
Console.WriteLine("nickname: " + nickname);
return true;
}
private bool ShouldAcceptMessage(IrcMessage message,
out MessageContext context)
{
if (message.Command.ToUpper().Equals("PRIVMSG"))
{
string channelName;
string nickname;
if (GetChannelName(message,
out channelName))
{
foreach (IrcChannel channel in channels)
{
if (String.Compare(channel.Name, channelName, true) == 0)
{
context = new ChannelMessageContext(channel);
return true;
}
}
}
else if (GetTargetNickname(message,
out nickname))
{
IrcUser targetUser = new IrcUser(m_IrcClient,
nickname);
if (String.Compare(targetUser.Nickname, botname, true) == 0)
{
IrcUser sourceUser = new IrcUser(m_IrcClient,
message.PrefixNickname);
context = new UserMessageContext(sourceUser);
return true;
}
}
}
context = null;
return false;
}
private void client_MessageReceived(IrcMessage message)
{
try
{
if (message.Command != null &&
message.Parameters != null)
{
string injectMessage;
ExtractMessage(message.Parameters,
out injectMessage);
MessageContext context;
if (ShouldAcceptMessage(message,
out context))
{
Console.WriteLine(String.Format("Injecting: {0} from {1}",
injectMessage,
GetMessageSource(context)));
service.InjectMessage(context,
injectMessage);
}
else
{
Console.WriteLine("Received: " + message.Line);
}
}
else
{
Console.WriteLine("Received: " + message.Line);
}
}
catch (Exception ex)
{
Console.WriteLine(String.Format("Exception: {0}", ex));
}
}
private void client_ChannelUserDatabaseChanged(IrcChannel channel)
{
}
}
}
using System;
using System.Text;
using System.Collections;
using System.Threading;
using TechBot.IRCLibrary;
namespace TechBot.Library
{
public class IrcServiceOutput : IServiceOutput
{
public void WriteLine(MessageContext context,
string message)
{
if (context is ChannelMessageContext)
{
Thread.Sleep (500);
ChannelMessageContext channelContext = context as ChannelMessageContext;
channelContext.Channel.Talk(message);
}
else if (context is UserMessageContext)
{
UserMessageContext userContext = context as UserMessageContext;
userContext.User.Talk(message);
}
else
{
throw new InvalidOperationException(String.Format("Unhandled message context '{0}'",
context.GetType()));
}
}
}
public class IrcTechBotService : TechBotService
{
private int port;
private string hostname;
private string channelnames;
private string botname;
private string password;
private IrcClient m_IrcClient;
private ArrayList channels = new ArrayList();
private bool isStopped = false;
public IrcTechBotService(string hostname,
int port,
string channelnames,
string botname,
string password)
: base (new IrcServiceOutput())
{
this.hostname = hostname;
this.port = port;
this.channelnames = channelnames;
this.botname = botname;
if (password == null || password.Trim() == "")
this.password = null;
else
this.password = password;
}
public override void Run()
{
//Call the base class
base.Run();
m_IrcClient = new IrcClient();
m_IrcClient.Encoding = Encoding.GetEncoding("iso-8859-1");
m_IrcClient.OnConnect += new OnConnectHandler(m_IrcClient_OnConnect);
m_IrcClient.OnConnectionLost += new OnConnectionLostHandler(m_IrcClient_OnConnectionLost);
m_IrcClient.OnDisconnect += new OnDisconnectHandler(m_IrcClient_OnDisconnect);
m_IrcClient.MessageReceived += new MessageReceivedHandler(client_MessageReceived);
m_IrcClient.ChannelUserDatabaseChanged += new ChannelUserDatabaseChangedHandler(client_ChannelUserDatabaseChanged);
Connect();
}
void m_IrcClient_OnConnect()
{
Console.WriteLine("Connected...");
}
private void Connect()
{
Console.WriteLine("Connecting to {0} port {1}",
hostname,
port);
m_IrcClient.Connect(hostname, port);
m_IrcClient.Register(botname, password, null);
Console.WriteLine("Registered as {0}...", botname);
JoinChannels();
while (!isStopped)
{
Thread.Sleep(1000);
}
PartChannels();
m_IrcClient.Diconnect();
}
void m_IrcClient_OnDisconnect()
{
Console.WriteLine("Disconnected...");
}
void m_IrcClient_OnConnectionLost()
{
//Dispose old connection
Disconnect();
//Sleep for 1 minute
Thread.Sleep(1000 * 60);
//Try to reconnect
Connect();
}
private void Disconnect()
{
try
{
m_IrcClient.Diconnect();
}
catch (Exception)
{
//
}
}
public void Stop()
{
isStopped = true;
}
private void JoinChannels()
{
foreach (string channelname in channelnames.Split(new char[] { ';' }))
{
IrcChannel channel = m_IrcClient.JoinChannel(channelname);
channels.Add(channel);
System.Console.WriteLine(String.Format("Joined channel #{0}...",
channel.Name));
}
}
private void PartChannels()
{
foreach (IrcChannel channel in channels)
{
m_IrcClient.PartChannel(channel, "Caught in the bitstream...");
System.Console.WriteLine(String.Format("Parted channel #{0}...",
channel.Name));
}
}
private string GetMessageSource(MessageContext context)
{
if (context is ChannelMessageContext)
{
ChannelMessageContext channelContext = context as ChannelMessageContext;
return String.Format("#{0}",
channelContext.Channel.Name);
}
else if (context is UserMessageContext)
{
UserMessageContext userContext = context as UserMessageContext;
return userContext.User.Nickname;
}
else
{
throw new InvalidOperationException(String.Format("Unhandled message context '{0}'",
context.GetType()));
}
}
private void ExtractMessage(string parameters,
out string message)
{
int startIndex = parameters.IndexOf(':');
if (startIndex != -1)
{
message = parameters.Substring(startIndex + 1);
}
else
{
message = parameters;
}
}
private bool GetChannelName(IrcMessage message,
out string channelName)
{
if (message.Parameters == null || !message.Parameters.StartsWith("#"))
{
channelName = null;
return false;
}
int index = message.Parameters.IndexOf(' ');
if (index == -1)
index = message.Parameters.Length;
else
index = index - 1;
channelName = message.Parameters.Substring(1, index);
return true;
}
private bool GetTargetNickname(IrcMessage message,
out string nickname)
{
if (message.Parameters == null)
{
nickname = null;
return false;
}
int index = message.Parameters.IndexOf(' ');
if (index == -1)
index = message.Parameters.Length;
nickname = message.Parameters.Substring(0, index);
Console.WriteLine("nickname: " + nickname);
return true;
}
private bool ShouldAcceptMessage(IrcMessage message,
out MessageContext context)
{
if (message.Command.ToUpper().Equals("PRIVMSG"))
{
string channelName;
string nickname;
if (GetChannelName(message,
out channelName))
{
foreach (IrcChannel channel in channels)
{
if (String.Compare(channel.Name, channelName, true) == 0)
{
context = new ChannelMessageContext(channel);
return true;
}
}
}
else if (GetTargetNickname(message,
out nickname))
{
IrcUser targetUser = new IrcUser(m_IrcClient,
nickname);
if (String.Compare(targetUser.Nickname, botname, true) == 0)
{
IrcUser sourceUser = new IrcUser(m_IrcClient,
message.PrefixNickname);
context = new UserMessageContext(sourceUser);
return true;
}
}
}
context = null;
return false;
}
private void client_MessageReceived(IrcMessage message)
{
try
{
if (message.Command != null &&
message.Parameters != null)
{
string injectMessage;
ExtractMessage(message.Parameters,
out injectMessage);
MessageContext context;
if (ShouldAcceptMessage(message,
out context))
{
Console.WriteLine(String.Format("Injecting: {0} from {1}",
injectMessage,
GetMessageSource(context)));
InjectMessage(context,
injectMessage);
}
else
{
Console.WriteLine("Received: " + message.Line);
}
}
else
{
Console.WriteLine("Received: " + message.Line);
}
}
catch (Exception ex)
{
Console.WriteLine(String.Format("Exception: {0}", ex));
}
}
private void client_ChannelUserDatabaseChanged(IrcChannel channel)
{
}
}
}

View File

@@ -1,122 +1,101 @@
using System;
using System.Collections;
using System.Collections.Generic;
using System.IO;
using System.Data;
using System.Threading;
using TechBot.IRCLibrary;
namespace TechBot.Library
{
public class TechBotService
{
private IServiceOutput serviceOutput;
private string chmPath;
private string mainChm;
private string ntstatusXml;
private string winerrorXml;
private string hresultXml;
private string wmXml;
private string svnCommand;
private string bugUrl, WineBugUrl, SambaBugUrl;
private List<Command> commands = new List<Command>();
public TechBotService(IServiceOutput serviceOutput,
string chmPath,
string mainChm)
//string ntstatusXml,
//string winerrorXml,
//string hresultXml,
//string wmXml,
//string svnCommand,
//string bugUrl,
//string WineBugUrl,
//string SambaBugUrl)
{
this.serviceOutput = serviceOutput;
this.chmPath = chmPath;
this.mainChm = mainChm;
this.ntstatusXml = ntstatusXml;
this.winerrorXml = winerrorXml;
this.hresultXml = hresultXml;
this.wmXml = wmXml;
this.svnCommand = svnCommand;
this.bugUrl = bugUrl;
this.WineBugUrl = WineBugUrl;
this.SambaBugUrl = SambaBugUrl;
}
public void Run()
{
commands.Add(new HelpCommand(this));
/*commands.Add(new ApiCommand(serviceOutput,
chmPath,
mainChm));*/
commands.Add(new NtStatusCommand(this));
commands.Add(new WinerrorCommand(this));
commands.Add(new HResultCommand(this));
commands.Add(new ErrorCommand(this));
commands.Add(new WMCommand(this));
commands.Add(new SvnCommand(this));
commands.Add(new ReactOSBugUrl(this));
commands.Add(new SambaBugUrl(this));
commands.Add(new WineBugUrl(this));
}
public IServiceOutput ServiceOutput
{
get { return serviceOutput; }
}
public IList<Command> Commands
{
get { return commands; }
}
public void InjectMessage(MessageContext context,
string message)
{
if (message.StartsWith("!"))
ParseCommandMessage(context,
message);
}
private bool IsCommandMessage(string message)
{
return message.StartsWith("!");
}
public void ParseCommandMessage(MessageContext context,
string message)
{
if (!IsCommandMessage(message))
return;
message = message.Substring(1).Trim();
int index = message.IndexOf(' ');
string commandName;
string commandParams = "";
if (index != -1)
{
commandName = message.Substring(0, index).Trim();
commandParams = message.Substring(index).Trim();
}
else
commandName = message.Trim();
foreach (Command command in commands)
{
foreach (string cmd in command.AvailableCommands)
{
if (cmd == commandName)
{
command.Handle(context,
commandName,
commandParams);
return;
}
}
}
}
}
}
using System;
using System.Collections;
using System.Collections.Generic;
using System.IO;
using System.Data;
using System.Threading;
using TechBot.IRCLibrary;
namespace TechBot.Library
{
public abstract class TechBotService
{
protected IServiceOutput m_ServiceOutput;
public TechBotService(IServiceOutput serviceOutput)
{
m_ServiceOutput = serviceOutput;
}
public virtual void Run()
{
CommandFactory.LoadPlugins();
}
public IServiceOutput ServiceOutput
{
get { return m_ServiceOutput; }
}
public CommandBuilderCollection Commands
{
get { return CommandFactory.Commands; }
}
public void InjectMessage(MessageContext context, string message)
{
ParseCommandMessage(context,
message);
}
private bool IsCommandMessage(string message)
{
return message.StartsWith(Settings.Default.CommandPrefix);
}
public void InjectMessage(string message)
{
ParseCommandMessage(null, message);
}
public void ParseCommandMessage(MessageContext context,
string message)
{
if (!IsCommandMessage(message))
return;
message = message.Substring(1).Trim();
int index = message.IndexOf(' ');
string commandName;
string commandParams = "";
if (index != -1)
{
commandName = message.Substring(0, index).Trim();
commandParams = message.Substring(index).Trim();
}
else
commandName = message.Trim();
foreach (CommandBuilder command in Commands)
{
if (command.Name == commandName)
{
//Create a new instance of the required command type
Command cmd = command.CreateCommand();
cmd.TechBot = this;
cmd.Context = context;
cmd.Parameters = commandParams;
try
{
cmd.Initialize();
cmd.Run();
cmd.DeInitialize();
}
catch (Exception e)
{
ServiceOutput.WriteLine(context, string.Format("Uops! Just crashed with exception '{0}' at {1}",
e.Message,
e.Source));
ServiceOutput.WriteLine(context, e.StackTrace);
}
return;
}
}
}
}
}

View File

@@ -1,29 +0,0 @@
using System;
using System.Collections.Generic;
using System.Text;
namespace TechBot.Library
{
class WineBugUrl : BugCommand
{
public WineBugUrl(TechBotService techBot)
: base(techBot)
{
}
public override string[] AvailableCommands
{
get { return new string[] { "winebug" }; }
}
protected override string BugUrl
{
get { return "http://bugs.winehq.org/show_bug.cgi?id={0}"; }
}
public override string Help()
{
return "!winebug <number>";
}
}
}

View File

@@ -1,82 +0,0 @@
using System;
using System.Xml;
namespace TechBot.Library
{
public class WinerrorCommand : XmlCommand
{
public WinerrorCommand(TechBotService techBot)
: base(techBot)
{
}
public override string XmlFile
{
get { return Settings.Default.WinErrorXml; }
}
public override string[] AvailableCommands
{
get { return new string[] { "winerror" }; }
}
public override void Handle(MessageContext context,
string commandName,
string parameters)
{
string winerrorText = parameters;
if (winerrorText.Equals(String.Empty))
{
TechBot.ServiceOutput.WriteLine(context,
"Please provide a valid System Error Code value.");
return;
}
NumberParser np = new NumberParser();
long winerror = np.Parse(winerrorText);
if (np.Error)
{
TechBot.ServiceOutput.WriteLine(context,
String.Format("{0} is not a valid System Error Code value.",
winerrorText));
return;
}
string description = GetWinerrorDescription(winerror);
if (description != null)
{
TechBot.ServiceOutput.WriteLine(context,
String.Format("{0} is {1}.",
winerrorText,
description));
}
else
{
TechBot.ServiceOutput.WriteLine(context,
String.Format("I don't know about System Error Code {0}.",
winerrorText));
}
}
public override string Help()
{
return "!winerror <value>";
}
public string GetWinerrorDescription(long winerror)
{
XmlElement root = base.m_XmlDocument.DocumentElement;
XmlNode node = root.SelectSingleNode(String.Format("Winerror[@value='{0}']",
winerror));
if (node != null)
{
XmlAttribute text = node.Attributes["text"];
if (text == null)
throw new Exception("Node has no text attribute.");
return text.Value;
}
else
return null;
}
}
}

View File

@@ -1,100 +0,0 @@
using System;
using System.Xml;
namespace TechBot.Library
{
public class WMCommand : XmlCommand
{
public WMCommand(TechBotService techBot)
: base(techBot)
{
}
public override string XmlFile
{
get { return Settings.Default.WMXml; }
}
public override string[] AvailableCommands
{
get { return new string[] { "wm" }; }
}
public override void Handle(MessageContext context,
string commandName,
string parameters)
{
string wmText = parameters;
if (wmText.Equals(String.Empty))
{
TechBot.ServiceOutput.WriteLine(context,
"Please provide a valid window message value or name.");
return;
}
NumberParser np = new NumberParser();
long wm = np.Parse(wmText);
string output;
if (np.Error)
{
// Assume "!wm <name>" form.
output = GetWmNumber(wmText);
}
else
{
output = GetWmDescription(wm);
}
if (output != null)
{
TechBot.ServiceOutput.WriteLine(context,
String.Format("{0} is {1}.",
wmText,
output));
}
else
{
TechBot.ServiceOutput.WriteLine(context,
String.Format("I don't know about window message {0}.",
wmText));
}
}
public override string Help()
{
return "!wm <value> or !wm <name>";
}
private string GetWmDescription(long wm)
{
XmlElement root = base.m_XmlDocument.DocumentElement;
XmlNode node = root.SelectSingleNode(String.Format("WindowMessage[@value='{0}']",
wm));
if (node != null)
{
XmlAttribute text = node.Attributes["text"];
if (text == null)
throw new Exception("Node has no text attribute.");
return text.Value;
}
else
return null;
}
private string GetWmNumber(string wmName)
{
XmlElement root = base.m_XmlDocument.DocumentElement;
XmlNode node = root.SelectSingleNode(String.Format("WindowMessage[@text='{0}']",
wmName));
if (node != null)
{
XmlAttribute value = node.Attributes["value"];
if (value == null)
throw new Exception("Node has no value attribute.");
return value.Value;
}
else
return null;
}
}
}

View File

@@ -22,6 +22,9 @@
<setting name="SVNRoot" serializeAs="String">
<value>svn://svn.reactos.org/trunk/reactos</value>
</setting>
<setting name="CommandPrefix" serializeAs="String">
<value>@</value>
</setting>
</TechBot.Library.Settings>
</applicationSettings>
</configuration>

View File

@@ -1,36 +0,0 @@
<Combine fileversion="1.0" name="TechBot" description="">
<StartMode startupentry="TechBot" single="True">
<Execute entry="TechBot" type="None" />
<Execute entry="TechBot.Library" type="None" />
<Execute entry="CHMLibrary" type="None" />
<Execute entry="Compression" type="None" />
<Execute entry="TechBot.Console" type="None" />
<Execute entry="TechBot.IRCLibrary" type="None" />
</StartMode>
<Entries>
<Entry filename=".\TechBot\TechBot.prjx" />
<Entry filename=".\TechBot.Library\TechBot.Library.prjx" />
<Entry filename=".\CHMLibrary\CHMLibrary.prjx" />
<Entry filename=".\Compression\Compression.prjx" />
<Entry filename=".\TechBot.Console\TechBot.Console.prjx" />
<Entry filename=".\TechBot.IRCLibrary\TechBot.IRCLibrary.prjx" />
</Entries>
<Configurations active="Debug">
<Configuration name="Release">
<Entry name="TechBot" configurationname="Debug" build="False" />
<Entry name="TechBot.Library" configurationname="Debug" build="False" />
<Entry name="CHMLibrary" configurationname="Debug" build="False" />
<Entry name="Compression" configurationname="Debug" build="False" />
<Entry name="TechBot.Console" configurationname="Debug" build="False" />
<Entry name="TechBot.IRCLibrary" configurationname="Debug" build="False" />
</Configuration>
<Configuration name="Debug">
<Entry name="TechBot" configurationname="Debug" build="False" />
<Entry name="TechBot.Library" configurationname="Debug" build="False" />
<Entry name="CHMLibrary" configurationname="Debug" build="False" />
<Entry name="Compression" configurationname="Debug" build="False" />
<Entry name="TechBot.Console" configurationname="Debug" build="False" />
<Entry name="TechBot.IRCLibrary" configurationname="Debug" build="False" />
</Configuration>
</Configurations>
</Combine>

View File

@@ -13,6 +13,12 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "TechBot.IRCLibrary", "TechB
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "TechBot.Library", "TechBot.Library\TechBot.Library.csproj", "{1114F34D-F388-4F38-AE27-C0EE1B10B777}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "TechBot.Commands.Common", "TechBot.Commands.Common\TechBot.Commands.Common.csproj", "{041B5F06-BF97-4981-B024-3A7B6DD9F6AE}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "TechBot.Commands.MSDN", "TechBot.Commands.MSDN\TechBot.Commands.MSDN.csproj", "{ADBF1ED6-A586-4707-BD59-4CD53448D0FE}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "TechBot.Commands.RBuild", "TechBot.Commands.RBuild\TechBot.Commands.RBuild.csproj", "{D676FEDE-62DD-4B4D-94C6-308598E827F9}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
@@ -43,6 +49,18 @@ Global
{1114F34D-F388-4F38-AE27-C0EE1B10B777}.Debug|Any CPU.Build.0 = Debug|Any CPU
{1114F34D-F388-4F38-AE27-C0EE1B10B777}.Release|Any CPU.ActiveCfg = Release|Any CPU
{1114F34D-F388-4F38-AE27-C0EE1B10B777}.Release|Any CPU.Build.0 = Release|Any CPU
{041B5F06-BF97-4981-B024-3A7B6DD9F6AE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{041B5F06-BF97-4981-B024-3A7B6DD9F6AE}.Debug|Any CPU.Build.0 = Debug|Any CPU
{041B5F06-BF97-4981-B024-3A7B6DD9F6AE}.Release|Any CPU.ActiveCfg = Release|Any CPU
{041B5F06-BF97-4981-B024-3A7B6DD9F6AE}.Release|Any CPU.Build.0 = Release|Any CPU
{ADBF1ED6-A586-4707-BD59-4CD53448D0FE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{ADBF1ED6-A586-4707-BD59-4CD53448D0FE}.Debug|Any CPU.Build.0 = Debug|Any CPU
{ADBF1ED6-A586-4707-BD59-4CD53448D0FE}.Release|Any CPU.ActiveCfg = Release|Any CPU
{ADBF1ED6-A586-4707-BD59-4CD53448D0FE}.Release|Any CPU.Build.0 = Release|Any CPU
{D676FEDE-62DD-4B4D-94C6-308598E827F9}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{D676FEDE-62DD-4B4D-94C6-308598E827F9}.Debug|Any CPU.Build.0 = Debug|Any CPU
{D676FEDE-62DD-4B4D-94C6-308598E827F9}.Release|Any CPU.ActiveCfg = Release|Any CPU
{D676FEDE-62DD-4B4D-94C6-308598E827F9}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE

View File

@@ -1,20 +1,44 @@
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<appSettings>
<add key="IRCServerHostName" value="irc.eu.freenode.net" />
<add key="IRCServerHostPort" value="6667" />
<add key="IRCChannelNames" value="channel1;channel2" />
<add key="IRCBotName" value="MyBot" />
<add key="IRCBotPassword" value="MyPassword" />
<add key="ChmPath" value="C:\IRC\TechBot\CHM" />
<add key="MainChm" value="kmarch.chm" />
<add key="NtstatusXml" value="C:\IRC\TechBot\ntstatus.xml" />
<add key="WinerrorXml" value="C:\IRC\TechBot\winerror.xml" />
<add key="HresultXml" value="C:\IRC\TechBot\hresult.xml" />
<add key="WmXml" value="C:\IRC\TechBot\wm.xml" />
<add key="SvnCommand" value="svn co svn://svn.reactos.org/trunk/reactos" />
<add key="BugUrl" value="http://www.reactos.org/bugzilla/show_bug.cgi?id={0}" />
<add key="WineBugUrl" value="http://bugs.winehq.org/show_bug.cgi?id={0}" />
<add key="SambaBugUrl" value="https://bugzilla.samba.org/show_bug.cgi?id={0}" />
</appSettings>
</configuration>
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<configSections>
<sectionGroup name="userSettings" type="System.Configuration.UserSettingsGroup, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" >
<section name="TechBot.Settings" type="System.Configuration.ClientSettingsSection, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" allowExeDefinition="MachineToLocalUser" requirePermission="false" />
</sectionGroup>
</configSections>
<appSettings>
<add key="IRCServerHostName" value="irc.eu.freenode.net" />
<add key="IRCServerHostPort" value="6667" />
<add key="IRCChannelNames" value="channel1;channel2" />
<add key="IRCBotName" value="MyBot" />
<add key="IRCBotPassword" value="MyPassword" />
<add key="ChmPath" value="C:\IRC\TechBot\CHM" />
<add key="MainChm" value="kmarch.chm" />
<add key="NtstatusXml" value="C:\IRC\TechBot\ntstatus.xml" />
<add key="WinerrorXml" value="C:\IRC\TechBot\winerror.xml" />
<add key="HresultXml" value="C:\IRC\TechBot\hresult.xml" />
<add key="WmXml" value="C:\IRC\TechBot\wm.xml" />
<add key="SvnCommand" value="svn co svn://svn.reactos.org/trunk/reactos" />
<add key="BugUrl" value="http://www.reactos.org/bugzilla/show_bug.cgi?id={0}" />
<add key="WineBugUrl" value="http://bugs.winehq.org/show_bug.cgi?id={0}" />
<add key="SambaBugUrl" value="https://bugzilla.samba.org/show_bug.cgi?id={0}" />
</appSettings>
<userSettings>
<TechBot.Settings>
<setting name="IRCServerHostName" serializeAs="String">
<value>irc.eu.freenode.net</value>
</setting>
<setting name="IRCChannelNames" serializeAs="String">
<value>rbuildbottest</value>
</setting>
<setting name="IRCBotName" serializeAs="String">
<value>RBuildBot</value>
</setting>
<setting name="IRCBotPassword" serializeAs="String">
<value>qwerty</value>
</setting>
<setting name="IRCServerHostPort" serializeAs="String">
<value>6667</value>
</setting>
</TechBot.Settings>
</userSettings>
</configuration>

View File

@@ -0,0 +1,28 @@
using System;
using System.ComponentModel;
using System.ServiceProcess;
using System.Configuration.Install;
using System.Collections.Generic;
using System.Text;
namespace TechBot
{
[RunInstaller(true)]
public class ProjectInstaller : Installer
{
public ProjectInstaller()
{
ServiceProcessInstaller spi = null;
ServiceInstaller si = null;
spi = new ServiceProcessInstaller();
spi.Account = ServiceAccount.LocalSystem;
si = new ServiceInstaller();
si.ServiceName = "TechBot";
si.StartType = ServiceStartMode.Automatic;
Installers.AddRange(new Installer[] { spi, si });
}
}
}

View File

@@ -1,84 +1,43 @@
using System;
using System.Configuration;
using System.Diagnostics;
using TechBot.Library;
namespace TechBot
{
public class ServiceThread
{
private string IRCServerHostName;
private int IRCServerHostPort;
private string IRCChannelNames;
private string IRCBotName;
private string IRCBotPassword;
private string ChmPath;
private string MainChm;
private string NtstatusXml;
private string HresultXml;
private string WmXml;
private string WinerrorXml;
private string SvnCommand;
private string BugUrl, WineBugUrl, SambaBugUrl;
private EventLog eventLog;
public ServiceThread(EventLog eventLog)
{
this.eventLog = eventLog;
}
private void SetupConfiguration()
{
IRCServerHostName = ConfigurationSettings.AppSettings["IRCServerHostName"];
IRCServerHostPort = Int32.Parse(ConfigurationSettings.AppSettings["IRCServerHostPort"]);
IRCChannelNames = ConfigurationSettings.AppSettings["IRCChannelNames"];
IRCBotName = ConfigurationSettings.AppSettings["IRCBotName"];
IRCBotPassword = ConfigurationSettings.AppSettings["IRCBotPassword"];
ChmPath = ConfigurationSettings.AppSettings["ChmPath"];
MainChm = ConfigurationSettings.AppSettings["MainChm"];
NtstatusXml = ConfigurationSettings.AppSettings["NtstatusXml"];
HresultXml = ConfigurationSettings.AppSettings["HresultXml"];
WmXml = ConfigurationSettings.AppSettings["WmXml"];
WinerrorXml = ConfigurationSettings.AppSettings["WinerrorXml"];
SvnCommand = ConfigurationSettings.AppSettings["SvnCommand"];
BugUrl = ConfigurationSettings.AppSettings["BugUrl"];
WineBugUrl = ConfigurationSettings.AppSettings["WineBugUrl"];
SambaBugUrl = ConfigurationSettings.AppSettings["SambaBugUrl"];
}
public void Run()
{
SetupConfiguration();
System.Console.WriteLine("TechBot irc service...");
IrcService ircService = new IrcService(IRCServerHostName,
IRCServerHostPort,
IRCChannelNames,
IRCBotName,
IRCBotPassword,
ChmPath,
MainChm,
//NtstatusXml,
//WinerrorXml,
//HresultXml,
//WmXml,
//SvnCommand,
BugUrl,
WineBugUrl,
SambaBugUrl);
ircService.Run();
}
public void Start()
{
try
{
Run();
}
catch (Exception ex)
{
eventLog.WriteEntry(String.Format("Ex. {0}", ex));
}
}
}
}
using System;
using System.Configuration;
using System.Diagnostics;
using TechBot.Library;
namespace TechBot
{
public class ServiceThread
{
private EventLog m_EventLog;
public ServiceThread(EventLog eventLog)
{
m_EventLog = eventLog;
}
public void Run()
{
System.Console.WriteLine("TechBot irc service...");
IrcTechBotService ircService = new IrcTechBotService(
Settings.Default.IRCServerHostName,
Settings.Default.IRCServerHostPort,
Settings.Default.IRCChannelNames,
Settings.Default.IRCBotName,
Settings.Default.IRCBotPassword);
ircService.Run();
}
public void Start()
{
try
{
Run();
}
catch (Exception ex)
{
m_EventLog.WriteEntry(String.Format("Ex. {0}", ex));
}
}
}
}

86
irc/TechBot/TechBot/Settings.Designer.cs generated Normal file
View File

@@ -0,0 +1,86 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:2.0.50727.1433
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
namespace TechBot {
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "8.0.0.0")]
internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase {
private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings())));
public static Settings Default {
get {
return defaultInstance;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("irc.eu.freenode.net")]
public string IRCServerHostName {
get {
return ((string)(this["IRCServerHostName"]));
}
set {
this["IRCServerHostName"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("rbuildbottest")]
public string IRCChannelNames {
get {
return ((string)(this["IRCChannelNames"]));
}
set {
this["IRCChannelNames"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("RBuildBot")]
public string IRCBotName {
get {
return ((string)(this["IRCBotName"]));
}
set {
this["IRCBotName"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("qwerty")]
public string IRCBotPassword {
get {
return ((string)(this["IRCBotPassword"]));
}
set {
this["IRCBotPassword"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("6667")]
public int IRCServerHostPort {
get {
return ((int)(this["IRCServerHostPort"]));
}
set {
this["IRCServerHostPort"] = value;
}
}
}
}

View File

@@ -0,0 +1,21 @@
<?xml version='1.0' encoding='utf-8'?>
<SettingsFile xmlns="http://schemas.microsoft.com/VisualStudio/2004/01/settings" CurrentProfile="(Default)" GeneratedClassNamespace="TechBot" GeneratedClassName="Settings">
<Profiles />
<Settings>
<Setting Name="IRCServerHostName" Type="System.String" Scope="User">
<Value Profile="(Default)">irc.eu.freenode.net</Value>
</Setting>
<Setting Name="IRCChannelNames" Type="System.String" Scope="User">
<Value Profile="(Default)">rbuildbottest</Value>
</Setting>
<Setting Name="IRCBotName" Type="System.String" Scope="User">
<Value Profile="(Default)">RBuildBot</Value>
</Setting>
<Setting Name="IRCBotPassword" Type="System.String" Scope="User">
<Value Profile="(Default)">qwerty</Value>
</Setting>
<Setting Name="IRCServerHostPort" Type="System.Int32" Scope="User">
<Value Profile="(Default)">6667</Value>
</Setting>
</Settings>
</SettingsFile>

View File

@@ -39,10 +39,22 @@
-->
<ItemGroup>
<None Include="App.config" />
<None Include="Settings.settings">
<Generator>SettingsSingleFileGenerator</Generator>
<LastGenOutput>Settings.Designer.cs</LastGenOutput>
</None>
</ItemGroup>
<ItemGroup>
<Compile Include="AssemblyInfo.cs" />
<Compile Include="ProjectInstaller.cs">
<SubType>Component</SubType>
</Compile>
<Compile Include="ServiceThread.cs" />
<Compile Include="Settings.Designer.cs">
<DependentUpon>Settings.settings</DependentUpon>
<AutoGen>True</AutoGen>
<DesignTimeSharedInput>True</DesignTimeSharedInput>
</Compile>
<Compile Include="TechBotService.cs">
<SubType>Component</SubType>
</Compile>
@@ -52,6 +64,7 @@
<Reference Include="System.Configuration.Install" />
<Reference Include="System.Data" />
<Reference Include="System.ServiceProcess" />
<Reference Include="System.Xml" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\TechBot.IRCLibrary\TechBot.IRCLibrary.csproj">

View File

@@ -9,7 +9,7 @@ using System.Configuration.Install;
namespace TechBot
{
public class TechBotService : System.ServiceProcess.ServiceBase
public class TechBotService : ServiceBase
{
private Thread thread;
private ServiceThread threadWorker;
@@ -80,18 +80,3 @@ namespace TechBot
}
}
}
[RunInstaller(true)]
public class ProjectInstaller : Installer
{
public ProjectInstaller()
{
ServiceProcessInstaller spi = new ServiceProcessInstaller();
spi.Account = ServiceAccount.LocalSystem;
ServiceInstaller si = new ServiceInstaller();
si.ServiceName = "TechBot";
si.StartType = ServiceStartMode.Automatic;
Installers.AddRange(new Installer[] {spi, si});
}
}

View File

@@ -29,11 +29,12 @@ Hartmut Birr <hartmut.birr@gmx.de>
Hernan Ochoa
Herve Poussineau <hpoussin@reactos.com>
Iwan Fatahi <i_fatahi@hotmail.com>
James B. Tabor <jimtabor@adsl-64-217-116-74.dsl.hstntx.swbell.net>
James B. Tabor <jimtabor.rosdev@gmail.com> <jimtabor@adsl-64-217-116-74.dsl.hstntx.swbell.net>
Jason Eager
Jason Filby <jasonfilby@yahoo.com>
Jason Weiler
Jean Michault
Jeffrey Morlan <mrnobo1024@yahoo.com>
Jim Noeth
Johannes Anderwald <johannes.anderwald@student.tugraz.at>
Jonathan Wilson <jonwil@tpgi.com.au>
@@ -59,6 +60,7 @@ Robert Bergkvist <fragdance@hotmail.com>
Robert Dickenson <robd@reactos.org>
Royce Mitchell III <royce3@ev1.net>
Saveliy Tretiakov <saveliyt@mail.ru>
Stefan Ginsberg <stefan__100__@hotmail.com>
Steven Edwards <steven_ed4153@yahoo.com>
Thomas Weidenmueller <w3seek@users.sourceforge.net>
Timo Kreuzer <timo.kreuzer@reactos.org>

View File

@@ -126,6 +126,9 @@
# ROS_AUTOMAKE
# Alternate name of makefile.auto
#
# ROS_BUILDENGINE
# The Build engine to be used. The variable defaults to rbuild (RBUILD_TARGET)
#
# check for versions of make that don't have features we need...
# the function "eval" is only available in 3.80+, which happens to be the minimum
@@ -386,7 +389,6 @@ BUILDNO_H = $(INTERMEDIATE_)include$(SEP)reactos$(SEP)buildno.h
include lib/lib.mak
include tools/tools.mak
include boot/freeldr/bootsect/bootsect.mak
-include $(ROS_AUTOMAKE)
PREAUTO := \
@@ -395,14 +397,19 @@ PREAUTO := \
$(BUILDNO_H) \
$(GENDIB_DIB_FILES) \
$(NCI_SERVICE_FILES)
ifeq ($(ARCH),powerpc)
PREAUTO += $(OFW_INTERFACE_SERVICE_FILES) $(PPCMMU_TARGETS)
endif
$(ROS_AUTOMAKE): $(RBUILD_TARGET) $(XMLBUILDFILES) | $(PREAUTO)
ifeq ($(ROS_BUILDENGINE),)
ROS_BUILDENGINE=$(RBUILD_TARGET)
endif
$(ROS_AUTOMAKE): $(ROS_BUILDENGINE) $(XMLBUILDFILES) | $(PREAUTO)
${mkdir} $(OUTPUT_)media$(SEP)inf 2>$(NUL)
$(ECHO_RBUILD)
$(Q)$(RBUILD_TARGET) $(RBUILD_FLAGS) $(ROS_RBUILDFLAGS) mingw
$(Q)$(ROS_BUILDENGINE) $(RBUILD_FLAGS) $(ROS_RBUILDFLAGS) mingw
world: all bootcd livecd
@@ -435,143 +442,143 @@ rgenstat: $(RGENSTAT_TARGET)
$(Q)$(RGENSTAT_TARGET) apistatus.lst apistatus.xml
.PHONY: cb
cb: $(RBUILD_TARGET)
cb: $(ROS_BUILDENGINE)
$(ECHO_RBUILD)
$(Q)$(RBUILD_TARGET) $(RBUILD_FLAGS) $(ROS_RBUILDFLAGS) cb
$(Q)$(ROS_BUILDENGINE) $(RBUILD_FLAGS) $(ROS_RBUILDFLAGS) cb
.PHONY: msbuild
msbuild: $(RBUILD_TARGET)
msbuild: $(ROS_BUILDENGINE)
$(ECHO_RBUILD)
$(Q)$(RBUILD_TARGET) $(RBUILD_FLAGS) $(ROS_RBUILDFLAGS) msbuild
$(Q)$(ROS_BUILDENGINE) $(RBUILD_FLAGS) $(ROS_RBUILDFLAGS) msbuild
.PHONY: msbuild_clean
msbuild_clean: $(RBUILD_TARGET)
msbuild_clean: $(ROS_BUILDENGINE)
$(ECHO_RBUILD)
$(Q)$(RBUILD_TARGET) $(RBUILD_FLAGS) $(ROS_RBUILDFLAGS) -c msbuild
$(Q)$(ROS_BUILDENGINE) $(RBUILD_FLAGS) $(ROS_RBUILDFLAGS) -c msbuild
.PHONY: depmap
depmap: $(RBUILD_TARGET)
depmap: $(ROS_BUILDENGINE)
$(ECHO_RBUILD)
$(Q)$(RBUILD_TARGET) $(RBUILD_FLAGS) $(ROS_RBUILDFLAGS) depmap
$(Q)$(ROS_BUILDENGINE) $(RBUILD_FLAGS) $(ROS_RBUILDFLAGS) depmap
.PHONY: vreport
vreport:$(RBUILD_TARGET)
vreport:$(ROS_BUILDENGINE)
$(ECHO_RBUILD)
$(Q)$(RBUILD_TARGET) $(RBUILD_FLAGS) $(ROS_RBUILDFLAGS) vreport
$(Q)$(ROS_BUILDENGINE) $(RBUILD_FLAGS) $(ROS_RBUILDFLAGS) vreport
.PHONY: msvc
msvc: $(RBUILD_TARGET)
msvc: $(ROS_BUILDENGINE)
$(ECHO_RBUILD)
$(Q)$(RBUILD_TARGET) $(RBUILD_FLAGS) $(ROS_RBUILDFLAGS) msvc
$(Q)$(ROS_BUILDENGINE) $(RBUILD_FLAGS) $(ROS_RBUILDFLAGS) msvc
.PHONY: msvc6
msvc6: $(RBUILD_TARGET)
msvc6: $(ROS_BUILDENGINE)
$(ECHO_RBUILD)
$(Q)$(RBUILD_TARGET) $(RBUILD_FLAGS) $(ROS_RBUILDFLAGS) -vs6.00 -voversionconfiguration msvc
$(Q)$(ROS_BUILDENGINE) $(RBUILD_FLAGS) $(ROS_RBUILDFLAGS) -vs6.00 -voversionconfiguration msvc
.PHONY: msvc7
msvc7: $(RBUILD_TARGET)
msvc7: $(ROS_BUILDENGINE)
$(ECHO_RBUILD)
$(Q)$(RBUILD_TARGET) $(RBUILD_FLAGS) $(ROS_RBUILDFLAGS) -vs7.00 -voversionconfiguration msvc
$(Q)$(ROS_BUILDENGINE) $(RBUILD_FLAGS) $(ROS_RBUILDFLAGS) -vs7.00 -voversionconfiguration msvc
.PHONY: msvc71
msvc71: $(RBUILD_TARGET)
msvc71: $(ROS_BUILDENGINE)
$(ECHO_RBUILD)
$(Q)$(RBUILD_TARGET) $(RBUILD_FLAGS) $(ROS_RBUILDFLAGS) -vs7.10 -voversionconfiguration msvc
$(Q)$(ROS_BUILDENGINE) $(RBUILD_FLAGS) $(ROS_RBUILDFLAGS) -vs7.10 -voversionconfiguration msvc
.PHONY: msvc8
msvc8: $(RBUILD_TARGET)
msvc8: $(ROS_BUILDENGINE)
$(ECHO_RBUILD)
$(Q)$(RBUILD_TARGET) $(RBUILD_FLAGS) $(ROS_RBUILDFLAGS) -vs8.00 -voversionconfiguration msvc
$(Q)$(ROS_BUILDENGINE) $(RBUILD_FLAGS) $(ROS_RBUILDFLAGS) -vs8.00 -voversionconfiguration msvc
.PHONY: msvc9
msvc9: $(RBUILD_TARGET)
msvc9: $(ROS_BUILDENGINE)
$(ECHO_RBUILD)
$(Q)$(RBUILD_TARGET) $(RBUILD_FLAGS) $(ROS_RBUILDFLAGS) -vs9.00 -voversionconfiguration msvc
$(Q)$(ROS_BUILDENGINE) $(RBUILD_FLAGS) $(ROS_RBUILDFLAGS) -vs9.00 -voversionconfiguration msvc
.PHONY: msvc6_clean
msvc6_clean: $(RBUILD_TARGET)
msvc6_clean: $(ROS_BUILDENGINE)
$(ECHO_RBUILD)
$(Q)$(RBUILD_TARGET) $(RBUILD_FLAGS) $(ROS_RBUILDFLAGS) -c -vs6.00 -voversionconfiguration msvc
$(Q)$(ROS_BUILDENGINE) $(RBUILD_FLAGS) $(ROS_RBUILDFLAGS) -c -vs6.00 -voversionconfiguration msvc
.PHONY: msvc7_clean
msvc7_clean: $(RBUILD_TARGET)
msvc7_clean: $(ROS_BUILDENGINE)
$(ECHO_RBUILD)
$(Q)$(RBUILD_TARGET) $(RBUILD_FLAGS) $(ROS_RBUILDFLAGS) -c -vs7.00 -voversionconfiguration msvc
$(Q)$(ROS_BUILDENGINE) $(RBUILD_FLAGS) $(ROS_RBUILDFLAGS) -c -vs7.00 -voversionconfiguration msvc
.PHONY: msvc71_clean
msvc71_clean: $(RBUILD_TARGET)
msvc71_clean: $(ROS_BUILDENGINE)
$(ECHO_RBUILD)
$(Q)$(RBUILD_TARGET) $(RBUILD_FLAGS) $(ROS_RBUILDFLAGS) -c -vs7.10 -voversionconfiguration msvc
$(Q)$(ROS_BUILDENGINE) $(RBUILD_FLAGS) $(ROS_RBUILDFLAGS) -c -vs7.10 -voversionconfiguration msvc
.PHONY: msvc8_clean
msvc8_clean: $(RBUILD_TARGET)
msvc8_clean: $(ROS_BUILDENGINE)
$(ECHO_RBUILD)
$(Q)$(RBUILD_TARGET) $(RBUILD_FLAGS) $(ROS_RBUILDFLAGS) -c -vs8.00 -voversionconfiguration msvc
$(Q)$(ROS_BUILDENGINE) $(RBUILD_FLAGS) $(ROS_RBUILDFLAGS) -c -vs8.00 -voversionconfiguration msvc
.PHONY: msvc9_clean
msvc9_clean: $(RBUILD_TARGET)
msvc9_clean: $(ROS_BUILDENGINE)
$(ECHO_RBUILD)
$(Q)$(RBUILD_TARGET) $(RBUILD_FLAGS) $(ROS_RBUILDFLAGS) -c -vs9.00 -voversionconfiguration msvc
$(Q)$(ROS_BUILDENGINE) $(RBUILD_FLAGS) $(ROS_RBUILDFLAGS) -c -vs9.00 -voversionconfiguration msvc
.PHONY: msvc_clean
msvc_clean: $(RBUILD_TARGET)
msvc_clean: $(ROS_BUILDENGINE)
$(ECHO_RBUILD)
$(Q)$(RBUILD_TARGET) $(RBUILD_FLAGS) $(ROS_RBUILDFLAGS) -c msvc
$(Q)$(ROS_BUILDENGINE) $(RBUILD_FLAGS) $(ROS_RBUILDFLAGS) -c msvc
.PHONY: msvc_clean_all
msvc_clean_all: $(RBUILD_TARGET)
msvc_clean_all: $(ROS_BUILDENGINE)
$(ECHO_RBUILD)
$(Q)$(RBUILD_TARGET) $(RBUILD_FLAGS) $(ROS_RBUILDFLAGS) -c -vs6.00 -voversionconfiguration msvc
$(Q)$(RBUILD_TARGET) $(RBUILD_FLAGS) $(ROS_RBUILDFLAGS) -c -vs7.00 -voversionconfiguration msvc
$(Q)$(RBUILD_TARGET) $(RBUILD_FLAGS) $(ROS_RBUILDFLAGS) -c -vs7.10 -voversionconfiguration msvc
$(Q)$(RBUILD_TARGET) $(RBUILD_FLAGS) $(ROS_RBUILDFLAGS) -c -vs8.10 -voversionconfiguration msvc
$(Q)$(ROS_BUILDENGINE) $(RBUILD_FLAGS) $(ROS_RBUILDFLAGS) -c -vs6.00 -voversionconfiguration msvc
$(Q)$(ROS_BUILDENGINE) $(RBUILD_FLAGS) $(ROS_RBUILDFLAGS) -c -vs7.00 -voversionconfiguration msvc
$(Q)$(ROS_BUILDENGINE) $(RBUILD_FLAGS) $(ROS_RBUILDFLAGS) -c -vs7.10 -voversionconfiguration msvc
$(Q)$(ROS_BUILDENGINE) $(RBUILD_FLAGS) $(ROS_RBUILDFLAGS) -c -vs8.10 -voversionconfiguration msvc
.PHONY: msvc7_install_debug
msvc7_install_debug: $(RBUILD_TARGET)
msvc7_install_debug: $(ROS_BUILDENGINE)
$(ECHO_RBUILD)
$(Q)$(RBUILD_TARGET) $(RBUILD_FLAGS) $(ROS_RBUILDFLAGS) -vs7.00 -vcdebug -voversionconfiguration msvc
$(Q)$(ROS_BUILDENGINE) $(RBUILD_FLAGS) $(ROS_RBUILDFLAGS) -vs7.00 -vcdebug -voversionconfiguration msvc
.PHONY: msvc7_install_release
msvc7_install_release: $(RBUILD_TARGET)
msvc7_install_release: $(ROS_BUILDENGINE)
$(ECHO_RBUILD)
$(Q)$(RBUILD_TARGET) $(RBUILD_FLAGS) $(ROS_RBUILDFLAGS) -vs7.00 -vcrelease -voversionconfiguration msvc
$(Q)$(ROS_BUILDENGINE) $(RBUILD_FLAGS) $(ROS_RBUILDFLAGS) -vs7.00 -vcrelease -voversionconfiguration msvc
.PHONY: msvc7_install_speed
msvc7_install_speed: $(RBUILD_TARGET)
msvc7_install_speed: $(ROS_BUILDENGINE)
$(ECHO_RBUILD)
$(Q)$(RBUILD_TARGET) $(RBUILD_FLAGS) $(ROS_RBUILDFLAGS) -vs7.00 -vcspeed -voversionconfiguration msvc
$(Q)$(ROS_BUILDENGINE) $(RBUILD_FLAGS) $(ROS_RBUILDFLAGS) -vs7.00 -vcspeed -voversionconfiguration msvc
.PHONY: msvc71_install_debug
msvc71_install_debug: $(RBUILD_TARGET)
msvc71_install_debug: $(ROS_BUILDENGINE)
$(ECHO_RBUILD)
$(Q)$(RBUILD_TARGET) $(RBUILD_FLAGS) $(ROS_RBUILDFLAGS) -vs7.10 -vcdebug -voversionconfiguration msvc
$(Q)$(ROS_BUILDENGINE) $(RBUILD_FLAGS) $(ROS_RBUILDFLAGS) -vs7.10 -vcdebug -voversionconfiguration msvc
.PHONY: msvc71_install_release
msvc71_install_release: $(RBUILD_TARGET)
msvc71_install_release: $(ROS_BUILDENGINE)
$(ECHO_RBUILD)
$(Q)$(RBUILD_TARGET) $(RBUILD_FLAGS) $(ROS_RBUILDFLAGS) -vs7.10 -vcrelease -voversionconfiguration msvc
$(Q)$(ROS_BUILDENGINE) $(RBUILD_FLAGS) $(ROS_RBUILDFLAGS) -vs7.10 -vcrelease -voversionconfiguration msvc
.PHONY: msvc71_install_speed
msvc71_install_speed: $(RBUILD_TARGET)
msvc71_install_speed: $(ROS_BUILDENGINE)
$(ECHO_RBUILD)
$(Q)$(RBUILD_TARGET) $(RBUILD_FLAGS) $(ROS_RBUILDFLAGS) -vs7.10 -vcspeed -voversionconfiguration msvc
$(Q)$(ROS_BUILDENGINE) $(RBUILD_FLAGS) $(ROS_RBUILDFLAGS) -vs7.10 -vcspeed -voversionconfiguration msvc
.PHONY: msvc8_install_debug
msvc8_install_debug: $(RBUILD_TARGET)
msvc8_install_debug: $(ROS_BUILDENGINE)
$(ECHO_RBUILD)
$(Q)$(RBUILD_TARGET) $(RBUILD_FLAGS) $(ROS_RBUILDFLAGS) -vs8.00 -vcdebug -voversionconfiguration msvc
$(Q)$(ROS_BUILDENGINE) $(RBUILD_FLAGS) $(ROS_RBUILDFLAGS) -vs8.00 -vcdebug -voversionconfiguration msvc
.PHONY: msvc8_install_release
msvc8_install_release: $(RBUILD_TARGET)
msvc8_install_release: $(ROS_BUILDENGINE)
$(ECHO_RBUILD)
$(Q)$(RBUILD_TARGET) $(RBUILD_FLAGS) $(ROS_RBUILDFLAGS) -vs8.00 -vcrelease -voversionconfiguration msvc
$(Q)$(ROS_BUILDENGINE) $(RBUILD_FLAGS) $(ROS_RBUILDFLAGS) -vs8.00 -vcrelease -voversionconfiguration msvc
.PHONY: msvc8_install_speed
msvc8_install_speed: $(RBUILD_TARGET)
msvc8_install_speed: $(ROS_BUILDENGINE)
$(ECHO_RBUILD)
$(Q)$(RBUILD_TARGET) $(RBUILD_FLAGS) $(ROS_RBUILDFLAGS) -vs8.00 -vcspeed -voversionconfiguration msvc
$(Q)$(ROS_BUILDENGINE) $(RBUILD_FLAGS) $(ROS_RBUILDFLAGS) -vs8.00 -vcspeed -voversionconfiguration msvc
.PHONY: makefile_auto_clean
makefile_auto_clean:
@@ -581,6 +588,6 @@ makefile_auto_clean:
clean: makefile_auto_clean
.PHONY: depends
depends: $(RBUILD_TARGET)
depends: $(ROS_BUILDENGINE)
$(ECHO_RBUILD)
$(Q)$(RBUILD_TARGET) $(RBUILD_FLAGS) $(ROS_RBUILDFLAGS) mingw
$(Q)$(ROS_BUILDENGINE) $(RBUILD_FLAGS) $(ROS_RBUILDFLAGS) mingw

View File

@@ -7,14 +7,47 @@
</xi:fallback>
</xi:include>
<xi:include href="ReactOS-generic.rbuild" />
<xi:include href="baseaddress.rbuild" />
<define name="__REACTOS__" />
<define name="_ARM_" />
<define name="__arm__" />
<if property="DBG" value="1">
<define name="DBG">1</define>
<define name="_SEH_ENABLE_TRACE" />
<property name="DBG_OR_KDBG" value="true" />
</if>
<if property="KDBG" value="1">
<define name="KDBG">1</define>
<property name="DBG_OR_KDBG" value="true" />
</if>
<include>.</include>
<include>include</include>
<include root="intermediate">include</include>
<include>include/psdk</include>
<include root="intermediate">include/psdk</include>
<include>include/dxsdk</include>
<include root="intermediate">include/dxsdk</include>
<include>include/crt</include>
<include>include/crt/mingw32</include>
<include>include/ddk</include>
<include>include/GL</include>
<include>include/ndk</include>
<include>include/reactos</include>
<include root="intermediate">include/reactos</include>
<include root="intermediate">include/reactos/mc</include>
<include>include/reactos/libs</include>
<include>include/reactos/arm</include>
<property name="WINEBUILD_FLAGS" value="--kill-at"/>
<property name="NTOSKRNL_SHARED" value="-Wl,--file-alignment,0x1000 -Wl,--section-alignment,0x1000 -nostartfiles -shared"/>
<if property="SARCH" value="versatile">
<define name="BOARD_CONFIG_VERSATILE"/>
</if>
<if property="OPTIMIZE" value="1">
<compilerflag>-Os</compilerflag>
<compilerflag>-ftracer</compilerflag>
@@ -37,4 +70,124 @@
<linkerflag>-s</linkerflag>
<linkerflag>-lgcc</linkerflag>
<linkerflag>-static</linkerflag>
<directory name="media">
<directory name="nls">
<xi:include href="media/nls/nls.rbuild" />
</directory>
</directory>
<directory name="lib">
<directory name="drivers">
<directory name="csq">
<xi:include href="lib/drivers/csq/csq.rbuild" />
</directory>
</directory>
<directory name="debugsup">
<xi:include href="lib/debugsup/debugsup.rbuild" />
</directory>
<directory name="3rdparty">
<directory name="zlib">
<xi:include href="lib/3rdparty/zlib/zlib.rbuild" />
</directory>
</directory>
<directory name="rtl">
<xi:include href="lib/rtl/rtl.rbuild" />
</directory>
<directory name="host">
<directory name="wcsfuncs">
<xi:include href="lib/host/wcsfuncs/wcsfuncs.rbuild" />
</directory>
</directory>
<directory name="inflib">
<xi:include href="lib/inflib/inflib.rbuild" />
</directory>
<directory name="cmlib">
<xi:include href="lib/cmlib/cmlib.rbuild" />
</directory>
<directory name="pseh">
<xi:include href="lib/pseh/pseh.rbuild" />
</directory>
<directory name="rossym">
<xi:include href="lib/rossym/rossym.rbuild" />
</directory>
<directory name="sdk">
<directory name="crt">
<xi:include href="lib/sdk/crt/crt.rbuild" />
<xi:include href="lib/sdk/crt/libcntpr.rbuild" />
</directory>
<directory name="wdmguid">
<xi:include href="lib/sdk/wdmguid/wdmguid.rbuild" />
</directory>
</directory>
</directory>
<directory name="include">
<xi:include href="include/directory.rbuild" />
</directory>
<directory name="tools">
<xi:include href="tools/tools.rbuild" />
</directory>
<directory name="ntoskrnl">
<xi:include href="ntoskrnl/ntoskrnl.rbuild" />
</directory>
<directory name="hal">
<directory name="halarm">
<directory name="generic">
<xi:include href="hal/halarm/generic/generic.rbuild" />
</directory>
<directory name="up">
<xi:include href="hal/halarm/up/halup.rbuild" />
</directory>
</directory>
<directory name="hal">
<xi:include href="hal/hal/hal.rbuild" />
</directory>
</directory>
<directory name="boot">
<xi:include href="boot/boot.rbuild" />
</directory>
<directory name="drivers">
<directory name="storage">
<directory name="scsiport">
<xi:include href="drivers/storage/scsiport/scsiport.rbuild" />
</directory>
<directory name="port">
<directory name="buslogic">
<xi:include href="drivers/storage/port/buslogic/buslogic.rbuild" />
</directory>
</directory>
<directory name="ide">
<directory name="atapi">
<xi:include href="drivers/storage/ide/atapi/atapi.rbuild" />
</directory>
</directory>
<directory name="class">
<directory name="class2">
<xi:include href="drivers/storage/class/class2/class2.rbuild" />
</directory>
<directory name="disk">
<xi:include href="drivers/storage/class/disk/disk.rbuild" />
</directory>
</directory>
</directory>
<directory name="filesystems">
<directory name="fastfat">
<xi:include href="drivers/filesystems/fastfat/vfatfs.rbuild" />
</directory>
</directory>
<directory name="network">
<directory name="ndis">
<xi:include href="drivers/network/ndis/ndis.rbuild" />
</directory>
</directory>
<directory name="base">
<directory name="kdcom">
<xi:include href="drivers/base/kdcom/kdcom.rbuild" />
</directory>
<directory name="bootvid">
<xi:include href="drivers/base/bootvid/bootvid.rbuild" />
</directory>
</directory>
</directory>
</project>

View File

@@ -3,7 +3,7 @@
<group xmlns:xi="http://www.w3.org/2001/XInclude">
<xi:include href="baseaddress.rbuild" />
<define name="__REACTOS__" overridable="true" />
<define name="__REACTOS__" />
<if property="DBG" value="1">
<define name="DBG">1</define>
<define name="_SEH_ENABLE_TRACE" />
@@ -28,6 +28,7 @@
<include>include/ndk</include>
<include>include/reactos</include>
<include root="intermediate">include/reactos</include>
<include root="intermediate">include/reactos/mc</include>
<include>include/reactos/libs</include>
<directory name="base">
@@ -57,6 +58,9 @@
<directory name="modules">
<xi:include href="modules/directory.rbuild" />
</directory>
<!--<directory name="nls">
<xi:include href="nls/nls.rbuild" />
</directory>-->
<directory name="ntoskrnl">
<xi:include href="ntoskrnl/ntoskrnl.rbuild" />
<!-- <xi:include href="ntoskrnl/ntkrnlmp.rbuild" /> -->

View File

@@ -25,6 +25,11 @@
<directory name="hh">
<xi:include href="hh/hh.rbuild" />
</directory>
<!--
<directory name="iexplore">
<xi:include href="iexplore/iexplore.rbuild" />
</directory>
-->
<directory name="kbswitch">
<xi:include href="kbswitch/kbswitch.rbuild" />
</directory>
@@ -49,6 +54,9 @@
<directory name="regedit">
<xi:include href="regedit/regedit.rbuild" />
</directory>
<directory name="regedt32">
<xi:include href="regedt32/regedt32.rbuild" />
</directory>
<directory name="sc">
<xi:include href="sc/sc.rbuild" />
</directory>
@@ -64,8 +72,8 @@
<directory name="taskmgr">
<xi:include href="taskmgr/taskmgr.rbuild" />
</directory>
<directory name="winhelp">
<xi:include href="winhelp/winhelp.rbuild" />
<directory name="winhlp32">
<xi:include href="winhlp32/winhlp32.rbuild" />
</directory>
<directory name="wordpad">
<xi:include href="wordpad/wordpad.rbuild" />

View File

@@ -10,7 +10,7 @@
#include "lang/fr-FR.rc"
#include "lang/id-ID.rc"
#include "lang/it-IT.rc"
#include "lang/ko-KO.rc"
#include "lang/ko-KR.rc"
#include "lang/nb-NO.rc"
#include "lang/nl-NL.rc"
#include "lang/pl-PL.rc"

View File

@@ -31,6 +31,12 @@
#define IDC_STATIC ((DWORD)-1)
#endif
#ifdef UNICODE
#define CF_TCHAR CF_UNICODETEXT
#else
#define CF_TCHAR CF_TEXT
#endif
#define CALC_VERSION TEXT("1.06")
/*#define USE_KEYBOARD_HOOK*/
@@ -137,8 +143,8 @@ typedef struct {
DWORD degr;
DWORD action;
HWND hStatWnd;
char *Clipboard;
char *ClipPtr;
TCHAR *Clipboard;
TCHAR *ClipPtr;
unsigned int last_operator;
unsigned int prev_operator;
TCHAR sDecimal[8];

View File

@@ -1,17 +1,16 @@
<?xml version="1.0"?>
<!DOCTYPE module SYSTEM "../../../tools/rbuild/project.dtd">
<module name="calc" type="win32gui" installbase="system32" installname="calc.exe">
<module name="calc" type="win32gui" installbase="system32" installname="calc.exe" allowwarnings="true" unicode="yes">
<include base="calc">.</include>
<define name="_WIN32_IE">0x0501</define>
<define name="WINVER">0x0501</define>
<define name="UNICODE" />
<define name="_UNICODE" />
<library>kernel32</library>
<define name="_WIN32_WINNT">0x0501</define>
<library>user32</library>
<library>gdi32</library>
<library>comctl32</library>
<file>dialog.c</file>
<file>stats.c</file>
<file>winecalc.c</file>
<file>rsrc.rc</file>
<library>kernel32</library>
<file>about.c</file>
<file>function.c</file>
<file>rpn.c</file>
<file>utl.c</file>
<file>winmain.c</file>
<file>resource.rc</file>
</module>

View File

@@ -1,94 +0,0 @@
/*
* WineCalc (dialog.c)
*
* Copyright 2003 James Briggs
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
#include <windows.h>
#include <tchar.h>
#include "dialog.h"
#include "resource.h"
#include "winecalc.h"
extern HINSTANCE hInstance;
BOOL CALLBACK AboutDlgProc( HWND hDlg, UINT uMsg, WPARAM wParam, LPARAM lParam )
{
HDC hdc;
PAINTSTRUCT ps;
switch( uMsg ) {
case WM_INITDIALOG:
SendMessage (hDlg, WM_SETFONT, (UINT)GetStockObject(DEFAULT_GUI_FONT), TRUE);
return TRUE;
case WM_COMMAND:
switch(LOWORD(wParam)) {
case IDOK:
EndDialog( hDlg, 0 );
return TRUE;
}
break;
case WM_PAINT:
{
HDC hMemDC;
HFONT hFont;
HFONT hFontOrg;
TCHAR c1[CALC_BUF_SIZE];
TCHAR c2[CALC_BUF_SIZE];
TCHAR c3[CALC_BUF_SIZE];
TCHAR c4[CALC_BUF_SIZE];
TCHAR c5[CALC_BUF_SIZE];
hdc = BeginPaint( hDlg, &ps );
hMemDC = CreateCompatibleDC( hdc );
LoadString( hInstance, IDS_COPYRIGHT1, c1, sizeof(c1) / sizeof(c1[0]));
LoadString( hInstance, IDS_COPYRIGHT2, c2, sizeof(c2) / sizeof(c2[0]));
LoadString( hInstance, IDS_COPYRIGHT3, c3, sizeof(c3) / sizeof(c3[0]));
LoadString( hInstance, IDS_COPYRIGHT4, c4, sizeof(c4) / sizeof(c4[0]));
LoadString( hInstance, IDS_COPYRIGHT5, c5, sizeof(c5) / sizeof(c5[0]));
hFont = GetStockObject(DEFAULT_GUI_FONT);
hFontOrg = SelectObject(hdc, hFont);
SetBkMode(hdc, TRANSPARENT);
TextOut(hdc, 10, 10, c1, (INT) _tcslen(c1));
TextOut(hdc, 10, 35, c2, (INT) _tcslen(c2));
TextOut(hdc, 10, 50, c3, (INT) _tcslen(c3));
TextOut(hdc, 10, 75, c4, (INT) _tcslen(c4));
TextOut(hdc, 10, 90, c5, (INT) _tcslen(c5));
SelectObject(hdc, hFontOrg);
DeleteDC( hMemDC );
EndPaint( hDlg, &ps );
return 0;
}
case WM_CLOSE:
EndDialog( hDlg, TRUE );
return 0;
}
return FALSE;
}

View File

@@ -1,151 +1,365 @@
#include "winecalc.h"
LANGUAGE LANG_BULGARIAN, SUBLANG_DEFAULT
STRINGTABLE DISCARDABLE
// Dialog
IDD_DIALOG_SCIENTIFIC DIALOGEX 0, 0, 316, 161
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
MENU IDR_MENU_SCIENTIFIC_1
FONT 8, "MS Shell Dlg", 0, 0, 0x1
BEGIN
IDS_APPNAME, "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
IDS_COPYRIGHT1, "Calculator 5.0. Licensed under LGPL 2"
IDS_COPYRIGHT2 "Copyright 2003, James Briggs"
IDS_COPYRIGHT3 "San Jose, California, USA"
IDS_COPYRIGHT4 "james@ActionMessage.com"
IDS_COPYRIGHT5 "http://www.ActionMessage.com/winecalc/"
IDS_BTN_BACKSPACE, "<-"
IDS_BTN_CLEAR_ENTRY, "CE"
IDS_BTN_CLEAR_ALL, "C"
IDS_BTN_MEM_CLEAR, "MC"
IDS_BTN_MEM_RECALL, "MR"
IDS_BTN_MEM_STORE, "MS"
IDS_BTN_MEM_PLUS, "M+"
IDS_BTN_MEM_STATUS_M, "M"
IDS_BTN_SQRT, "<22><><EFBFBD><EFBFBD><EFBFBD> 2"
IDS_BTN_DEGREES, "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
IDS_BTN_RADIANS, "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
IDS_BTN_GRADS, "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
IDS_BTN_SHRT_HEX "<22><><EFBFBD><EFBFBD>"
IDS_BTN_SHRT_DEC "<22><><EFBFBD><EFBFBD>"
IDS_BTN_SHRT_OCT "<22><><EFBFBD>"
IDS_BTN_SHRT_BIN "<22><><EFBFBD><EFBFBD><EFBFBD>."
IDS_ERR_INVALID_INPUT, "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>."
IDS_ERR_DIVIDE_BY_ZERO, "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>."
IDS_ERR_UNDEFINED, "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>."
GROUPBOX "",IDC_STATIC,4,16,132,21
CONTROL "<22><><EFBFBD><EFBFBD>",IDC_RADIO_HEX,"Button",BS_AUTORADIOBUTTON,8,24,29,
10
CONTROL "<22><><EFBFBD><EFBFBD>",IDC_RADIO_DEC,"Button",BS_AUTORADIOBUTTON,40,24,29,
10
CONTROL "<22><><EFBFBD>",IDC_RADIO_OCT,"Button",BS_AUTORADIOBUTTON,72,24,27,
10
CONTROL "<22><><EFBFBD><EFBFBD><EFBFBD>",IDC_RADIO_BIN,"Button",BS_AUTORADIOBUTTON,100,24,
26,10
GROUPBOX "",IDC_STATIC,4,36,76,21
CONTROL "<22><><EFBFBD>",IDC_CHECK_INV,"Button",BS_AUTOCHECKBOX |
WS_TABSTOP,8,44,26,10
CONTROL "<22><><EFBFBD>",IDC_CHECK_HYP,"Button",BS_AUTOCHECKBOX |
WS_TABSTOP,40,44,29,10
CTEXT "",IDC_TEXT_PARENT,84,40,24,17,SS_CENTERIMAGE,
WS_EX_CLIENTEDGE
CTEXT "",IDC_TEXT_MEMORY,112,40,24,17,SS_CENTERIMAGE,
WS_EX_CLIENTEDGE
PUSHBUTTON "<22><><EFBFBD><EFBFBD>",IDC_BUTTON_STA,4,64,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "<22><><EFBFBD><EFBFBD>",IDC_BUTTON_AVE,4,83,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | WS_DISABLED | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "<22><><EFBFBD><EFBFBD>",IDC_BUTTON_SUM,4,102,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | WS_DISABLED | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "s",IDC_BUTTON_S,4,121,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | WS_DISABLED | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Dat",IDC_BUTTON_DAT,4,140,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | WS_DISABLED | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "F-E",IDC_BUTTON_FE,38,64,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "<22><><EFBFBD>",IDC_BUTTON_DMS,38,83,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "<22><><EFBFBD>",IDC_BUTTON_SIN,38,102,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "<22><><EFBFBD>",IDC_BUTTON_COS,38,121,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "<22><><EFBFBD>",IDC_BUTTON_TAN,38,140,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "(",IDC_BUTTON_LEFTPAR,64,64,24,17,BS_CENTER |
BS_VCENTER | BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "<22><><EFBFBD><EFBFBD>",IDC_BUTTON_EXP,64,83,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "x^y",IDC_BUTTON_XeY,64,102,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "x^2",IDC_BUTTON_Xe2,64,121,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "x^3",IDC_BUTTON_Xe3,64,140,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON ")",IDC_BUTTON_RIGHTPAR,90,64,24,17,BS_CENTER |
BS_VCENTER | BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "ln",IDC_BUTTON_LN,90,83,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "log",IDC_BUTTON_LOG,90,102,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "n!",IDC_BUTTON_NF,90,121,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "1/x",IDC_BUTTON_RX,90,140,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "MC",IDC_BUTTON_MC,124,64,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "MR",IDC_BUTTON_MR,124,83,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "MS",IDC_BUTTON_MS,124,102,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "M+",IDC_BUTTON_MP,124,121,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "<22><>",IDC_BUTTON_PI,124,140,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "7",IDC_BUTTON_7,158,64,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "4",IDC_BUTTON_4,158,83,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "1",IDC_BUTTON_1,158,102,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "0",IDC_BUTTON_0,158,121,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "A",IDC_BUTTON_A,158,140,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "8",IDC_BUTTON_8,184,64,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "5",IDC_BUTTON_5,184,83,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "2",IDC_BUTTON_2,184,102,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "+/-",IDC_BUTTON_SIGN,184,121,24,17,BS_CENTER |
BS_VCENTER | BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "B",IDC_BUTTON_B,184,140,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "9",IDC_BUTTON_9,210,64,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "6",IDC_BUTTON_6,210,83,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "3",IDC_BUTTON_3,210,102,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON ",",IDC_BUTTON_DOT,210,121,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "C",IDC_BUTTON_C,210,140,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "/",IDC_BUTTON_DIV,236,64,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "*",IDC_BUTTON_MULT,236,83,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "-",IDC_BUTTON_SUB,236,102,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "+",IDC_BUTTON_ADD,236,121,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "D",IDC_BUTTON_D,236,140,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "<22><><EFBFBD>",IDC_BUTTON_MOD,262,64,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "<22><><EFBFBD>",IDC_BUTTON_OR,262,83,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "<22><><EFBFBD><EFBFBD>",IDC_BUTTON_LSH,262,102,24,17,BS_CENTER |
BS_VCENTER | BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "=",IDC_BUTTON_EQU,262,121,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "E",IDC_BUTTON_E,262,140,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "<22>",IDC_BUTTON_AND,288,64,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "<22><><EFBFBD><EFBFBD>",IDC_BUTTON_XOR,288,83,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "<22><>",IDC_BUTTON_NOT,288,102,24,17,BS_CENTER |
BS_VCENTER | BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "<22><><EFBFBD>",IDC_BUTTON_INT,288,121,24,17,BS_CENTER |
BS_VCENTER | BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "<22><><EFBFBD><EFBFBD>",IDC_BUTTON_F,288,140,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
GROUPBOX "",IDC_STATIC,140,16,172,21
CONTROL "Qword",IDC_RADIO_QWORD,"Button",BS_AUTORADIOBUTTON |
NOT WS_VISIBLE,148,24,37,10
CONTROL "Dword",IDC_RADIO_DWORD,"Button",BS_AUTORADIOBUTTON |
NOT WS_VISIBLE,188,24,37,10
CONTROL "Word",IDC_RADIO_WORD,"Button",BS_AUTORADIOBUTTON | NOT
WS_VISIBLE,232,24,33,10
CONTROL "<22><><EFBFBD><EFBFBD>",IDC_RADIO_BYTE,"Button",BS_AUTORADIOBUTTON | NOT
WS_VISIBLE,272,24,30,10
CONTROL "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>",IDC_RADIO_DEG,"Button",BS_AUTORADIOBUTTON,148,24,
42,10
CONTROL "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>",IDC_RADIO_RAD,"Button",BS_AUTORADIOBUTTON,192,
24,42,10
CONTROL "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>",IDC_RADIO_GRAD,"Button",BS_AUTORADIOBUTTON,
236,24,44,10
PUSHBUTTON "C",IDC_BUTTON_CANC,272,40,40,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "CE",IDC_BUTTON_CE,228,40,40,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "<22><><EFBFBD><EFBFBD><EFBFBD>",IDC_BUTTON_BACK,184,40,40,17,BS_CENTER |
BS_VCENTER | BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
RTEXT "",IDC_TEXT_OUTPUT,4,4,308,12,SS_CENTERIMAGE,
WS_EX_CLIENTEDGE
DEFPUSHBUTTON "",IDC_BUTTON_FOCUS,0,0,5,5, NOT WS_VISIBLE
END
MAIN_MENU MENU DISCARDABLE
IDD_DIALOG_STANDARD DIALOGEX 0, 0, 172, 127
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
MENU IDR_MENU_STANDARD
FONT 8, "MS Shell Dlg", 0, 0, 0x1
BEGIN
POPUP "&<26><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
BEGIN
MENUITEM "&<26><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> Ctrl+C", IDM_COPY
MENUITEM "&<26><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> Ctrl+V", IDM_PASTE
END
POPUP "&<26><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
BEGIN
MENUITEM "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>", IDM_MODE_STANDARD
MENUITEM "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>", IDM_MODE_SCIENTIFIC
MENUITEM SEPARATOR
MENUITEM "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>", IDM_DIGIT_GROUPING
END
POPUP "&<26><><EFBFBD><EFBFBD><EFBFBD>"
BEGIN
MENUITEM "<22><><EFBFBD><EFBFBD><EFBFBD>", IDM_HELP_TOPICS
MENUITEM SEPARATOR
MENUITEM "<22><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>", IDM_ABOUT
END
PUSHBUTTON "C",IDC_BUTTON_CANC,128,24,40,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "CE",IDC_BUTTON_CE,84,24,40,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "<22><><EFBFBD><EFBFBD><EFBFBD>",IDC_BUTTON_BACK,40,24,40,17,BS_CENTER |
BS_VCENTER | BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
RTEXT "",IDC_TEXT_OUTPUT,4,4,164,12,SS_CENTERIMAGE,
WS_EX_CLIENTEDGE
PUSHBUTTON "7",IDC_BUTTON_7,40,48,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "4",IDC_BUTTON_4,40,67,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "1",IDC_BUTTON_1,40,86,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "0",IDC_BUTTON_0,40,105,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "8",IDC_BUTTON_8,66,48,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "5",IDC_BUTTON_5,66,67,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "2",IDC_BUTTON_2,66,86,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "+/-",IDC_BUTTON_SIGN,66,105,24,17,BS_CENTER |
BS_VCENTER | BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "9",IDC_BUTTON_9,92,48,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "6",IDC_BUTTON_6,92,67,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "3",IDC_BUTTON_3,92,86,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON ",",IDC_BUTTON_DOT,92,105,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "/",IDC_BUTTON_DIV,118,48,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "*",IDC_BUTTON_MULT,118,67,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "-",IDC_BUTTON_SUB,118,86,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "+",IDC_BUTTON_ADD,118,105,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Sqrt",IDC_BUTTON_SQRT,144,48,24,17,BS_CENTER |
BS_VCENTER | BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "%",IDC_BUTTON_PERCENT,144,67,24,17,BS_CENTER |
BS_VCENTER | BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "1/x",IDC_BUTTON_RX,144,86,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "=",IDC_BUTTON_EQU,144,105,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
CTEXT "",IDC_TEXT_MEMORY,4,24,24,17,SS_CENTERIMAGE,
WS_EX_CLIENTEDGE
PUSHBUTTON "MC",IDC_BUTTON_MC,4,48,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "MR",IDC_BUTTON_MR,4,67,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "MS",IDC_BUTTON_MS,4,86,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "M+",IDC_BUTTON_MP,4,105,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
DEFPUSHBUTTON "",IDC_BUTTON_FOCUS,0,0,5,5, NOT WS_VISIBLE
END
SCIMS_MENU MENU DISCARDABLE
BEGIN
POPUP "&<26><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
BEGIN
MENUITEM "&<26><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> Ctrl+C", IDM_COPY
MENUITEM "&<26><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> Ctrl+V", IDM_PASTE
END
POPUP "&<26><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
BEGIN
MENUITEM "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>", IDM_MODE_STANDARD
MENUITEM "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>", IDM_MODE_SCIENTIFIC
MENUITEM SEPARATOR
MENUITEM "<22><><EFBFBD><EFBFBD><EFBFBD>a<EFBFBD><61><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\tF5", ID_CALC_NS_HEX
MENUITEM "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\tF6", ID_CALC_NS_DEC
MENUITEM "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\tF7", ID_CALC_NS_OCT
MENUITEM "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\tF8", ID_CALC_NS_BIN
MENUITEM SEPARATOR
MENUITEM "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\tF2", ID_CALC_MS_DEGREES
MENUITEM "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\tF3", ID_CALC_MS_RADIANS
MENUITEM "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\tF4", ID_CALC_MS_GRADS
MENUITEM SEPARATOR
MENUITEM "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>", IDM_DIGIT_GROUPING
END
POPUP "&<26><><EFBFBD><EFBFBD><EFBFBD>"
BEGIN
MENUITEM "<22><><EFBFBD><EFBFBD><EFBFBD>", IDM_HELP_TOPICS
MENUITEM SEPARATOR
MENUITEM "<22><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>", IDM_ABOUT
END
END
SCIWS_MENU MENU DISCARDABLE
BEGIN
POPUP "&<26><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
BEGIN
MENUITEM "&<26><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> Ctrl+C", IDM_COPY
MENUITEM "&<26><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> Ctrl+V", IDM_PASTE
END
POPUP "&<26><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
BEGIN
MENUITEM "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>", IDM_MODE_STANDARD
MENUITEM "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>", IDM_MODE_SCIENTIFIC
MENUITEM SEPARATOR
MENUITEM "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\tF5", ID_CALC_NS_HEX
MENUITEM "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\tF6", ID_CALC_NS_DEC
MENUITEM "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\tF7", ID_CALC_NS_OCT
MENUITEM "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\tF8", ID_CALC_NS_BIN
MENUITEM SEPARATOR
MENUITEM "<22><><EFBFBD><EFBFBD><EFBFBD>\tF12", ID_CALC_WS_QWORD
MENUITEM "<22><><EFBFBD><EFBFBD><EFBFBD>\tF2", ID_CALC_WS_DWORD
MENUITEM "<22><><EFBFBD><EFBFBD>\tF3", ID_CALC_WS_WORD
MENUITEM "<22><><EFBFBD><EFBFBD>\tF4", ID_CALC_WS_BYTE
MENUITEM SEPARATOR
MENUITEM "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>", IDM_DIGIT_GROUPING
END
POPUP "&<26><><EFBFBD><EFBFBD><EFBFBD>"
BEGIN
MENUITEM "<22><><EFBFBD><EFBFBD><EFBFBD>", IDM_HELP_TOPICS
MENUITEM SEPARATOR
MENUITEM "<22><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>", IDM_ABOUT
END
END
MAIN_MENU ACCELERATORS
BEGIN
VK_F1, IDV_HELP, VIRTKEY
END
DLG_ABOUT DIALOGEX 12,0,175,90
CAPTION "<22><> GNU winecalc"
IDD_DIALOG_ABOUT DIALOGEX DISCARDABLE 0, 0, 264, 169
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "<22><> ReactOS Calc"
FONT 8, "MS Shell Dlg"
STYLE DS_MODALFRAME | DS_SHELLFONT | WS_POPUP | WS_CAPTION | WS_SYSMENU
BEGIN
DEFPUSHBUTTON "<22><><EFBFBD><EFBFBD><EFBFBD>", IDOK, 73, 70, 30, 14, WS_CHILD | WS_VISIBLE | WS_TABSTOP
DEFPUSHBUTTON "<22><><EFBFBD><EFBFBD><EFBFBD>",IDOK,105,148,52,16
CONTROL 106,IDC_STATIC,"Static",SS_BITMAP | SS_CENTERIMAGE |
SS_REALSIZEIMAGE | WS_BORDER,4,4,104,48
LTEXT "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>",IDC_STATIC,120,12,132,8,
SS_CENTERIMAGE
LTEXT "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>:",IDC_TEXT_VERSION,120,20,132,8,SS_CENTERIMAGE
LTEXT "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> Carlo Bramini",IDC_STATIC,120,32,132,8,
SS_CENTERIMAGE
GROUPBOX "",IDC_STATIC,112,0,148,52
GROUPBOX "",IDC_STATIC,4,56,256,88
EDITTEXT IDC_EDIT_LICENSE,12,68,240,68,ES_MULTILINE | ES_READONLY |
WS_VSCROLL
END
WHATS_THIS_MENU MENU DISCARDABLE
BEGIN
POPUP ""
BEGIN
MENUITEM "<22><><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD>?", IDM_WHATS_THIS
END
END
DLG_STATS DIALOGEX 12,0,145,85
CAPTION "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
IDD_DIALOG_STAT DIALOGEX DISCARDABLE 0, 0, 163, 85
STYLE DS_SHELLFONT | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>"
FONT 8, "MS Shell Dlg"
STYLE DS_MODALFRAME | DS_SHELLFONT | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE
BEGIN
DEFPUSHBUTTON "&RET", ID_STATS_RET, 4, 52, 30, 13, WS_TABSTOP | WS_GROUP
PUSHBUTTON "&LOAD", ID_STATS_LOAD, 39, 52, 30, 13, WS_TABSTOP | WS_GROUP
PUSHBUTTON "&CD" ID_STATS_CD, 74, 52, 30, 13, WS_TABSTOP | WS_GROUP
PUSHBUTTON "C&AD", ID_STATS_CAD, 109, 52, 30, 13, WS_TABSTOP | WS_GROUP
LISTBOX IDC_LIST_STAT,4,4,156,40,LBS_NOINTEGRALHEIGHT |
WS_VSCROLL | WS_TABSTOP
PUSHBUTTON "RET",IDC_BUTTON_RET,4,48,36,16
PUSHBUTTON "LOAD",IDC_BUTTON_LOAD,44,48,36,16
PUSHBUTTON "CD",IDC_BUTTON_CD,84,48,36,16
PUSHBUTTON "CAD",IDC_BUTTON_CAD,124,48,36,16
CTEXT "n=0",IDC_TEXT_NITEMS,4,68,156,12,SS_CENTERIMAGE |
SS_SUNKEN
END
// Menus
IDR_MENU_SCIENTIFIC_1 MENU DISCARDABLE
BEGIN
POPUP "&<26><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
BEGIN
MENUITEM "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\tCTRL-C", IDM_EDIT_COPY
MENUITEM "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\tCTRL-V", IDM_EDIT_PASTE
END
POPUP "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
BEGIN
MENUITEM "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>", IDM_VIEW_STANDARD, CHECKED
MENUITEM "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>", IDM_VIEW_SCIENTIFIC, CHECKED
MENUITEM "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>", IDM_VIEW_CONVERSION
MENUITEM SEPARATOR
MENUITEM "<22><><EFBFBD><EFBFBD><EFBFBD>a<EFBFBD><61><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\tF5", IDM_VIEW_HEX, CHECKED
MENUITEM "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\tF6", IDM_VIEW_DEC, CHECKED
MENUITEM "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\tF7", IDM_VIEW_OCT, CHECKED
MENUITEM "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\tF8", IDM_VIEW_BIN, CHECKED
MENUITEM SEPARATOR
MENUITEM "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\tF2", IDM_VIEW_DEG, CHECKED
MENUITEM "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\tF3", IDM_VIEW_RAD, CHECKED
MENUITEM "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\tF4", IDM_VIEW_GRAD, CHECKED
MENUITEM SEPARATOR
MENUITEM "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>", IDM_VIEW_GROUP, CHECKED
END
POPUP "<22><><EFBFBD><EFBFBD><EFBFBD>"
BEGIN
MENUITEM "<22><><EFBFBD><EFBFBD><EFBFBD>", IDM_HELP_HELP
MENUITEM SEPARATOR
MENUITEM "<22><> ReactOS Calc", IDM_HELP_ABOUT
END
END
IDR_MENU_SCIENTIFIC_2 MENU DISCARDABLE
BEGIN
POPUP "&<26><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
BEGIN
MENUITEM "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\tCTRL-C", IDM_EDIT_COPY
MENUITEM "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\tCTRL-V", IDM_EDIT_PASTE
END
POPUP "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
BEGIN
MENUITEM "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>", IDM_VIEW_STANDARD, CHECKED
MENUITEM "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>", IDM_VIEW_SCIENTIFIC, CHECKED
MENUITEM "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>", IDM_VIEW_CONVERSION
MENUITEM SEPARATOR
MENUITEM "<22><><EFBFBD><EFBFBD><EFBFBD>a<EFBFBD><61><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\tF5", IDM_VIEW_HEX, CHECKED
MENUITEM "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\tF6", IDM_VIEW_DEC, CHECKED
MENUITEM "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\tF7", IDM_VIEW_OCT, CHECKED
MENUITEM "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\tF8", IDM_VIEW_BIN, CHECKED
MENUITEM SEPARATOR
MENUITEM "<22><><EFBFBD><EFBFBD><EFBFBD>\tF12", IDM_VIEW_QWORD, CHECKED
MENUITEM "<22><><EFBFBD><EFBFBD><EFBFBD>\tF2", IDM_VIEW_DWORD, CHECKED
MENUITEM "<22><><EFBFBD><EFBFBD>\tF3", IDM_VIEW_WORD, CHECKED
MENUITEM "<22><><EFBFBD><EFBFBD>\tF4", IDM_VIEW_BYTE, CHECKED
MENUITEM SEPARATOR
MENUITEM "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>", IDM_VIEW_GROUP, CHECKED
END
POPUP "<22><><EFBFBD><EFBFBD><EFBFBD>"
BEGIN
MENUITEM "<22><><EFBFBD><EFBFBD><EFBFBD>", IDM_HELP_HELP
MENUITEM SEPARATOR
MENUITEM "<22><> ReactOS Calc", IDM_HELP_ABOUT
END
END
IDR_MENU_STANDARD MENU DISCARDABLE
BEGIN
POPUP "&<26><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
BEGIN
MENUITEM "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\tCTRL-C", IDM_EDIT_COPY
MENUITEM "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\tCTRL-V", IDM_EDIT_PASTE
END
POPUP "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
BEGIN
MENUITEM "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>", IDM_VIEW_STANDARD, CHECKED
MENUITEM "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>", IDM_VIEW_SCIENTIFIC, CHECKED
MENUITEM "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>", IDM_VIEW_CONVERSION
MENUITEM SEPARATOR
MENUITEM "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>", IDM_VIEW_GROUP, CHECKED
END
POPUP "<22><><EFBFBD><EFBFBD><EFBFBD>"
BEGIN
MENUITEM "<22><><EFBFBD><EFBFBD><EFBFBD>", IDM_HELP_HELP
MENUITEM SEPARATOR
MENUITEM "<22><> ReactOS Calc", IDM_HELP_ABOUT
END
END
// String Tables
STRINGTABLE DISCARDABLE
BEGIN
IDS_STRING_LICENSE "ReactOS Calc is free software released under GNU GPL license.\r\n\r\nYou can get a copy of GNU GPL license here:\r\nhttp://www.gnu.org/licenses/gpl.html\r\n\r\nYou can also get a translation of GNU GPL license here:\r\nhttp://www.gnu.org/licenses/translations.html"
IDS_MATH_ERROR "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
IDS_QUICKHELP "<22><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>"
END

View File

@@ -1,172 +0,0 @@
/*
* WineCalc (En.rc)
*
* Copyright 2003 James Briggs
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
#include "windows.h"
#include "resource.h"
#include "winecalc.h"
LANGUAGE LANG_CATALAN, SUBLANG_DEFAULT
STRINGTABLE DISCARDABLE
BEGIN
IDS_APPNAME, "Calculadora"
IDS_COPYRIGHT1, "Calculadora 5.0. Sota llicenia LGPL 2"
IDS_COPYRIGHT2 "Copyright 2003, James Briggs"
IDS_COPYRIGHT3 "San Jose, California, USA"
IDS_COPYRIGHT4 "james@ActionMessage.com"
IDS_COPYRIGHT5 "http://www.ActionMessage.com/winecalc/"
IDS_BTN_BACKSPACE, "Retroc<6F>s"
IDS_BTN_CLEAR_ENTRY, "CE"
IDS_BTN_CLEAR_ALL, "C"
IDS_BTN_MEM_CLEAR, "MC"
IDS_BTN_MEM_RECALL, "MR"
IDS_BTN_MEM_STORE, "MS"
IDS_BTN_MEM_PLUS, "M+"
IDS_BTN_MEM_STATUS_M, "M"
IDS_BTN_SQRT, "sqrt"
IDS_BTN_DEGREES, "Sexagesimal"
IDS_BTN_RADIANS, "Radiant"
IDS_BTN_GRADS, "Graus"
IDS_BTN_SHRT_HEX "Hex"
IDS_BTN_SHRT_DEC "Dec"
IDS_BTN_SHRT_OCT "Oct"
IDS_BTN_SHRT_BIN "Bin"
IDS_ERR_INVALID_INPUT, "Entrada inv<6E>lida per la funci<63>."
IDS_ERR_DIVIDE_BY_ZERO, "No puc dividir per zero."
IDS_ERR_UNDEFINED, "El resultat de la funci<63> <20>s indefinit."
END
MAIN_MENU MENU DISCARDABLE
BEGIN
POPUP "&Edita"
BEGIN
MENUITEM "&Copia Ctrl+C", IDM_COPY
MENUITEM "E&nganxa Ctrl+V", IDM_PASTE
END
POPUP "&Vista"
BEGIN
MENUITEM "Estandard", IDM_MODE_STANDARD
MENUITEM "Cient<6E>fica", IDM_MODE_SCIENTIFIC
MENUITEM SEPARATOR
MENUITEM "Agrupaci<63> de d<>gits", IDM_DIGIT_GROUPING
END
POPUP "&Ajuda"
BEGIN
MENUITEM "Temes d'ajuda", IDM_HELP_TOPICS
MENUITEM SEPARATOR
MENUITEM "En quant a la Calculadora", IDM_ABOUT
END
END
SCIMS_MENU MENU DISCARDABLE
BEGIN
POPUP "&Edita"
BEGIN
MENUITEM "&Copia Ctrl+C", IDM_COPY
MENUITEM "E&ngancxa Ctrl+V", IDM_PASTE
END
POPUP "&Vista"
BEGIN
MENUITEM "Estandard", IDM_MODE_STANDARD
MENUITEM "Cient<6E>fica", IDM_MODE_SCIENTIFIC
MENUITEM SEPARATOR
MENUITEM "Hexadecimal\tF5", ID_CALC_NS_HEX
MENUITEM "Decimal\tF6", ID_CALC_NS_DEC
MENUITEM "Octal\tF7", ID_CALC_NS_OCT
MENUITEM "Bin<69>ria\tF8", ID_CALC_NS_BIN
MENUITEM SEPARATOR
MENUITEM "Sexagesimal\tF2", ID_CALC_MS_DEGREES
MENUITEM "Radiants\tF3", ID_CALC_MS_RADIANS
MENUITEM "Graus\tF4", ID_CALC_MS_GRADS
MENUITEM SEPARATOR
MENUITEM "Agrupaci<63> de digits", IDM_DIGIT_GROUPING
END
POPUP "&Ajuda"
BEGIN
MENUITEM "Temes d'ajuda", IDM_HELP_TOPICS
MENUITEM SEPARATOR
MENUITEM "En quant a la Calculadora", IDM_ABOUT
END
END
SCIWS_MENU MENU DISCARDABLE
BEGIN
POPUP "&Edita"
BEGIN
MENUITEM "&Copia Ctrl+C", IDM_COPY
MENUITEM "E&nganxa Ctrl+V", IDM_PASTE
END
POPUP "&Vista"
BEGIN
MENUITEM "Estandard", IDM_MODE_STANDARD
MENUITEM "Cientifica", IDM_MODE_SCIENTIFIC
MENUITEM SEPARATOR
MENUITEM "Hexadecimal\tF5", ID_CALC_NS_HEX
MENUITEM "Decimal\tF6", ID_CALC_NS_DEC
MENUITEM "Octal\tF7", ID_CALC_NS_OCT
MENUITEM "Bin<69>ria\tF8", ID_CALC_NS_BIN
MENUITEM SEPARATOR
MENUITEM "Qword\tF12", ID_CALC_WS_QWORD
MENUITEM "Dword\tF2", ID_CALC_WS_DWORD
MENUITEM "Word\tF3", ID_CALC_WS_WORD
MENUITEM "Byte\tF4", ID_CALC_WS_BYTE
MENUITEM SEPARATOR
MENUITEM "Agrupaci<63> de digits", IDM_DIGIT_GROUPING
END
POPUP "&Ajuda"
BEGIN
MENUITEM "Temes d'ajuda", IDM_HELP_TOPICS
MENUITEM SEPARATOR
MENUITEM "En quant a la Calculadora", IDM_ABOUT
END
END
MAIN_MENU ACCELERATORS
BEGIN
VK_F1, IDV_HELP, VIRTKEY
END
DLG_ABOUT DIALOGEX 12,0,175,90
CAPTION "En quant a GNU winecalc"
FONT 8, "MS Shell Dlg"
STYLE DS_MODALFRAME | DS_SHELLFONT | WS_POPUP | WS_CAPTION | WS_SYSMENU
BEGIN
DEFPUSHBUTTON "Acceptar", IDOK, 73, 70, 30, 14, WS_CHILD | WS_VISIBLE | WS_TABSTOP
END
WHATS_THIS_MENU MENU DISCARDABLE
BEGIN
POPUP "" BEGIN
MENUITEM "Qu<51> es aix<69>?", IDM_WHATS_THIS
END
END
DLG_STATS DIALOGEX 12,0,145,85
CAPTION "Cuadre Estad<61>stic"
FONT 8, "MS Shell Dlg"
STYLE DS_MODALFRAME | DS_SHELLFONT | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE
BEGIN
DEFPUSHBUTTON "&RET", ID_STATS_RET, 4, 52, 30, 13, WS_TABSTOP | WS_GROUP
PUSHBUTTON "&LOAD", ID_STATS_LOAD, 39, 52, 30, 13, WS_TABSTOP | WS_GROUP
PUSHBUTTON "&CD" ID_STATS_CD, 74, 52, 30, 13, WS_TABSTOP | WS_GROUP
PUSHBUTTON "C&AD", ID_STATS_CAD, 109, 52, 30, 13, WS_TABSTOP | WS_GROUP
END

View File

@@ -1,174 +0,0 @@
/*
* Czech language support
*
* WineCalc (cs-CZ.rc)
*
* Copyright 2005 Denzil <d3nzil@gmail.com>
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
#include "windows.h"
#include "resource.h"
#include "winecalc.h"
LANGUAGE LANG_CZECH, SUBLANG_DEFAULT
STRINGTABLE DISCARDABLE
BEGIN
IDS_APPNAME, "Kalkul<75>tor"
IDS_COPYRIGHT1, "Kalkul<75>tor 5.0. Licencov<6F>n pod LGPL 2"
IDS_COPYRIGHT2 "Copyright 2003, James Briggs"
IDS_COPYRIGHT3 "San Jose, California, USA"
IDS_COPYRIGHT4 "james@ActionMessage.com"
IDS_COPYRIGHT5 "http://www.ActionMessage.com/winecalc/"
IDS_BTN_BACKSPACE, "Zp<5A>t"
IDS_BTN_CLEAR_ENTRY, "CE"
IDS_BTN_CLEAR_ALL, "C"
IDS_BTN_MEM_CLEAR, "MC"
IDS_BTN_MEM_RECALL, "MR"
IDS_BTN_MEM_STORE, "MS"
IDS_BTN_MEM_PLUS, "M+"
IDS_BTN_MEM_STATUS_M, "M"
IDS_BTN_SQRT, "sqrt"
IDS_BTN_DEGREES, "Degrees"
IDS_BTN_RADIANS, "Radians"
IDS_BTN_GRADS, "Grads"
IDS_BTN_SHRT_HEX "Hex"
IDS_BTN_SHRT_DEC "Dec"
IDS_BTN_SHRT_OCT "Oct"
IDS_BTN_SHRT_BIN "Bin"
IDS_ERR_INVALID_INPUT, "Neplatn<74> vstup pro funkci."
IDS_ERR_DIVIDE_BY_ZERO, "Nelze d<>lit nulou."
IDS_ERR_UNDEFINED, "V<>sledek funkce nen<65> definov<6F>n."
END
MAIN_MENU MENU DISCARDABLE
BEGIN
POPUP "&Editace"
BEGIN
MENUITEM "&Kop<6F>rovat Ctrl+C", IDM_COPY
MENUITEM "&Vlo<6C>it Ctrl+V", IDM_PASTE
END
POPUP "&Zobrazen<65>"
BEGIN
MENUITEM "Standartn<74>", IDM_MODE_STANDARD
MENUITEM "V<>deck<63>", IDM_MODE_SCIENTIFIC
MENUITEM SEPARATOR
MENUITEM "Seskupov<6F>n<EFBFBD> <20><>slic", IDM_DIGIT_GROUPING
END
POPUP "&Pomoc"
BEGIN
MENUITEM "T<>mata n<>pov<6F>dy", IDM_HELP_TOPICS
MENUITEM SEPARATOR
MENUITEM "O Kalkul<75>toru", IDM_ABOUT
END
END
SCIMS_MENU MENU DISCARDABLE
BEGIN
POPUP "&Editace"
BEGIN
MENUITEM "&Kop<6F>rovat Ctrl+C", IDM_COPY
MENUITEM "&Vlo<6C>it Ctrl+V", IDM_PASTE
END
POPUP "&Zobrazen<65>"
BEGIN
MENUITEM "Standartn<74>", IDM_MODE_STANDARD
MENUITEM "V<>deck<63>", IDM_MODE_SCIENTIFIC
MENUITEM SEPARATOR
MENUITEM "<22>estn<74>ctkov<6F>\tF5", ID_CALC_NS_HEX
MENUITEM "Des<65>tkov<6F>\tF6", ID_CALC_NS_DEC
MENUITEM "Osmi<6D>kov<6F>\tF7", ID_CALC_NS_OCT
MENUITEM "Dvojkov<6F>\tF8", ID_CALC_NS_BIN
MENUITEM SEPARATOR
MENUITEM "Stupn<70>\tF2", ID_CALC_MS_DEGREES
MENUITEM "Radi<64>ny\tF3", ID_CALC_MS_RADIANS
MENUITEM "Grady\tF4", ID_CALC_MS_GRADS
MENUITEM SEPARATOR
MENUITEM "Seskupov<6F>n<EFBFBD> <20><>slic", IDM_DIGIT_GROUPING
END
POPUP "&Pomoc"
BEGIN
MENUITEM "T<>mata n<>pov<6F>dy", IDM_HELP_TOPICS
MENUITEM SEPARATOR
MENUITEM "O Kalkul<75>toru", IDM_ABOUT
END
END
SCIWS_MENU MENU DISCARDABLE
BEGIN
POPUP "&Editace"
BEGIN
MENUITEM "&Kop<6F>rovat Ctrl+C", IDM_COPY
MENUITEM "&Vlo<6C>it Ctrl+V", IDM_PASTE
END
POPUP "&Zobrazen<65>"
BEGIN
MENUITEM "Standartn<74>", IDM_MODE_STANDARD
MENUITEM "V<>deck<63>", IDM_MODE_SCIENTIFIC
MENUITEM SEPARATOR
MENUITEM "<22>estn<74>ctkov<6F>\tF5", ID_CALC_NS_HEX
MENUITEM "Des<65>tkov<6F>\tF6", ID_CALC_NS_DEC
MENUITEM "Osmi<6D>kov<6F>\tF7", ID_CALC_NS_OCT
MENUITEM "Dvojkov<6F>\tF8", ID_CALC_NS_BIN
MENUITEM SEPARATOR
MENUITEM "Qword\tF12", ID_CALC_WS_QWORD
MENUITEM "Dword\tF2", ID_CALC_WS_DWORD
MENUITEM "Word\tF3", ID_CALC_WS_WORD
MENUITEM "Byte\tF4", ID_CALC_WS_BYTE
MENUITEM SEPARATOR
MENUITEM "Seskupov<6F>n<EFBFBD> <20><>slic", IDM_DIGIT_GROUPING
END
POPUP "&Pomoc"
BEGIN
MENUITEM "T<>mata n<>pov<6F>dy", IDM_HELP_TOPICS
MENUITEM SEPARATOR
MENUITEM "O Kalkul<75>toru", IDM_ABOUT
END
END
MAIN_MENU ACCELERATORS
BEGIN
VK_F1, IDV_HELP, VIRTKEY
END
DLG_ABOUT DIALOGEX 12,0,175,90
CAPTION "O GNU winecalc"
FONT 8, "MS Shell Dlg"
STYLE DS_MODALFRAME | DS_SHELLFONT | WS_POPUP | WS_CAPTION | WS_SYSMENU
BEGIN
DEFPUSHBUTTON "OK", IDOK, 73, 70, 30, 14, WS_CHILD | WS_VISIBLE | WS_TABSTOP
END
WHATS_THIS_MENU MENU DISCARDABLE
BEGIN
POPUP "" BEGIN
MENUITEM "Co je toto?", IDM_WHATS_THIS
END
END
DLG_STATS DIALOGEX 12,0,145,85
CAPTION "Statistics Box"
FONT 8, "MS Shell Dlg"
STYLE DS_MODALFRAME | DS_SHELLFONT | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE
BEGIN
DEFPUSHBUTTON "&RET", ID_STATS_RET, 4, 52, 30, 13, WS_TABSTOP | WS_GROUP
PUSHBUTTON "&LOAD", ID_STATS_LOAD, 39, 52, 30, 13, WS_TABSTOP | WS_GROUP
PUSHBUTTON "&CD" ID_STATS_CD, 74, 52, 30, 13, WS_TABSTOP | WS_GROUP
PUSHBUTTON "C&AD", ID_STATS_CAD, 109, 52, 30, 13, WS_TABSTOP | WS_GROUP
END

View File

@@ -1,172 +1,365 @@
/*
* WineCalc (de-DE.rc)
*
* Copyright 2005 Rouven Wessling
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
#include "windows.h"
#include "resource.h"
#include "winecalc.h"
LANGUAGE LANG_GERMAN, SUBLANG_NEUTRAL
STRINGTABLE DISCARDABLE
// Dialog
IDD_DIALOG_SCIENTIFIC DIALOGEX 0, 0, 316, 161
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS Rechner"
MENU IDR_MENU_SCIENTIFIC_1
FONT 8, "MS Shell Dlg", 0, 0, 0x1
BEGIN
IDS_APPNAME, "Rechner"
IDS_COPYRIGHT1, "Rechner 5.0. Lizenziert unter der LGPL 2"
IDS_COPYRIGHT2 "Copyright 2003, James Briggs"
IDS_COPYRIGHT3 "San Jose, California, USA"
IDS_COPYRIGHT4 "james@ActionMessage.com"
IDS_COPYRIGHT5 "http://www.ActionMessage.com/winecalc/"
IDS_BTN_BACKSPACE, "R<>cktaste"
IDS_BTN_CLEAR_ENTRY, "CE"
IDS_BTN_CLEAR_ALL, "C"
IDS_BTN_MEM_CLEAR, "MC"
IDS_BTN_MEM_RECALL, "MR"
IDS_BTN_MEM_STORE, "MS"
IDS_BTN_MEM_PLUS, "M+"
IDS_BTN_MEM_STATUS_M, "M"
IDS_BTN_SQRT, "sqrt"
IDS_BTN_DEGREES, "Degrees"
IDS_BTN_RADIANS, "Radians"
IDS_BTN_GRADS, "Grads"
IDS_BTN_SHRT_HEX "Hex"
IDS_BTN_SHRT_DEC "Dec"
IDS_BTN_SHRT_OCT "Oct"
IDS_BTN_SHRT_BIN "Bin"
IDS_ERR_INVALID_INPUT, "Ung<6E>ltige Eingabe f<>r Funktion."
IDS_ERR_DIVIDE_BY_ZERO, "Teilen durch 0 unm<6E>glich."
IDS_ERR_UNDEFINED, "Das Ergebnis der Funktion ist undefiniert."
GROUPBOX "",IDC_STATIC,4,16,132,21
CONTROL "Hex",IDC_RADIO_HEX,"Button",BS_AUTORADIOBUTTON,8,24,29,
10
CONTROL "Dez",IDC_RADIO_DEC,"Button",BS_AUTORADIOBUTTON,40,24,29,
10
CONTROL "Okt",IDC_RADIO_OCT,"Button",BS_AUTORADIOBUTTON,72,24,27,
10
CONTROL "Bin",IDC_RADIO_BIN,"Button",BS_AUTORADIOBUTTON,100,24,
26,10
GROUPBOX "",IDC_STATIC,4,36,76,21
CONTROL "Inv",IDC_CHECK_INV,"Button",BS_AUTOCHECKBOX |
WS_TABSTOP,8,44,26,10
CONTROL "Hyp",IDC_CHECK_HYP,"Button",BS_AUTOCHECKBOX |
WS_TABSTOP,40,44,29,10
CTEXT "",IDC_TEXT_PARENT,84,40,24,17,SS_CENTERIMAGE,
WS_EX_CLIENTEDGE
CTEXT "",IDC_TEXT_MEMORY,112,40,24,17,SS_CENTERIMAGE,
WS_EX_CLIENTEDGE
PUSHBUTTON "Sta",IDC_BUTTON_STA,4,64,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Ave",IDC_BUTTON_AVE,4,83,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | WS_DISABLED | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Sum",IDC_BUTTON_SUM,4,102,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | WS_DISABLED | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "s",IDC_BUTTON_S,4,121,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | WS_DISABLED | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Dat",IDC_BUTTON_DAT,4,140,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | WS_DISABLED | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "F-E",IDC_BUTTON_FE,38,64,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "dms",IDC_BUTTON_DMS,38,83,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "sin",IDC_BUTTON_SIN,38,102,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "cos",IDC_BUTTON_COS,38,121,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "tan",IDC_BUTTON_TAN,38,140,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "(",IDC_BUTTON_LEFTPAR,64,64,24,17,BS_CENTER |
BS_VCENTER | BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Exp",IDC_BUTTON_EXP,64,83,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "x^y",IDC_BUTTON_XeY,64,102,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "x^2",IDC_BUTTON_Xe2,64,121,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "x^3",IDC_BUTTON_Xe3,64,140,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON ")",IDC_BUTTON_RIGHTPAR,90,64,24,17,BS_CENTER |
BS_VCENTER | BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "ln",IDC_BUTTON_LN,90,83,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "log",IDC_BUTTON_LOG,90,102,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "n!",IDC_BUTTON_NF,90,121,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "1/x",IDC_BUTTON_RX,90,140,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "MC",IDC_BUTTON_MC,124,64,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "MR",IDC_BUTTON_MR,124,83,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "MS",IDC_BUTTON_MS,124,102,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "M+",IDC_BUTTON_MP,124,121,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "pi",IDC_BUTTON_PI,124,140,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "7",IDC_BUTTON_7,158,64,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "4",IDC_BUTTON_4,158,83,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "1",IDC_BUTTON_1,158,102,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "0",IDC_BUTTON_0,158,121,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "A",IDC_BUTTON_A,158,140,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "8",IDC_BUTTON_8,184,64,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "5",IDC_BUTTON_5,184,83,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "2",IDC_BUTTON_2,184,102,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "+/-",IDC_BUTTON_SIGN,184,121,24,17,BS_CENTER |
BS_VCENTER | BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "B",IDC_BUTTON_B,184,140,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "9",IDC_BUTTON_9,210,64,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "6",IDC_BUTTON_6,210,83,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "3",IDC_BUTTON_3,210,102,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON ",",IDC_BUTTON_DOT,210,121,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "C",IDC_BUTTON_C,210,140,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "/",IDC_BUTTON_DIV,236,64,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "*",IDC_BUTTON_MULT,236,83,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "-",IDC_BUTTON_SUB,236,102,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "+",IDC_BUTTON_ADD,236,121,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "D",IDC_BUTTON_D,236,140,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Mod",IDC_BUTTON_MOD,262,64,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Or",IDC_BUTTON_OR,262,83,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Lsh",IDC_BUTTON_LSH,262,102,24,17,BS_CENTER |
BS_VCENTER | BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "=",IDC_BUTTON_EQU,262,121,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "E",IDC_BUTTON_E,262,140,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "And",IDC_BUTTON_AND,288,64,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Xor",IDC_BUTTON_XOR,288,83,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Not",IDC_BUTTON_NOT,288,102,24,17,BS_CENTER |
BS_VCENTER | BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Int",IDC_BUTTON_INT,288,121,24,17,BS_CENTER |
BS_VCENTER | BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "F",IDC_BUTTON_F,288,140,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
GROUPBOX "",IDC_STATIC,140,16,172,21
CONTROL "Qword",IDC_RADIO_QWORD,"Button",BS_AUTORADIOBUTTON |
NOT WS_VISIBLE,148,24,37,10
CONTROL "Dword",IDC_RADIO_DWORD,"Button",BS_AUTORADIOBUTTON |
NOT WS_VISIBLE,188,24,37,10
CONTROL "Word",IDC_RADIO_WORD,"Button",BS_AUTORADIOBUTTON | NOT
WS_VISIBLE,232,24,33,10
CONTROL "Byte",IDC_RADIO_BYTE,"Button",BS_AUTORADIOBUTTON | NOT
WS_VISIBLE,272,24,30,10
CONTROL "Degree",IDC_RADIO_DEG,"Button",BS_AUTORADIOBUTTON,148,24,
42,10
CONTROL "Radian",IDC_RADIO_RAD,"Button",BS_AUTORADIOBUTTON,192,
24,42,10
CONTROL "Grad",IDC_RADIO_GRAD,"Button",BS_AUTORADIOBUTTON,
236,24,44,10
PUSHBUTTON "C",IDC_BUTTON_CANC,272,40,40,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "CE",IDC_BUTTON_CE,228,40,40,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Zur<75>ck",IDC_BUTTON_BACK,184,40,40,17,BS_CENTER |
BS_VCENTER | BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
RTEXT "",IDC_TEXT_OUTPUT,4,4,308,12,SS_CENTERIMAGE,
WS_EX_CLIENTEDGE
DEFPUSHBUTTON "",IDC_BUTTON_FOCUS,0,0,5,5, NOT WS_VISIBLE
END
MAIN_MENU MENU DISCARDABLE
IDD_DIALOG_STANDARD DIALOGEX 0, 0, 172, 127
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS Rechner"
MENU IDR_MENU_STANDARD
FONT 8, "MS Shell Dlg", 0, 0, 0x1
BEGIN
POPUP "&Bearbeiten"
BEGIN
MENUITEM "&Kopieren Ctrl+C", IDM_COPY
MENUITEM "&Einf<6E>gen Ctrl+V", IDM_PASTE
END
POPUP "&Ansicht"
BEGIN
MENUITEM "&Standard", IDM_MODE_STANDARD
MENUITEM "&Wissenschaftlich", IDM_MODE_SCIENTIFIC
MENUITEM SEPARATOR
MENUITEM "&Zifferngruppierung", IDM_DIGIT_GROUPING
END
POPUP "&?"
BEGIN
MENUITEM "&Hilfethemen", IDM_HELP_TOPICS
MENUITEM SEPARATOR
MENUITEM "&Info", IDM_ABOUT
END
PUSHBUTTON "C",IDC_BUTTON_CANC,128,24,40,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "CE",IDC_BUTTON_CE,84,24,40,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Zur<75>ck",IDC_BUTTON_BACK,40,24,40,17,BS_CENTER |
BS_VCENTER | BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
RTEXT "",IDC_TEXT_OUTPUT,4,4,164,12,SS_CENTERIMAGE,
WS_EX_CLIENTEDGE
PUSHBUTTON "7",IDC_BUTTON_7,40,48,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "4",IDC_BUTTON_4,40,67,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "1",IDC_BUTTON_1,40,86,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "0",IDC_BUTTON_0,40,105,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "8",IDC_BUTTON_8,66,48,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "5",IDC_BUTTON_5,66,67,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "2",IDC_BUTTON_2,66,86,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "+/-",IDC_BUTTON_SIGN,66,105,24,17,BS_CENTER |
BS_VCENTER | BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "9",IDC_BUTTON_9,92,48,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "6",IDC_BUTTON_6,92,67,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "3",IDC_BUTTON_3,92,86,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON ",",IDC_BUTTON_DOT,92,105,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "/",IDC_BUTTON_DIV,118,48,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "*",IDC_BUTTON_MULT,118,67,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "-",IDC_BUTTON_SUB,118,86,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "+",IDC_BUTTON_ADD,118,105,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Sqrt",IDC_BUTTON_SQRT,144,48,24,17,BS_CENTER |
BS_VCENTER | BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "%",IDC_BUTTON_PERCENT,144,67,24,17,BS_CENTER |
BS_VCENTER | BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "1/x",IDC_BUTTON_RX,144,86,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "=",IDC_BUTTON_EQU,144,105,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
CTEXT "",IDC_TEXT_MEMORY,4,24,24,17,SS_CENTERIMAGE,
WS_EX_CLIENTEDGE
PUSHBUTTON "MC",IDC_BUTTON_MC,4,48,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "MR",IDC_BUTTON_MR,4,67,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "MS",IDC_BUTTON_MS,4,86,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "M+",IDC_BUTTON_MP,4,105,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
DEFPUSHBUTTON "",IDC_BUTTON_FOCUS,0,0,5,5, NOT WS_VISIBLE
END
SCIMS_MENU MENU DISCARDABLE
BEGIN
POPUP "&Bearbeiten"
BEGIN
MENUITEM "&Kopieren Ctrl+C", IDM_COPY
MENUITEM "&Einf<6E>gen Ctrl+V", IDM_PASTE
END
POPUP "&Anzeige"
BEGIN
MENUITEM "&Standard", IDM_MODE_STANDARD
MENUITEM "&Wissenschaftlich", IDM_MODE_SCIENTIFIC
MENUITEM SEPARATOR
MENUITEM "&Hex\tF5", ID_CALC_NS_HEX
MENUITEM "De&zimal\tF6", ID_CALC_NS_DEC
MENUITEM "O&ktal\tF7", ID_CALC_NS_OCT
MENUITEM "&Bin<69>r\tF8", ID_CALC_NS_BIN
MENUITEM SEPARATOR
MENUITEM "&Deg\tF2", ID_CALC_MS_DEGREES
MENUITEM "&Rad\tF3", ID_CALC_MS_RADIANS
MENUITEM "&Grad\tF4", ID_CALC_MS_GRADS
MENUITEM SEPARATOR
MENUITEM "Zifferngr&uppierung", IDM_DIGIT_GROUPING
END
POPUP "&?"
BEGIN
MENUITEM "&Hilfethemen", IDM_HELP_TOPICS
MENUITEM SEPARATOR
MENUITEM "&Info", IDM_ABOUT
END
END
SCIWS_MENU MENU DISCARDABLE
BEGIN
POPUP "&Bearbeiten"
BEGIN
MENUITEM "&Kopieren Ctrl+C", IDM_COPY
MENUITEM "&Einf<6E>gen Ctrl+V", IDM_PASTE
END
POPUP "&Anzeige"
BEGIN
MENUITEM "&Standard", IDM_MODE_STANDARD
MENUITEM "&Wissenschaftlich", IDM_MODE_SCIENTIFIC
MENUITEM SEPARATOR
MENUITEM "&Hex\tF5", ID_CALC_NS_HEX
MENUITEM "De&zimal\tF6", ID_CALC_NS_DEC
MENUITEM "O&ktal\tF7", ID_CALC_NS_OCT
MENUITEM "&Bin<69>r\tF8", ID_CALC_NS_BIN
MENUITEM SEPARATOR
MENUITEM "&Qword\tF12", ID_CALC_WS_QWORD
MENUITEM "Dw&ord\tF2", ID_CALC_WS_DWORD
MENUITEM "Wo&rd\tF3", ID_CALC_WS_WORD
MENUITEM "&Byte\tF4", ID_CALC_WS_BYTE
MENUITEM SEPARATOR
MENUITEM "&Zifferngruppierung", IDM_DIGIT_GROUPING
END
POPUP "&?"
BEGIN
MENUITEM "&Hilfethemen", IDM_HELP_TOPICS
MENUITEM SEPARATOR
MENUITEM "&Info", IDM_ABOUT
END
END
MAIN_MENU ACCELERATORS
BEGIN
VK_F1, IDV_HELP, VIRTKEY
END
DLG_ABOUT DIALOGEX 12,0,175,90
CAPTION "Info <20>ber GNU winecalc"
IDD_DIALOG_ABOUT DIALOGEX DISCARDABLE 0, 0, 264, 169
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "<22>ber ReactOS Rechner"
FONT 8, "MS Shell Dlg"
STYLE DS_MODALFRAME | DS_SHELLFONT | WS_POPUP | WS_CAPTION | WS_SYSMENU
BEGIN
DEFPUSHBUTTON "OK", IDOK, 73, 70, 30, 14, WS_CHILD | WS_VISIBLE | WS_TABSTOP
DEFPUSHBUTTON "OK",IDOK,105,148,52,16
CONTROL 106,IDC_STATIC,"Static",SS_BITMAP | SS_CENTERIMAGE |
SS_REALSIZEIMAGE | WS_BORDER,4,4,104,48
LTEXT "ReactOS Rechner",IDC_STATIC,120,12,132,8,
SS_CENTERIMAGE
LTEXT "Version ",IDC_TEXT_VERSION,120,20,132,8,SS_CENTERIMAGE
LTEXT "Geschrieben von Carlo Bramini",IDC_STATIC,120,32,132,8,
SS_CENTERIMAGE
GROUPBOX "",IDC_STATIC,112,0,148,52
GROUPBOX "",IDC_STATIC,4,56,256,88
EDITTEXT IDC_EDIT_LICENSE,12,68,240,68,ES_MULTILINE | ES_READONLY |
WS_VSCROLL
END
WHATS_THIS_MENU MENU DISCARDABLE
BEGIN
POPUP "" BEGIN
MENUITEM "Was ist das?", IDM_WHATS_THIS
END
END
DLG_STATS DIALOGEX 12,0,145,85
IDD_DIALOG_STAT DIALOGEX DISCARDABLE 0, 0, 163, 85
STYLE DS_SHELLFONT | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Statistik Box"
FONT 8, "MS Shell Dlg"
STYLE DS_MODALFRAME | DS_SHELLFONT | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE
BEGIN
DEFPUSHBUTTON "&RET", ID_STATS_RET, 4, 52, 30, 13, WS_TABSTOP | WS_GROUP
PUSHBUTTON "&LOAD", ID_STATS_LOAD, 39, 52, 30, 13, WS_TABSTOP | WS_GROUP
PUSHBUTTON "&CD" ID_STATS_CD, 74, 52, 30, 13, WS_TABSTOP | WS_GROUP
PUSHBUTTON "C&AD", ID_STATS_CAD, 109, 52, 30, 13, WS_TABSTOP | WS_GROUP
LISTBOX IDC_LIST_STAT,4,4,156,40,LBS_NOINTEGRALHEIGHT |
WS_VSCROLL | WS_TABSTOP
PUSHBUTTON "RET",IDC_BUTTON_RET,4,48,36,16
PUSHBUTTON "LOAD",IDC_BUTTON_LOAD,44,48,36,16
PUSHBUTTON "CD",IDC_BUTTON_CD,84,48,36,16
PUSHBUTTON "CAD",IDC_BUTTON_CAD,124,48,36,16
CTEXT "n=0",IDC_TEXT_NITEMS,4,68,156,12,SS_CENTERIMAGE |
SS_SUNKEN
END
// Menus
IDR_MENU_SCIENTIFIC_1 MENU DISCARDABLE
BEGIN
POPUP "Bearbeiten"
BEGIN
MENUITEM "Kopieren\tSTRG-C", IDM_EDIT_COPY
MENUITEM "Einf<6E>gen\tSTRG-V", IDM_EDIT_PASTE
END
POPUP "Ansicht"
BEGIN
MENUITEM "Standard", IDM_VIEW_STANDARD, CHECKED
MENUITEM "Wissenschaftlich", IDM_VIEW_SCIENTIFIC, CHECKED
MENUITEM "Konversion", IDM_VIEW_CONVERSION
MENUITEM SEPARATOR
MENUITEM "Hex\tF5", IDM_VIEW_HEX, CHECKED
MENUITEM "Dezimal\tF6", IDM_VIEW_DEC, CHECKED
MENUITEM "Oktal\tF7", IDM_VIEW_OCT, CHECKED
MENUITEM "Bin<69>r\tF8", IDM_VIEW_BIN, CHECKED
MENUITEM SEPARATOR
MENUITEM "Degree\tF2", IDM_VIEW_DEG, CHECKED
MENUITEM "Radian\tF3", IDM_VIEW_RAD, CHECKED
MENUITEM "Grad\tF4", IDM_VIEW_GRAD, CHECKED
MENUITEM SEPARATOR
MENUITEM "Zifferngruppierung", IDM_VIEW_GROUP, CHECKED
END
POPUP "Hilfe"
BEGIN
MENUITEM "Hilfethemen", IDM_HELP_HELP
MENUITEM SEPARATOR
MENUITEM "Info", IDM_HELP_ABOUT
END
END
IDR_MENU_SCIENTIFIC_2 MENU DISCARDABLE
BEGIN
POPUP "Bearbeiten"
BEGIN
MENUITEM "Kopieren\tSTRG-C", IDM_EDIT_COPY
MENUITEM "Einf<6E>gen\tSTRG-V", IDM_EDIT_PASTE
END
POPUP "Ansicht"
BEGIN
MENUITEM "Standard", IDM_VIEW_STANDARD, CHECKED
MENUITEM "Wissenschaftlich", IDM_VIEW_SCIENTIFIC, CHECKED
MENUITEM "Konversion", IDM_VIEW_CONVERSION
MENUITEM SEPARATOR
MENUITEM "Hex\tF5", IDM_VIEW_HEX, CHECKED
MENUITEM "Dezimal\tF6", IDM_VIEW_DEC, CHECKED
MENUITEM "Oktal\tF7", IDM_VIEW_OCT, CHECKED
MENUITEM "Bin<69>r\tF8", IDM_VIEW_BIN, CHECKED
MENUITEM SEPARATOR
MENUITEM "Qword\tF12", IDM_VIEW_QWORD, CHECKED
MENUITEM "Dword\tF2", IDM_VIEW_DWORD, CHECKED
MENUITEM "Word\tF3", IDM_VIEW_WORD, CHECKED
MENUITEM "Byte\tF4", IDM_VIEW_BYTE, CHECKED
MENUITEM SEPARATOR
MENUITEM "Zifferngruppierung", IDM_VIEW_GROUP, CHECKED
END
POPUP "Hilfe"
BEGIN
MENUITEM "Hilfethemen", IDM_HELP_HELP
MENUITEM SEPARATOR
MENUITEM "<22>ber ReactOS Rechner", IDM_HELP_ABOUT
END
END
IDR_MENU_STANDARD MENU DISCARDABLE
BEGIN
POPUP "Bearbeiten"
BEGIN
MENUITEM "Kopieren\tSTRG-C", IDM_EDIT_COPY
MENUITEM "Einf<6E>gen\tSTRG-V", IDM_EDIT_PASTE
END
POPUP "Ansicht"
BEGIN
MENUITEM "Standard", IDM_VIEW_STANDARD, CHECKED
MENUITEM "Wissenschaftlich", IDM_VIEW_SCIENTIFIC, CHECKED
MENUITEM "Konversion", IDM_VIEW_CONVERSION
MENUITEM SEPARATOR
MENUITEM "Zifferngruppierung", IDM_VIEW_GROUP, CHECKED
END
POPUP "Hilfe"
BEGIN
MENUITEM "Hilfethemen", IDM_HELP_HELP
MENUITEM SEPARATOR
MENUITEM "<22>ber ReactOS Rechner", IDM_HELP_ABOUT
END
END
// String Tables
STRINGTABLE DISCARDABLE
BEGIN
IDS_STRING_LICENSE "ReactOS Rechner ist freie Software, herausgegeben unter der GNU GPL Lizenz.\r\n\r\nSie k<>nnen hier eine Kopie der GNU GPL Lizenz erhalten:\r\nhttp://www.gnu.org/licenses/gpl.html\r\n\r\nSie k<>nnen hier auch eine <20>bersetzung der GNU GPL Lizenz erhalten:\r\nhttp://www.gnu.org/licenses/translations.html"
IDS_MATH_ERROR "Fehler"
IDS_QUICKHELP "Schnellhilfe"
END

View File

@@ -1,172 +0,0 @@
/*
* WineCalc (el-GR.rc)
*
* Copyright 2006 Dj Apal
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
#include "windows.h"
#include "resource.h"
#include "winecalc.h"
LANGUAGE LANG_GREEK, SUBLANG_DEFAULT
STRINGTABLE DISCARDABLE
BEGIN
IDS_APPNAME, "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
IDS_COPYRIGHT1, "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 5.0. Licensed under LGPL 2"
IDS_COPYRIGHT2 "Copyright 2003, James Briggs"
IDS_COPYRIGHT3 "San Jose, California, USA"
IDS_COPYRIGHT4 "james@ActionMessage.com"
IDS_COPYRIGHT5 "http://www.ActionMessage.com/winecalc/"
IDS_BTN_BACKSPACE, "Backspace"
IDS_BTN_CLEAR_ENTRY, "CE"
IDS_BTN_CLEAR_ALL, "C"
IDS_BTN_MEM_CLEAR, "MC"
IDS_BTN_MEM_RECALL, "MR"
IDS_BTN_MEM_STORE, "MS"
IDS_BTN_MEM_PLUS, "M+"
IDS_BTN_MEM_STATUS_M, "M"
IDS_BTN_SQRT, "sqrt"
IDS_BTN_DEGREES, "Degrees"
IDS_BTN_RADIANS, "Radians"
IDS_BTN_GRADS, "Grads"
IDS_BTN_SHRT_HEX "Hex"
IDS_BTN_SHRT_DEC "Dec"
IDS_BTN_SHRT_OCT "Oct"
IDS_BTN_SHRT_BIN "Bin"
IDS_ERR_INVALID_INPUT, "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>."
IDS_ERR_DIVIDE_BY_ZERO, "<22><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>."
IDS_ERR_UNDEFINED, "<22><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>."
END
MAIN_MENU MENU DISCARDABLE
BEGIN
POPUP "&<26><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
BEGIN
MENUITEM "&<26><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> Ctrl+C", IDM_COPY
MENUITEM "&<26><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> Ctrl+V", IDM_PASTE
END
POPUP "&<26><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
BEGIN
MENUITEM "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>", IDM_MODE_STANDARD
MENUITEM "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>", IDM_MODE_SCIENTIFIC
MENUITEM SEPARATOR
MENUITEM "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>", IDM_DIGIT_GROUPING
END
POPUP "&<26><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
BEGIN
MENUITEM "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>", IDM_HELP_TOPICS
MENUITEM SEPARATOR
MENUITEM "<22><><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>", IDM_ABOUT
END
END
SCIMS_MENU MENU DISCARDABLE
BEGIN
POPUP "&<26><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
BEGIN
MENUITEM "&<26><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> Ctrl+C", IDM_COPY
MENUITEM "&<26><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> Ctrl+V", IDM_PASTE
END
POPUP "&<26><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
BEGIN
MENUITEM "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>", IDM_MODE_STANDARD
MENUITEM "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>", IDM_MODE_SCIENTIFIC
MENUITEM SEPARATOR
MENUITEM "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\tF5", ID_CALC_NS_HEX
MENUITEM "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\tF6", ID_CALC_NS_DEC
MENUITEM "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\tF7", ID_CALC_NS_OCT
MENUITEM "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\tF8", ID_CALC_NS_BIN
MENUITEM SEPARATOR
MENUITEM "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\tF2", ID_CALC_MS_DEGREES
MENUITEM "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\tF3", ID_CALC_MS_RADIANS
MENUITEM "Grads\tF4", ID_CALC_MS_GRADS
MENUITEM SEPARATOR
MENUITEM "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>", IDM_DIGIT_GROUPING
END
POPUP "&<26><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
BEGIN
MENUITEM "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>", IDM_HELP_TOPICS
MENUITEM SEPARATOR
MENUITEM "<22><><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>", IDM_ABOUT
END
END
SCIWS_MENU MENU DISCARDABLE
BEGIN
POPUP "&<26><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
BEGIN
MENUITEM "&<26><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> Ctrl+C", IDM_COPY
MENUITEM "&<26><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> Ctrl+V", IDM_PASTE
END
POPUP "&<26><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
BEGIN
MENUITEM "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>", IDM_MODE_STANDARD
MENUITEM "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>", IDM_MODE_SCIENTIFIC
MENUITEM SEPARATOR
MENUITEM "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\tF5", ID_CALC_NS_HEX
MENUITEM "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\tF6", ID_CALC_NS_DEC
MENUITEM "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\tF7", ID_CALC_NS_OCT
MENUITEM "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\tF8", ID_CALC_NS_BIN
MENUITEM SEPARATOR
MENUITEM "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\tF2", ID_CALC_MS_DEGREES
MENUITEM "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\tF3", ID_CALC_MS_RADIANS
MENUITEM "Grads\tF4", ID_CALC_MS_GRADS
MENUITEM SEPARATOR
MENUITEM "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>", IDM_DIGIT_GROUPING
END
POPUP "&<26><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
BEGIN
MENUITEM "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>", IDM_HELP_TOPICS
MENUITEM SEPARATOR
MENUITEM "<22><><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>", IDM_ABOUT
END
END
MAIN_MENU ACCELERATORS
BEGIN
VK_F1, IDV_HELP, VIRTKEY
END
DLG_ABOUT DIALOGEX 12,0,175,90
CAPTION "<22><><EFBFBD><EFBFBD> <20><><EFBFBD> GNU winecalc"
FONT 8, "MS Shell Dlg"
STYLE DS_MODALFRAME | DS_SHELLFONT | WS_POPUP | WS_CAPTION | WS_SYSMENU
BEGIN
DEFPUSHBUTTON "OK", IDOK, 73, 70, 30, 14, WS_CHILD | WS_VISIBLE | WS_TABSTOP
END
WHATS_THIS_MENU MENU DISCARDABLE
BEGIN
POPUP ""
BEGIN
MENUITEM "<22><> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>;", IDM_WHATS_THIS
END
END
DLG_STATS DIALOGEX 12,0,145,85
CAPTION "Statistics Box"
FONT 8, "MS Shell Dlg"
STYLE DS_MODALFRAME | DS_SHELLFONT | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE
BEGIN
DEFPUSHBUTTON "&RET", ID_STATS_RET, 4, 52, 30, 13, WS_TABSTOP | WS_GROUP
PUSHBUTTON "&LOAD", ID_STATS_LOAD, 39, 52, 30, 13, WS_TABSTOP | WS_GROUP
PUSHBUTTON "&CD" ID_STATS_CD, 74, 52, 30, 13, WS_TABSTOP | WS_GROUP
PUSHBUTTON "C&AD", ID_STATS_CAD, 109, 52, 30, 13, WS_TABSTOP | WS_GROUP
END

View File

@@ -1,173 +1,365 @@
/*
* WineCalc (en-US.rc)
*
* Copyright 2003 James Briggs
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
#include "windows.h"
#include "resource.h"
#include "winecalc.h"
LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US
STRINGTABLE DISCARDABLE
// Dialog
IDD_DIALOG_SCIENTIFIC DIALOGEX 0, 0, 316, 161
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS Calculator"
MENU IDR_MENU_SCIENTIFIC_1
FONT 8, "MS Shell Dlg", 0, 0, 0x1
BEGIN
IDS_APPNAME, "Calculator"
IDS_COPYRIGHT1, "Calculator 5.0. Licensed under LGPL 2"
IDS_COPYRIGHT2 "Copyright 2003, James Briggs"
IDS_COPYRIGHT3 "San Jose, California, USA"
IDS_COPYRIGHT4 "james@ActionMessage.com"
IDS_COPYRIGHT5 "http://www.ActionMessage.com/winecalc/"
IDS_BTN_BACKSPACE, "Backspace"
IDS_BTN_CLEAR_ENTRY, "CE"
IDS_BTN_CLEAR_ALL, "C"
IDS_BTN_MEM_CLEAR, "MC"
IDS_BTN_MEM_RECALL, "MR"
IDS_BTN_MEM_STORE, "MS"
IDS_BTN_MEM_PLUS, "M+"
IDS_BTN_MEM_STATUS_M, "M"
IDS_BTN_SQRT, "sqrt"
IDS_BTN_DEGREES, "Degrees"
IDS_BTN_RADIANS, "Radians"
IDS_BTN_GRADS, "Grads"
IDS_BTN_SHRT_HEX "Hex"
IDS_BTN_SHRT_DEC "Dec"
IDS_BTN_SHRT_OCT "Oct"
IDS_BTN_SHRT_BIN "Bin"
IDS_ERR_INVALID_INPUT, "Invalid input for function."
IDS_ERR_DIVIDE_BY_ZERO, "Cannot divide by zero."
IDS_ERR_UNDEFINED, "Result of function is undefined."
GROUPBOX "",IDC_STATIC,4,16,132,21
CONTROL "Hex",IDC_RADIO_HEX,"Button",BS_AUTORADIOBUTTON,8,24,29,
10
CONTROL "Dec",IDC_RADIO_DEC,"Button",BS_AUTORADIOBUTTON,40,24,29,
10
CONTROL "Oct",IDC_RADIO_OCT,"Button",BS_AUTORADIOBUTTON,72,24,27,
10
CONTROL "Bin",IDC_RADIO_BIN,"Button",BS_AUTORADIOBUTTON,100,24,
26,10
GROUPBOX "",IDC_STATIC,4,36,76,21
CONTROL "Inv",IDC_CHECK_INV,"Button",BS_AUTOCHECKBOX |
WS_TABSTOP,8,44,26,10
CONTROL "Hyp",IDC_CHECK_HYP,"Button",BS_AUTOCHECKBOX |
WS_TABSTOP,40,44,29,10
CTEXT "",IDC_TEXT_PARENT,84,40,24,17,SS_CENTERIMAGE,
WS_EX_CLIENTEDGE
CTEXT "",IDC_TEXT_MEMORY,112,40,24,17,SS_CENTERIMAGE,
WS_EX_CLIENTEDGE
PUSHBUTTON "Sta",IDC_BUTTON_STA,4,64,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Ave",IDC_BUTTON_AVE,4,83,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | WS_DISABLED | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Sum",IDC_BUTTON_SUM,4,102,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | WS_DISABLED | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "s",IDC_BUTTON_S,4,121,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | WS_DISABLED | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Dat",IDC_BUTTON_DAT,4,140,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | WS_DISABLED | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "F-E",IDC_BUTTON_FE,38,64,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "dms",IDC_BUTTON_DMS,38,83,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "sin",IDC_BUTTON_SIN,38,102,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "cos",IDC_BUTTON_COS,38,121,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "tan",IDC_BUTTON_TAN,38,140,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "(",IDC_BUTTON_LEFTPAR,64,64,24,17,BS_CENTER |
BS_VCENTER | BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Exp",IDC_BUTTON_EXP,64,83,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "x^y",IDC_BUTTON_XeY,64,102,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "x^2",IDC_BUTTON_Xe2,64,121,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "x^3",IDC_BUTTON_Xe3,64,140,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON ")",IDC_BUTTON_RIGHTPAR,90,64,24,17,BS_CENTER |
BS_VCENTER | BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "ln",IDC_BUTTON_LN,90,83,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "log",IDC_BUTTON_LOG,90,102,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "n!",IDC_BUTTON_NF,90,121,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "1/x",IDC_BUTTON_RX,90,140,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "MC",IDC_BUTTON_MC,124,64,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "MR",IDC_BUTTON_MR,124,83,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "MS",IDC_BUTTON_MS,124,102,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "M+",IDC_BUTTON_MP,124,121,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "pi",IDC_BUTTON_PI,124,140,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "7",IDC_BUTTON_7,158,64,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "4",IDC_BUTTON_4,158,83,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "1",IDC_BUTTON_1,158,102,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "0",IDC_BUTTON_0,158,121,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "A",IDC_BUTTON_A,158,140,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "8",IDC_BUTTON_8,184,64,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "5",IDC_BUTTON_5,184,83,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "2",IDC_BUTTON_2,184,102,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "+/-",IDC_BUTTON_SIGN,184,121,24,17,BS_CENTER |
BS_VCENTER | BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "B",IDC_BUTTON_B,184,140,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "9",IDC_BUTTON_9,210,64,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "6",IDC_BUTTON_6,210,83,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "3",IDC_BUTTON_3,210,102,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON ",",IDC_BUTTON_DOT,210,121,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "C",IDC_BUTTON_C,210,140,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "/",IDC_BUTTON_DIV,236,64,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "*",IDC_BUTTON_MULT,236,83,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "-",IDC_BUTTON_SUB,236,102,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "+",IDC_BUTTON_ADD,236,121,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "D",IDC_BUTTON_D,236,140,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Mod",IDC_BUTTON_MOD,262,64,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Or",IDC_BUTTON_OR,262,83,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Lsh",IDC_BUTTON_LSH,262,102,24,17,BS_CENTER |
BS_VCENTER | BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "=",IDC_BUTTON_EQU,262,121,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "E",IDC_BUTTON_E,262,140,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "And",IDC_BUTTON_AND,288,64,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Xor",IDC_BUTTON_XOR,288,83,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Not",IDC_BUTTON_NOT,288,102,24,17,BS_CENTER |
BS_VCENTER | BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Int",IDC_BUTTON_INT,288,121,24,17,BS_CENTER |
BS_VCENTER | BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "F",IDC_BUTTON_F,288,140,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
GROUPBOX "",IDC_STATIC,140,16,172,21
CONTROL "Qword",IDC_RADIO_QWORD,"Button",BS_AUTORADIOBUTTON |
NOT WS_VISIBLE,148,24,37,10
CONTROL "Dword",IDC_RADIO_DWORD,"Button",BS_AUTORADIOBUTTON |
NOT WS_VISIBLE,188,24,37,10
CONTROL "Word",IDC_RADIO_WORD,"Button",BS_AUTORADIOBUTTON | NOT
WS_VISIBLE,232,24,33,10
CONTROL "Byte",IDC_RADIO_BYTE,"Button",BS_AUTORADIOBUTTON | NOT
WS_VISIBLE,272,24,30,10
CONTROL "Degrees",IDC_RADIO_DEG,"Button",BS_AUTORADIOBUTTON,148,24,
42,10
CONTROL "Radians",IDC_RADIO_RAD,"Button",BS_AUTORADIOBUTTON,192,
24,42,10
CONTROL "Grads",IDC_RADIO_GRAD,"Button",BS_AUTORADIOBUTTON,
236,24,44,10
PUSHBUTTON "C",IDC_BUTTON_CANC,272,40,40,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "CE",IDC_BUTTON_CE,228,40,40,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Back",IDC_BUTTON_BACK,184,40,40,17,BS_CENTER |
BS_VCENTER | BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
RTEXT "",IDC_TEXT_OUTPUT,4,4,308,12,SS_CENTERIMAGE,
WS_EX_CLIENTEDGE
DEFPUSHBUTTON "",IDC_BUTTON_FOCUS,0,0,5,5, NOT WS_VISIBLE
END
MAIN_MENU MENU DISCARDABLE
IDD_DIALOG_STANDARD DIALOGEX 0, 0, 172, 127
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS Calculator"
MENU IDR_MENU_STANDARD
FONT 8, "MS Shell Dlg", 0, 0, 0x1
BEGIN
POPUP "&Edit"
BEGIN
MENUITEM "&Copy Ctrl+C", IDM_COPY
MENUITEM "&Paste Ctrl+V", IDM_PASTE
END
POPUP "&View"
BEGIN
MENUITEM "Standard", IDM_MODE_STANDARD
MENUITEM "Scientific", IDM_MODE_SCIENTIFIC
MENUITEM SEPARATOR
MENUITEM "Digit Grouping", IDM_DIGIT_GROUPING
END
POPUP "&Help"
BEGIN
MENUITEM "Help Topics", IDM_HELP_TOPICS
MENUITEM SEPARATOR
MENUITEM "About Calculator", IDM_ABOUT
END
PUSHBUTTON "C",IDC_BUTTON_CANC,128,24,40,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "CE",IDC_BUTTON_CE,84,24,40,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Back",IDC_BUTTON_BACK,40,24,40,17,BS_CENTER |
BS_VCENTER | BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
RTEXT "",IDC_TEXT_OUTPUT,4,4,164,12,SS_CENTERIMAGE,
WS_EX_CLIENTEDGE
PUSHBUTTON "7",IDC_BUTTON_7,40,48,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "4",IDC_BUTTON_4,40,67,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "1",IDC_BUTTON_1,40,86,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "0",IDC_BUTTON_0,40,105,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "8",IDC_BUTTON_8,66,48,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "5",IDC_BUTTON_5,66,67,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "2",IDC_BUTTON_2,66,86,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "+/-",IDC_BUTTON_SIGN,66,105,24,17,BS_CENTER |
BS_VCENTER | BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "9",IDC_BUTTON_9,92,48,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "6",IDC_BUTTON_6,92,67,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "3",IDC_BUTTON_3,92,86,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON ",",IDC_BUTTON_DOT,92,105,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "/",IDC_BUTTON_DIV,118,48,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "*",IDC_BUTTON_MULT,118,67,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "-",IDC_BUTTON_SUB,118,86,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "+",IDC_BUTTON_ADD,118,105,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Sqrt",IDC_BUTTON_SQRT,144,48,24,17,BS_CENTER |
BS_VCENTER | BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "%",IDC_BUTTON_PERCENT,144,67,24,17,BS_CENTER |
BS_VCENTER | BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "1/x",IDC_BUTTON_RX,144,86,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "=",IDC_BUTTON_EQU,144,105,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
CTEXT "",IDC_TEXT_MEMORY,4,24,24,17,SS_CENTERIMAGE,
WS_EX_CLIENTEDGE
PUSHBUTTON "MC",IDC_BUTTON_MC,4,48,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "MR",IDC_BUTTON_MR,4,67,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "MS",IDC_BUTTON_MS,4,86,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "M+",IDC_BUTTON_MP,4,105,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
DEFPUSHBUTTON "",IDC_BUTTON_FOCUS,0,0,5,5, NOT WS_VISIBLE
END
SCIMS_MENU MENU DISCARDABLE
BEGIN
POPUP "&Edit"
BEGIN
MENUITEM "&Copy Ctrl+C", IDM_COPY
MENUITEM "&Paste Ctrl+V", IDM_PASTE
END
POPUP "&View"
BEGIN
MENUITEM "Standard", IDM_MODE_STANDARD
MENUITEM "Scientific", IDM_MODE_SCIENTIFIC
MENUITEM SEPARATOR
MENUITEM "Hex\tF5", ID_CALC_NS_HEX
MENUITEM "Decimal\tF6", ID_CALC_NS_DEC
MENUITEM "Octal\tF7", ID_CALC_NS_OCT
MENUITEM "Binary\tF8", ID_CALC_NS_BIN
MENUITEM SEPARATOR
MENUITEM "Degrees\tF2", ID_CALC_MS_DEGREES
MENUITEM "Radians\tF3", ID_CALC_MS_RADIANS
MENUITEM "Grads\tF4", ID_CALC_MS_GRADS
MENUITEM SEPARATOR
MENUITEM "Digit Grouping", IDM_DIGIT_GROUPING
END
POPUP "&Help"
BEGIN
MENUITEM "Help Topics", IDM_HELP_TOPICS
MENUITEM SEPARATOR
MENUITEM "About Calculator", IDM_ABOUT
END
END
SCIWS_MENU MENU DISCARDABLE
BEGIN
POPUP "&Edit"
BEGIN
MENUITEM "&Copy Ctrl+C", IDM_COPY
MENUITEM "&Paste Ctrl+V", IDM_PASTE
END
POPUP "&View"
BEGIN
MENUITEM "Standard", IDM_MODE_STANDARD
MENUITEM "Scientific", IDM_MODE_SCIENTIFIC
MENUITEM SEPARATOR
MENUITEM "Hex\tF5", ID_CALC_NS_HEX
MENUITEM "Decimal\tF6", ID_CALC_NS_DEC
MENUITEM "Octal\tF7", ID_CALC_NS_OCT
MENUITEM "Binary\tF8", ID_CALC_NS_BIN
MENUITEM SEPARATOR
MENUITEM "Qword\tF12", ID_CALC_WS_QWORD
MENUITEM "Dword\tF2", ID_CALC_WS_DWORD
MENUITEM "Word\tF3", ID_CALC_WS_WORD
MENUITEM "Byte\tF4", ID_CALC_WS_BYTE
MENUITEM SEPARATOR
MENUITEM "Digit Grouping", IDM_DIGIT_GROUPING
END
POPUP "&Help"
BEGIN
MENUITEM "Help Topics", IDM_HELP_TOPICS
MENUITEM SEPARATOR
MENUITEM "About Calculator", IDM_ABOUT
END
END
MAIN_MENU ACCELERATORS
BEGIN
VK_F1, IDV_HELP, VIRTKEY
END
DLG_ABOUT DIALOGEX 12,0,175,90
CAPTION "About GNU winecalc"
IDD_DIALOG_ABOUT DIALOGEX DISCARDABLE 0, 0, 264, 169
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "About ReactOS Calc"
FONT 8, "MS Shell Dlg"
STYLE DS_MODALFRAME | DS_SHELLFONT | WS_POPUP | WS_CAPTION | WS_SYSMENU
BEGIN
DEFPUSHBUTTON "OK", IDOK, 73, 70, 30, 14, WS_CHILD | WS_VISIBLE | WS_TABSTOP
DEFPUSHBUTTON "OK",IDOK,105,148,52,16
CONTROL 106,IDC_STATIC,"Static",SS_BITMAP | SS_CENTERIMAGE |
SS_REALSIZEIMAGE | WS_BORDER,4,4,104,48
LTEXT "ReactOS Calculator",IDC_STATIC,120,12,132,8,
SS_CENTERIMAGE
LTEXT "Version ",IDC_TEXT_VERSION,120,20,132,8,SS_CENTERIMAGE
LTEXT "Written by Carlo Bramini",IDC_STATIC,120,32,132,8,
SS_CENTERIMAGE
GROUPBOX "",IDC_STATIC,112,0,148,52
GROUPBOX "",IDC_STATIC,4,56,256,88
EDITTEXT IDC_EDIT_LICENSE,12,68,240,68,ES_MULTILINE | ES_READONLY |
WS_VSCROLL
END
WHATS_THIS_MENU MENU DISCARDABLE
BEGIN
POPUP ""
BEGIN
MENUITEM "What's This?", IDM_WHATS_THIS
END
END
DLG_STATS DIALOGEX 12,0,145,85
CAPTION "Statistics Box"
IDD_DIALOG_STAT DIALOGEX DISCARDABLE 0, 0, 163, 85
STYLE DS_SHELLFONT | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Statistics box"
FONT 8, "MS Shell Dlg"
STYLE DS_MODALFRAME | DS_SHELLFONT | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE
BEGIN
DEFPUSHBUTTON "&RET", ID_STATS_RET, 4, 52, 30, 13, WS_TABSTOP | WS_GROUP
PUSHBUTTON "&LOAD", ID_STATS_LOAD, 39, 52, 30, 13, WS_TABSTOP | WS_GROUP
PUSHBUTTON "&CD" ID_STATS_CD, 74, 52, 30, 13, WS_TABSTOP | WS_GROUP
PUSHBUTTON "C&AD", ID_STATS_CAD, 109, 52, 30, 13, WS_TABSTOP | WS_GROUP
LISTBOX IDC_LIST_STAT,4,4,156,40,LBS_NOINTEGRALHEIGHT |
WS_VSCROLL | WS_TABSTOP
PUSHBUTTON "RET",IDC_BUTTON_RET,4,48,36,16
PUSHBUTTON "LOAD",IDC_BUTTON_LOAD,44,48,36,16
PUSHBUTTON "CD",IDC_BUTTON_CD,84,48,36,16
PUSHBUTTON "CAD",IDC_BUTTON_CAD,124,48,36,16
CTEXT "n=0",IDC_TEXT_NITEMS,4,68,156,12,SS_CENTERIMAGE |
SS_SUNKEN
END
// Menus
IDR_MENU_SCIENTIFIC_1 MENU DISCARDABLE
BEGIN
POPUP "Edit"
BEGIN
MENUITEM "Copy\tCTRL-C", IDM_EDIT_COPY
MENUITEM "Paste\tCTRL-V", IDM_EDIT_PASTE
END
POPUP "View"
BEGIN
MENUITEM "Standard", IDM_VIEW_STANDARD, CHECKED
MENUITEM "Scientific", IDM_VIEW_SCIENTIFIC, CHECKED
MENUITEM "Conversion", IDM_VIEW_CONVERSION
MENUITEM SEPARATOR
MENUITEM "Hex\tF5", IDM_VIEW_HEX, CHECKED
MENUITEM "Decimal\tF6", IDM_VIEW_DEC, CHECKED
MENUITEM "Octal\tF7", IDM_VIEW_OCT, CHECKED
MENUITEM "Binary\tF8", IDM_VIEW_BIN, CHECKED
MENUITEM SEPARATOR
MENUITEM "Degrees\tF2", IDM_VIEW_DEG, CHECKED
MENUITEM "Radians\tF3", IDM_VIEW_RAD, CHECKED
MENUITEM "Grads\tF4", IDM_VIEW_GRAD, CHECKED
MENUITEM SEPARATOR
MENUITEM "Group digits", IDM_VIEW_GROUP, CHECKED
END
POPUP "Help"
BEGIN
MENUITEM "Help topics", IDM_HELP_HELP
MENUITEM SEPARATOR
MENUITEM "About ReactOS Calc", IDM_HELP_ABOUT
END
END
IDR_MENU_SCIENTIFIC_2 MENU DISCARDABLE
BEGIN
POPUP "Edit"
BEGIN
MENUITEM "Copy\tCTRL-C", IDM_EDIT_COPY
MENUITEM "Paste\tCTRL-V", IDM_EDIT_PASTE
END
POPUP "View"
BEGIN
MENUITEM "Standard", IDM_VIEW_STANDARD, CHECKED
MENUITEM "Scientific", IDM_VIEW_SCIENTIFIC, CHECKED
MENUITEM "Conversion", IDM_VIEW_CONVERSION
MENUITEM SEPARATOR
MENUITEM "Hex\tF5", IDM_VIEW_HEX, CHECKED
MENUITEM "Decimal\tF6", IDM_VIEW_DEC, CHECKED
MENUITEM "Octal\tF7", IDM_VIEW_OCT, CHECKED
MENUITEM "Binary\tF8", IDM_VIEW_BIN, CHECKED
MENUITEM SEPARATOR
MENUITEM "Qword\tF12", IDM_VIEW_QWORD, CHECKED
MENUITEM "Dword\tF2", IDM_VIEW_DWORD, CHECKED
MENUITEM "Word\tF3", IDM_VIEW_WORD, CHECKED
MENUITEM "Byte\tF4", IDM_VIEW_BYTE, CHECKED
MENUITEM SEPARATOR
MENUITEM "Group digits", IDM_VIEW_GROUP, CHECKED
END
POPUP "Help"
BEGIN
MENUITEM "Help topics", IDM_HELP_HELP
MENUITEM SEPARATOR
MENUITEM "About ReactOS Calc", IDM_HELP_ABOUT
END
END
IDR_MENU_STANDARD MENU DISCARDABLE
BEGIN
POPUP "Edit"
BEGIN
MENUITEM "Copy\tCTRL-C", IDM_EDIT_COPY
MENUITEM "Paste\tCTRL-V", IDM_EDIT_PASTE
END
POPUP "View"
BEGIN
MENUITEM "Standard", IDM_VIEW_STANDARD, CHECKED
MENUITEM "Scientific", IDM_VIEW_SCIENTIFIC, CHECKED
MENUITEM "Conversion", IDM_VIEW_CONVERSION
MENUITEM SEPARATOR
MENUITEM "Group digits", IDM_VIEW_GROUP, CHECKED
END
POPUP "Help"
BEGIN
MENUITEM "Help topics", IDM_HELP_HELP
MENUITEM SEPARATOR
MENUITEM "About ReactOS Calc", IDM_HELP_ABOUT
END
END
// String Tables
STRINGTABLE DISCARDABLE
BEGIN
IDS_STRING_LICENSE "ReactOS Calc is free software released under GNU GPL license.\r\n\r\nYou can get a copy of GNU GPL license here:\r\nhttp://www.gnu.org/licenses/gpl.html\r\n\r\nYou can also get a translation of GNU GPL license here:\r\nhttp://www.gnu.org/licenses/translations.html"
IDS_MATH_ERROR "Error"
IDS_QUICKHELP "Quick help"
END

View File

@@ -1,173 +1,372 @@
/*
* WineCalc (Spanish resources)
*
* Copyright 2005 Patricio Mart<72>nez Ros
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*Spanish Language resource file
* Traducido por: Javier Remacha 2007-12-31
*/
#include "windows.h"
#include "resource.h"
#include "winecalc.h"
LANGUAGE LANG_SPANISH, SUBLANG_NEUTRAL
STRINGTABLE DISCARDABLE
// Dialog
IDD_DIALOG_SCIENTIFIC DIALOGEX 0, 0, 316, 161
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Calculadora ReactOS"
MENU IDR_MENU_SCIENTIFIC_1
FONT 8, "MS Shell Dlg", 0, 0, 0x1
BEGIN
IDS_APPNAME, "Calculadora"
IDS_COPYRIGHT1, "Calculadora 5.0. bajo licencia LGPL 2"
IDS_COPYRIGHT2 "Copyright 2003, James Briggs"
IDS_COPYRIGHT3 "San Jose, California, USA"
IDS_COPYRIGHT4 "james@ActionMessage.com"
IDS_COPYRIGHT5 "http://www.ActionMessage.com/winecalc/"
IDS_BTN_BACKSPACE, "Retroceso"
IDS_BTN_CLEAR_ENTRY, "CE"
IDS_BTN_CLEAR_ALL, "C"
IDS_BTN_MEM_CLEAR, "MC"
IDS_BTN_MEM_RECALL, "MR"
IDS_BTN_MEM_STORE, "MS"
IDS_BTN_MEM_PLUS, "M+"
IDS_BTN_MEM_STATUS_M, "M"
IDS_BTN_SQRT, "sqrt"
IDS_BTN_DEGREES, "Degrees"
IDS_BTN_RADIANS, "Radians"
IDS_BTN_GRADS, "Grads"
IDS_BTN_SHRT_HEX "Hex"
IDS_BTN_SHRT_DEC "Dec"
IDS_BTN_SHRT_OCT "Oct"
IDS_BTN_SHRT_BIN "Bin"
IDS_ERR_INVALID_INPUT, "Entrada no v<>lida para la funci<63>n."
IDS_ERR_DIVIDE_BY_ZERO, "No se puede dividir entre cero."
IDS_ERR_UNDEFINED, "El resultado de esta funci<63>n no est<73> definido."
GROUPBOX "",IDC_STATIC,4,16,132,21
CONTROL "Hex",IDC_RADIO_HEX,"Button",BS_AUTORADIOBUTTON,8,24,29,
10
CONTROL "Dec",IDC_RADIO_DEC,"Button",BS_AUTORADIOBUTTON,40,24,29,
10
CONTROL "Oct",IDC_RADIO_OCT,"Button",BS_AUTORADIOBUTTON,72,24,27,
10
CONTROL "Bin",IDC_RADIO_BIN,"Button",BS_AUTORADIOBUTTON,100,24,
26,10
GROUPBOX "",IDC_STATIC,4,36,76,21
CONTROL "Inv",IDC_CHECK_INV,"Button",BS_AUTOCHECKBOX |
WS_TABSTOP,8,44,26,10
CONTROL "Hyp",IDC_CHECK_HYP,"Button",BS_AUTOCHECKBOX |
WS_TABSTOP,40,44,29,10
CTEXT "",IDC_TEXT_PARENT,84,40,24,17,SS_CENTERIMAGE,
WS_EX_CLIENTEDGE
CTEXT "",IDC_TEXT_MEMORY,112,40,24,17,SS_CENTERIMAGE,
WS_EX_CLIENTEDGE
PUSHBUTTON "Sta",IDC_BUTTON_STA,4,64,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Ave",IDC_BUTTON_AVE,4,83,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | WS_DISABLED | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Sum",IDC_BUTTON_SUM,4,102,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | WS_DISABLED | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "s",IDC_BUTTON_S,4,121,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | WS_DISABLED | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Dat",IDC_BUTTON_DAT,4,140,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | WS_DISABLED | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "F-E",IDC_BUTTON_FE,38,64,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "gms",IDC_BUTTON_DMS,38,83,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "sin",IDC_BUTTON_SIN,38,102,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "cos",IDC_BUTTON_COS,38,121,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "tan",IDC_BUTTON_TAN,38,140,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "(",IDC_BUTTON_LEFTPAR,64,64,24,17,BS_CENTER |
BS_VCENTER | BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Exp",IDC_BUTTON_EXP,64,83,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "x^y",IDC_BUTTON_XeY,64,102,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "x^2",IDC_BUTTON_Xe2,64,121,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "x^3",IDC_BUTTON_Xe3,64,140,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON ")",IDC_BUTTON_RIGHTPAR,90,64,24,17,BS_CENTER |
BS_VCENTER | BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "ln",IDC_BUTTON_LN,90,83,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "log",IDC_BUTTON_LOG,90,102,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "n!",IDC_BUTTON_NF,90,121,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "1/x",IDC_BUTTON_RX,90,140,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "MC",IDC_BUTTON_MC,124,64,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "MR",IDC_BUTTON_MR,124,83,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "MS",IDC_BUTTON_MS,124,102,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "M+",IDC_BUTTON_MP,124,121,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "pi",IDC_BUTTON_PI,124,140,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "7",IDC_BUTTON_7,158,64,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "4",IDC_BUTTON_4,158,83,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "1",IDC_BUTTON_1,158,102,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "0",IDC_BUTTON_0,158,121,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "A",IDC_BUTTON_A,158,140,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "8",IDC_BUTTON_8,184,64,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "5",IDC_BUTTON_5,184,83,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "2",IDC_BUTTON_2,184,102,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "+/-",IDC_BUTTON_SIGN,184,121,24,17,BS_CENTER |
BS_VCENTER | BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "B",IDC_BUTTON_B,184,140,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "9",IDC_BUTTON_9,210,64,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "6",IDC_BUTTON_6,210,83,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "3",IDC_BUTTON_3,210,102,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON ",",IDC_BUTTON_DOT,210,121,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "C",IDC_BUTTON_C,210,140,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "/",IDC_BUTTON_DIV,236,64,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "*",IDC_BUTTON_MULT,236,83,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "-",IDC_BUTTON_SUB,236,102,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "+",IDC_BUTTON_ADD,236,121,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "D",IDC_BUTTON_D,236,140,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Mod",IDC_BUTTON_MOD,262,64,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Or",IDC_BUTTON_OR,262,83,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Lsh",IDC_BUTTON_LSH,262,102,24,17,BS_CENTER |
BS_VCENTER | BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "=",IDC_BUTTON_EQU,262,121,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "E",IDC_BUTTON_E,262,140,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "And",IDC_BUTTON_AND,288,64,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Xor",IDC_BUTTON_XOR,288,83,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Not",IDC_BUTTON_NOT,288,102,24,17,BS_CENTER |
BS_VCENTER | BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Int",IDC_BUTTON_INT,288,121,24,17,BS_CENTER |
BS_VCENTER | BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "F",IDC_BUTTON_F,288,140,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
GROUPBOX "",IDC_STATIC,140,16,172,21
CONTROL "Qword",IDC_RADIO_QWORD,"Button",BS_AUTORADIOBUTTON |
NOT WS_VISIBLE,148,24,37,10
CONTROL "Dword",IDC_RADIO_DWORD,"Button",BS_AUTORADIOBUTTON |
NOT WS_VISIBLE,188,24,37,10
CONTROL "Word",IDC_RADIO_WORD,"Button",BS_AUTORADIOBUTTON | NOT
WS_VISIBLE,232,24,33,10
CONTROL "Byte",IDC_RADIO_BYTE,"Button",BS_AUTORADIOBUTTON | NOT
WS_VISIBLE,272,24,30,10
CONTROL "Sexagesimal",IDC_RADIO_DEG,"Button",BS_AUTORADIOBUTTON,148,24,
54,10
CONTROL "Radi<64>n",IDC_RADIO_RAD,"Button",BS_AUTORADIOBUTTON,212,
24,42,10
CONTROL "Centesimal",IDC_RADIO_GRAD,"Button",BS_AUTORADIOBUTTON,
256,24,50,10
PUSHBUTTON "C",IDC_BUTTON_CANC,272,40,40,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "CE",IDC_BUTTON_CE,228,40,40,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Back",IDC_BUTTON_BACK,184,40,40,17,BS_CENTER |
BS_VCENTER | BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
RTEXT "",IDC_TEXT_OUTPUT,4,4,308,12,SS_CENTERIMAGE,
WS_EX_CLIENTEDGE
DEFPUSHBUTTON "",IDC_BUTTON_FOCUS,0,0,5,5, NOT WS_VISIBLE
END
MAIN_MENU MENU DISCARDABLE
IDD_DIALOG_STANDARD DIALOGEX 0, 0, 172, 127
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Calculadora ReactOS"
MENU IDR_MENU_STANDARD
FONT 8, "MS Shell Dlg", 0, 0, 0x1
BEGIN
POPUP "&Editar"
BEGIN
MENUITEM "&Copiar Ctrl+C", IDM_COPY
MENUITEM "&Pegar Ctrl+V", IDM_PASTE
END
POPUP "&Ver"
BEGIN
MENUITEM "Est<73>ndar", IDM_MODE_STANDARD
MENUITEM "Cient<6E>fica", IDM_MODE_SCIENTIFIC
MENUITEM SEPARATOR
MENUITEM "Agrupaci<63>n de d<>gitos", IDM_DIGIT_GROUPING
END
POPUP "Ayuda"
BEGIN
MENUITEM "Temas de Ayuda", IDM_HELP_TOPICS
MENUITEM SEPARATOR
MENUITEM "Acerca de Calculadora", IDM_ABOUT
END
PUSHBUTTON "C",IDC_BUTTON_CANC,128,24,40,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "CE",IDC_BUTTON_CE,84,24,40,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Retroceso",IDC_BUTTON_BACK,40,24,40,17,BS_CENTER |
BS_VCENTER | BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
RTEXT "",IDC_TEXT_OUTPUT,4,4,164,12,SS_CENTERIMAGE,
WS_EX_CLIENTEDGE
PUSHBUTTON "7",IDC_BUTTON_7,40,48,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "4",IDC_BUTTON_4,40,67,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "1",IDC_BUTTON_1,40,86,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "0",IDC_BUTTON_0,40,105,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "8",IDC_BUTTON_8,66,48,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "5",IDC_BUTTON_5,66,67,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "2",IDC_BUTTON_2,66,86,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "+/-",IDC_BUTTON_SIGN,66,105,24,17,BS_CENTER |
BS_VCENTER | BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "9",IDC_BUTTON_9,92,48,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "6",IDC_BUTTON_6,92,67,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "3",IDC_BUTTON_3,92,86,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON ",",IDC_BUTTON_DOT,92,105,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "/",IDC_BUTTON_DIV,118,48,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "*",IDC_BUTTON_MULT,118,67,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "-",IDC_BUTTON_SUB,118,86,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "+",IDC_BUTTON_ADD,118,105,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Sqrt",IDC_BUTTON_SQRT,144,48,24,17,BS_CENTER |
BS_VCENTER | BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "%",IDC_BUTTON_PERCENT,144,67,24,17,BS_CENTER |
BS_VCENTER | BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "1/x",IDC_BUTTON_RX,144,86,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "=",IDC_BUTTON_EQU,144,105,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
CTEXT "",IDC_TEXT_MEMORY,4,24,24,17,SS_CENTERIMAGE,
WS_EX_CLIENTEDGE
PUSHBUTTON "MC",IDC_BUTTON_MC,4,48,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "MR",IDC_BUTTON_MR,4,67,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "MS",IDC_BUTTON_MS,4,86,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "M+",IDC_BUTTON_MP,4,105,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
DEFPUSHBUTTON "",IDC_BUTTON_FOCUS,0,0,5,5, NOT WS_VISIBLE
END
SCIMS_MENU MENU DISCARDABLE
BEGIN
POPUP "&Editar"
BEGIN
MENUITEM "&Copiar Ctrl+C", IDM_COPY
MENUITEM "&Pegar Ctrl+V", IDM_PASTE
END
POPUP "&Ver"
BEGIN
MENUITEM "Est<73>ndar", IDM_MODE_STANDARD
MENUITEM "Cient<6E>fica", IDM_MODE_SCIENTIFIC
MENUITEM SEPARATOR
MENUITEM "Hesadecimal\tF5", ID_CALC_NS_HEX
MENUITEM "Decimal\tF6", ID_CALC_NS_DEC
MENUITEM "Octal\tF7", ID_CALC_NS_OCT
MENUITEM "Binario\tF8", ID_CALC_NS_BIN
MENUITEM SEPARATOR
MENUITEM "Sexagesimal\tF2", ID_CALC_MS_DEGREES
MENUITEM "Radi<64>n\tF3", ID_CALC_MS_RADIANS
MENUITEM "Centesimal\tF4", ID_CALC_MS_GRADS
MENUITEM SEPARATOR
MENUITEM "Agrupaci<63>n de d<>gitos", IDM_DIGIT_GROUPING
END
POPUP "Ayuda"
BEGIN
MENUITEM "Temas de Ayuda", IDM_HELP_TOPICS
MENUITEM SEPARATOR
MENUITEM "Acerca de Calculadora", IDM_ABOUT
END
END
SCIWS_MENU MENU DISCARDABLE
BEGIN
POPUP "&Editar"
BEGIN
MENUITEM "&Copiar Ctrl+C", IDM_COPY
MENUITEM "&Pegar Ctrl+V", IDM_PASTE
END
POPUP "&Ver"
BEGIN
MENUITEM "Est<73>ndar", IDM_MODE_STANDARD
MENUITEM "Cient<6E>fica", IDM_MODE_SCIENTIFIC
MENUITEM SEPARATOR
MENUITEM "Hexadecimal\tF5", ID_CALC_NS_HEX
MENUITEM "Decimal\tF6", ID_CALC_NS_DEC
MENUITEM "Octal\tF7", ID_CALC_NS_OCT
MENUITEM "Binario\tF8", ID_CALC_NS_BIN
MENUITEM SEPARATOR
MENUITEM "Qword\tF12", ID_CALC_WS_QWORD
MENUITEM "Dword\tF2", ID_CALC_WS_DWORD
MENUITEM "Word\tF3", ID_CALC_WS_WORD
MENUITEM "Byte\tF4", ID_CALC_WS_BYTE
MENUITEM SEPARATOR
MENUITEM "Agrupaci<63>n de d<>gitos", IDM_DIGIT_GROUPING
END
POPUP "Ayuda"
BEGIN
MENUITEM "Temas de Ayuda", IDM_HELP_TOPICS
MENUITEM SEPARATOR
MENUITEM "Acerca de Calculadora", IDM_ABOUT
END
END
MAIN_MENU ACCELERATORS
BEGIN
VK_F1, IDV_HELP, VIRTKEY
END
DLG_ABOUT DIALOGEX 12,0,175,90
CAPTION "Acerca de GNU winecalc"
IDD_DIALOG_ABOUT DIALOGEX DISCARDABLE 0, 0, 264, 169
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Acerca de Calculadora ReactOS"
FONT 8, "MS Shell Dlg"
STYLE DS_MODALFRAME | DS_SHELLFONT | WS_POPUP | WS_CAPTION | WS_SYSMENU
BEGIN
DEFPUSHBUTTON "Aceptar", IDOK, 73, 70, 30, 14, WS_CHILD | WS_VISIBLE | WS_TABSTOP
DEFPUSHBUTTON "Aceptar",IDOK,105,148,52,16
CONTROL 106,IDC_STATIC,"Static",SS_BITMAP | SS_CENTERIMAGE |
SS_REALSIZEIMAGE | WS_BORDER,4,4,104,48
LTEXT "Calculadora ReactOS",IDC_STATIC,120,12,132,8,
SS_CENTERIMAGE
LTEXT "Versi<73>n ",IDC_TEXT_VERSION,120,20,132,8,SS_CENTERIMAGE
LTEXT "Escrita por Carlo Bramini",IDC_STATIC,120,32,132,8,
SS_CENTERIMAGE
GROUPBOX "",IDC_STATIC,112,0,148,52
GROUPBOX "",IDC_STATIC,4,56,256,88
EDITTEXT IDC_EDIT_LICENSE,12,68,240,68,ES_MULTILINE | ES_READONLY |
WS_VSCROLL
END
WHATS_THIS_MENU MENU DISCARDABLE
BEGIN
POPUP ""
BEGIN
MENUITEM "<22>Qu<51> es esto?", IDM_WHATS_THIS
END
END
DLG_STATS DIALOGEX 12,0,145,85
IDD_DIALOG_STAT DIALOGEX DISCARDABLE 0, 0, 163, 85
STYLE DS_SHELLFONT | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Cuadro de estad<61>sticas"
FONT 8, "MS Shell Dlg"
STYLE DS_MODALFRAME | DS_SHELLFONT | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE
BEGIN
DEFPUSHBUTTON "&RET", ID_STATS_RET, 4, 52, 30, 13, WS_TABSTOP | WS_GROUP
PUSHBUTTON "&LOAD", ID_STATS_LOAD, 39, 52, 30, 13, WS_TABSTOP | WS_GROUP
PUSHBUTTON "&CD" ID_STATS_CD, 74, 52, 30, 13, WS_TABSTOP | WS_GROUP
PUSHBUTTON "C&AD", ID_STATS_CAD, 109, 52, 30, 13, WS_TABSTOP | WS_GROUP
LISTBOX IDC_LIST_STAT,4,4,156,40,LBS_NOINTEGRALHEIGHT |
WS_VSCROLL | WS_TABSTOP
PUSHBUTTON "RET",IDC_BUTTON_RET,4,48,36,16
PUSHBUTTON "Cargar",IDC_BUTTON_LOAD,44,48,36,16
PUSHBUTTON "CD",IDC_BUTTON_CD,84,48,36,16
PUSHBUTTON "CAD",IDC_BUTTON_CAD,124,48,36,16
CTEXT "n=0",IDC_TEXT_NITEMS,4,68,156,12,SS_CENTERIMAGE |
SS_SUNKEN
END
// Menus
IDR_MENU_SCIENTIFIC_1 MENU DISCARDABLE
BEGIN
POPUP "Edici<63>n"
BEGIN
MENUITEM "Copiar\tCTRL-C", IDM_EDIT_COPY
MENUITEM "Pegar\tCTRL-V", IDM_EDIT_PASTE
END
POPUP "Ver"
BEGIN
MENUITEM "Est<73>ndar", IDM_VIEW_STANDARD, CHECKED
MENUITEM "Cient<6E>fica", IDM_VIEW_SCIENTIFIC, CHECKED
MENUITEM "Conversi<73>n", IDM_VIEW_CONVERSION
MENUITEM SEPARATOR
MENUITEM "Hexadecimal\tF5", IDM_VIEW_HEX, CHECKED
MENUITEM "Decimal\tF6", IDM_VIEW_DEC, CHECKED
MENUITEM "Octal\tF7", IDM_VIEW_OCT, CHECKED
MENUITEM "Binario\tF8", IDM_VIEW_BIN, CHECKED
MENUITEM SEPARATOR
MENUITEM "Sexagesimal\tF2", IDM_VIEW_DEG, CHECKED
MENUITEM "Radi<64>n\tF3", IDM_VIEW_RAD, CHECKED
MENUITEM "Centesimal\tF4", IDM_VIEW_GRAD, CHECKED
MENUITEM SEPARATOR
MENUITEM "N<>mero de d<>gitos en grupo", IDM_VIEW_GROUP, CHECKED
END
POPUP "Ayuda"
BEGIN
MENUITEM "Temas de ayuda", IDM_HELP_HELP
MENUITEM SEPARATOR
MENUITEM "Acerca de Calculadora ReactOS", IDM_HELP_ABOUT
END
END
IDR_MENU_SCIENTIFIC_2 MENU DISCARDABLE
BEGIN
POPUP "Edici<63>n"
BEGIN
MENUITEM "Copiar\tCTRL-C", IDM_EDIT_COPY
MENUITEM "Pegar\tCTRL-V", IDM_EDIT_PASTE
END
POPUP "Ver"
BEGIN
MENUITEM "Est<73>ndar", IDM_VIEW_STANDARD, CHECKED
MENUITEM "Cient<6E>fica", IDM_VIEW_SCIENTIFIC, CHECKED
MENUITEM "Conversi<73>n", IDM_VIEW_CONVERSION
MENUITEM SEPARATOR
MENUITEM "Hexadecimal\tF5", IDM_VIEW_HEX, CHECKED
MENUITEM "Decimal\tF6", IDM_VIEW_DEC, CHECKED
MENUITEM "Octal\tF7", IDM_VIEW_OCT, CHECKED
MENUITEM "Binario\tF8", IDM_VIEW_BIN, CHECKED
MENUITEM SEPARATOR
MENUITEM "Qword\tF12", IDM_VIEW_QWORD, CHECKED
MENUITEM "Dword\tF2", IDM_VIEW_DWORD, CHECKED
MENUITEM "Word\tF3", IDM_VIEW_WORD, CHECKED
MENUITEM "Byte\tF4", IDM_VIEW_BYTE, CHECKED
MENUITEM SEPARATOR
MENUITEM "N<>mero de d<>gitos en grupo", IDM_VIEW_GROUP, CHECKED
END
POPUP "Ayuda"
BEGIN
MENUITEM "Temas de ayuda", IDM_HELP_HELP
MENUITEM SEPARATOR
MENUITEM "Acerca de Calculadora ReactOS", IDM_HELP_ABOUT
END
END
IDR_MENU_STANDARD MENU DISCARDABLE
BEGIN
POPUP "Edici<63>n"
BEGIN
MENUITEM "Copiar\tCTRL-C", IDM_EDIT_COPY
MENUITEM "Pegar\tCTRL-V", IDM_EDIT_PASTE
END
POPUP "Ver"
BEGIN
MENUITEM "Est<73>ndar", IDM_VIEW_STANDARD, CHECKED
MENUITEM "Cient<6E>fica", IDM_VIEW_SCIENTIFIC, CHECKED
MENUITEM "Conversi<73>n", IDM_VIEW_CONVERSION
MENUITEM SEPARATOR
MENUITEM "N<>mero de d<>gitos en grupo", IDM_VIEW_GROUP, CHECKED
END
POPUP "Ayuda"
BEGIN
MENUITEM "Temas de ayuda", IDM_HELP_HELP
MENUITEM SEPARATOR
MENUITEM "Acerca de Calculadora ReactOS", IDM_HELP_ABOUT
END
END
// String Tables
STRINGTABLE DISCARDABLE
BEGIN
IDS_STRING_LICENSE "Calculadora ReactOS es software gratuito realizado bajo licencia GNU GPL.\r\n\r\nPuedes coger una copia de la licencia GNU GPL aqu<71>:\r\nhttp://www.gnu.org/licenses/gpl.html\r\n\r\nPuedes tambi<62>n coger una traducci<63>n de la licencia GNU GPL aqu<71>:\r\nhttp://www.gnu.org/licenses/translations.html"
IDS_MATH_ERROR "Error"
IDS_QUICKHELP "Ayuda r<>pida"
END

View File

@@ -1,149 +0,0 @@
LANGUAGE LANG_FINNISH, SUBLANG_DEFAULT
STRINGTABLE DISCARDABLE
BEGIN
IDS_APPNAME, "Laskin"
IDS_COPYRIGHT1, "Calculator 5.0. Licensed under LGPL 2"
IDS_COPYRIGHT2 "Copyright 2003, James Briggs"
IDS_COPYRIGHT3 "San Jose, California, USA"
IDS_COPYRIGHT4 "james@ActionMessage.com"
IDS_COPYRIGHT5 "http://www.ActionMessage.com/winecalc/"
IDS_BTN_BACKSPACE, "Takaisin"
IDS_BTN_CLEAR_ENTRY, "CE"
IDS_BTN_CLEAR_ALL, "C"
IDS_BTN_MEM_CLEAR, "MC"
IDS_BTN_MEM_RECALL, "MR"
IDS_BTN_MEM_STORE, "MS"
IDS_BTN_MEM_PLUS, "M+"
IDS_BTN_MEM_STATUS_M, "M"
IDS_BTN_SQRT, "sqrt"
IDS_BTN_DEGREES, "Degrees"
IDS_BTN_RADIANS, "Radians"
IDS_BTN_GRADS, "Grads"
IDS_BTN_SHRT_HEX "Hex"
IDS_BTN_SHRT_DEC "Dec"
IDS_BTN_SHRT_OCT "Oct"
IDS_BTN_SHRT_BIN "Bin"
IDS_ERR_INVALID_INPUT, "Väärä syöte funktiolle."
IDS_ERR_DIVIDE_BY_ZERO, "Nollalla ei voi jakaa."
IDS_ERR_UNDEFINED, "Result of function is undefined."
END
MAIN_MENU MENU DISCARDABLE
BEGIN
POPUP "&Muokkaa"
BEGIN
MENUITEM "K&opioi Ctrl+C", IDM_COPY
MENUITEM "L&iitä Ctrl+V", IDM_PASTE
END
POPUP "&Näytä"
BEGIN
MENUITEM "Nelilaskin", IDM_MODE_STANDARD
MENUITEM "Funktiolaskin", IDM_MODE_SCIENTIFIC
MENUITEM SEPARATOR
MENUITEM "Lukujen ryhmittely", IDM_DIGIT_GROUPING
END
POPUP "&Ohje"
BEGIN
MENUITEM "Ohjeen aiheet", IDM_HELP_TOPICS
MENUITEM SEPARATOR
MENUITEM "Tietoja Laskimesta", IDM_ABOUT
END
END
SCIMS_MENU MENU DISCARDABLE
BEGIN
POPUP "&Muokkaa"
BEGIN
MENUITEM "K&opioi Ctrl+C", IDM_COPY
MENUITEM "L&iitä Ctrl+V", IDM_PASTE
END
POPUP "&Näytä"
BEGIN
MENUITEM "Nelilaskin", IDM_MODE_STANDARD
MENUITEM "Funktiolaskin", IDM_MODE_SCIENTIFIC
MENUITEM SEPARATOR
MENUITEM "Hex\tF5", ID_CALC_NS_HEX
MENUITEM "Decimal\tF6", ID_CALC_NS_DEC
MENUITEM "Octal\tF7", ID_CALC_NS_OCT
MENUITEM "Binary\tF8", ID_CALC_NS_BIN
MENUITEM SEPARATOR
MENUITEM "Degrees\tF2", ID_CALC_MS_DEGREES
MENUITEM "Radians\tF3", ID_CALC_MS_RADIANS
MENUITEM "Grads\tF4", ID_CALC_MS_GRADS
MENUITEM SEPARATOR
MENUITEM "Lukujen ryhmittely", IDM_DIGIT_GROUPING
END
POPUP "&Ohje"
BEGIN
MENUITEM "Ohjeen aiheet", IDM_HELP_TOPICS
MENUITEM SEPARATOR
MENUITEM "Tietoja Laskimesta", IDM_ABOUT
END
END
SCIWS_MENU MENU DISCARDABLE
BEGIN
POPUP "&Muokkaa"
BEGIN
MENUITEM "K&opioi Ctrl+C", IDM_COPY
MENUITEM "L&iitä Ctrl+V", IDM_PASTE
END
POPUP "&View"
BEGIN
MENUITEM "Nelilaskin", IDM_MODE_STANDARD
MENUITEM "Funktiolaskin", IDM_MODE_SCIENTIFIC
MENUITEM SEPARATOR
MENUITEM "Hex\tF5", ID_CALC_NS_HEX
MENUITEM "Decimal\tF6", ID_CALC_NS_DEC
MENUITEM "Octal\tF7", ID_CALC_NS_OCT
MENUITEM "Binary\tF8", ID_CALC_NS_BIN
MENUITEM SEPARATOR
MENUITEM "Qword\tF12", ID_CALC_WS_QWORD
MENUITEM "Dword\tF2", ID_CALC_WS_DWORD
MENUITEM "Word\tF3", ID_CALC_WS_WORD
MENUITEM "Byte\tF4", ID_CALC_WS_BYTE
MENUITEM SEPARATOR
MENUITEM "Lukujen ryhmittely", IDM_DIGIT_GROUPING
END
POPUP "&Ohje"
BEGIN
MENUITEM "Ohjeen aiheet", IDM_HELP_TOPICS
MENUITEM SEPARATOR
MENUITEM "Tietoja Laskimesta", IDM_ABOUT
END
END
MAIN_MENU ACCELERATORS
BEGIN
VK_F1, IDV_HELP, VIRTKEY
END
DLG_ABOUT DIALOGEX 12,0,175,90
CAPTION "About GNU winecalc"
FONT 8, "MS Shell Dlg"
STYLE DS_MODALFRAME | DS_SHELLFONT | WS_POPUP | WS_CAPTION | WS_SYSMENU
BEGIN
DEFPUSHBUTTON "OK", IDOK, 73, 70, 30, 14, WS_CHILD | WS_VISIBLE | WS_TABSTOP
END
WHATS_THIS_MENU MENU DISCARDABLE
BEGIN
POPUP ""
BEGIN
MENUITEM "Mikä tämä on?", IDM_WHATS_THIS
END
END
DLG_STATS DIALOGEX 12,0,145,85
CAPTION "Statistics Box"
FONT 8, "MS Shell Dlg"
STYLE DS_MODALFRAME | DS_SHELLFONT | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE
BEGIN
DEFPUSHBUTTON "&RET", ID_STATS_RET, 4, 52, 30, 13, WS_TABSTOP | WS_GROUP
PUSHBUTTON "&LOAD", ID_STATS_LOAD, 39, 52, 30, 13, WS_TABSTOP | WS_GROUP
PUSHBUTTON "&CD" ID_STATS_CD, 74, 52, 30, 13, WS_TABSTOP | WS_GROUP
PUSHBUTTON "C&AD", ID_STATS_CAD, 109, 52, 30, 13, WS_TABSTOP | WS_GROUP
END

View File

@@ -1,176 +0,0 @@
/*
* WineCalc (fr-FR.rc)
*
* Copyright 2003 James Briggs
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
/*
* Translation made by Jerome Signouret, 2005.
* Updated by Pierre Schweitzer, 2007.
*/
#include "windows.h"
#include "resource.h"
#include "winecalc.h"
LANGUAGE LANG_FRENCH, SUBLANG_NEUTRAL
STRINGTABLE DISCARDABLE
BEGIN
IDS_APPNAME, "Calculatrice"
IDS_COPYRIGHT1, "Calculatrice 5.0. Licensed under LGPL 2"
IDS_COPYRIGHT2 "Copyright 2003, James Briggs"
IDS_COPYRIGHT3 "San Jose, California, USA"
IDS_COPYRIGHT4 "james@ActionMessage.com"
IDS_COPYRIGHT5 "http://www.ActionMessage.com/winecalc/"
IDS_BTN_BACKSPACE, "Effacer"
IDS_BTN_CLEAR_ENTRY, "CE"
IDS_BTN_CLEAR_ALL, "C"
IDS_BTN_MEM_CLEAR, "MC"
IDS_BTN_MEM_RECALL, "MR"
IDS_BTN_MEM_STORE, "MS"
IDS_BTN_MEM_PLUS, "M+"
IDS_BTN_MEM_STATUS_M, "M"
IDS_BTN_SQRT, "sqrt"
IDS_BTN_DEGREES, "Degr<67>s"
IDS_BTN_RADIANS, "Radians"
IDS_BTN_GRADS, "Grades"
IDS_BTN_SHRT_HEX "Hex"
IDS_BTN_SHRT_DEC "D<>c"
IDS_BTN_SHRT_OCT "Oct"
IDS_BTN_SHRT_BIN "Bin"
IDS_ERR_INVALID_INPUT, "Entr<74>e incorrecte pour l'op<6F>ration."
IDS_ERR_DIVIDE_BY_ZERO, "Division par z<>ro impossble."
IDS_ERR_UNDEFINED, "R<>sultat non d<>fini."
END
MAIN_MENU MENU DISCARDABLE
BEGIN
POPUP "&<26>dition"
BEGIN
MENUITEM "Co&pier Ctrl+C", IDM_COPY
MENUITEM "C&oller Ctrl+V", IDM_PASTE
END
POPUP "&Affichage"
BEGIN
MENUITEM "Standard", IDM_MODE_STANDARD
MENUITEM "Scientifique", IDM_MODE_SCIENTIFIC
MENUITEM SEPARATOR
MENUITEM "S<>parateur", IDM_DIGIT_GROUPING
END
POPUP "Ai&de"
BEGIN
MENUITEM "Somaire", IDM_HELP_TOPICS
MENUITEM SEPARATOR
MENUITEM "A propos", IDM_ABOUT
END
END
SCIMS_MENU MENU DISCARDABLE
BEGIN
POPUP "&<26>dition"
BEGIN
MENUITEM "Co&pier Ctrl+C", IDM_COPY
MENUITEM "C&oller Ctrl+V", IDM_PASTE
END
POPUP "&Affichage"
BEGIN
MENUITEM "Standard", IDM_MODE_STANDARD
MENUITEM "Scientifique", IDM_MODE_SCIENTIFIC
MENUITEM SEPARATOR
MENUITEM "Hexad<61>cimal\tF5", ID_CALC_NS_HEX
MENUITEM "D<>cimal\tF6", ID_CALC_NS_DEC
MENUITEM "Octal\tF7", ID_CALC_NS_OCT
MENUITEM "Binaire\tF8", ID_CALC_NS_BIN
MENUITEM SEPARATOR
MENUITEM "Degr<67>s\tF2", ID_CALC_MS_DEGREES
MENUITEM "Radians\tF3", ID_CALC_MS_RADIANS
MENUITEM "Grades\tF4", ID_CALC_MS_GRADS
MENUITEM SEPARATOR
MENUITEM "S<>parateur", IDM_DIGIT_GROUPING
END
POPUP "Ai&de"
BEGIN
MENUITEM "Sommaire", IDM_HELP_TOPICS
MENUITEM SEPARATOR
MENUITEM "<22> propos", IDM_ABOUT
END
END
SCIWS_MENU MENU DISCARDABLE
BEGIN
POPUP "&<26>dition"
BEGIN
MENUITEM "Co&pier Ctrl+C", IDM_COPY
MENUITEM "C&oller Ctrl+V", IDM_PASTE
END
POPUP "&Affichage"
BEGIN
MENUITEM "Standard", IDM_MODE_STANDARD
MENUITEM "Scientifique", IDM_MODE_SCIENTIFIC
MENUITEM SEPARATOR
MENUITEM "Hexad<61>cimal\tF5", ID_CALC_NS_HEX
MENUITEM "D<>cimal\tF6", ID_CALC_NS_DEC
MENUITEM "Octal\tF7", ID_CALC_NS_OCT
MENUITEM "Binaire\tF8", ID_CALC_NS_BIN
MENUITEM SEPARATOR
MENUITEM "Qword\tF12", ID_CALC_WS_QWORD
MENUITEM "Dword\tF2", ID_CALC_WS_DWORD
MENUITEM "Word\tF3", ID_CALC_WS_WORD
MENUITEM "Byte\tF4", ID_CALC_WS_BYTE
MENUITEM SEPARATOR
MENUITEM "S<>parateur", IDM_DIGIT_GROUPING
END
POPUP "Ai&de"
BEGIN
MENUITEM "Sommaire", IDM_HELP_TOPICS
MENUITEM SEPARATOR
MENUITEM "<22> propos", IDM_ABOUT
END
END
MAIN_MENU ACCELERATORS
BEGIN
VK_F1, IDV_HELP, VIRTKEY
END
DLG_ABOUT DIALOGEX 12,0,175,90
CAPTION "<22> propos de GNU winecalc"
FONT 8, "MS Shell Dlg"
STYLE DS_MODALFRAME | DS_SHELLFONT | WS_POPUP | WS_CAPTION | WS_SYSMENU
BEGIN
DEFPUSHBUTTON "OK", IDOK, 73, 70, 30, 14, WS_CHILD | WS_VISIBLE | WS_TABSTOP
END
WHATS_THIS_MENU MENU DISCARDABLE
BEGIN
POPUP ""
BEGIN
MENUITEM "Qu'est-ce ?", IDM_WHATS_THIS
END
END
DLG_STATS DIALOGEX 12,0,145,85
CAPTION "Outils Statistiques Box"
FONT 8, "MS Shell Dlg"
STYLE DS_MODALFRAME | DS_SHELLFONT | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE
BEGIN
DEFPUSHBUTTON "&RET", ID_STATS_RET, 4, 52, 30, 13, WS_TABSTOP | WS_GROUP
PUSHBUTTON "&LOAD", ID_STATS_LOAD, 39, 52, 30, 13, WS_TABSTOP | WS_GROUP
PUSHBUTTON "&CD" ID_STATS_CD, 74, 52, 30, 13, WS_TABSTOP | WS_GROUP
PUSHBUTTON "C&AD", ID_STATS_CAD, 109, 52, 30, 13, WS_TABSTOP | WS_GROUP
END

View File

@@ -1,174 +0,0 @@
/*
* WineCalc (hu-HU.rc)
*
* Copyright 2003 James Briggs
* Hungarian translation by Adam Medveczky
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
#include "windows.h"
#include "resource.h"
#include "winecalc.h"
LANGUAGE LANG_HUNGARIAN, SUBLANG_DEFAULT
STRINGTABLE DISCARDABLE
BEGIN
IDS_APPNAME, "Sz<53>mol<6F>g<EFBFBD>p"
IDS_COPYRIGHT1, "Calculator 5.0. Licensed under LGPL 2"
IDS_COPYRIGHT2 "Copyright 2003, James Briggs"
IDS_COPYRIGHT3 "San Jose, California, USA"
IDS_COPYRIGHT4 "james@ActionMessage.com"
IDS_COPYRIGHT5 "http://www.ActionMessage.com/winecalc/"
IDS_BTN_BACKSPACE, "Backspace"
IDS_BTN_CLEAR_ENTRY, "CE"
IDS_BTN_CLEAR_ALL, "C"
IDS_BTN_MEM_CLEAR, "MC"
IDS_BTN_MEM_RECALL, "MR"
IDS_BTN_MEM_STORE, "MS"
IDS_BTN_MEM_PLUS, "M+"
IDS_BTN_MEM_STATUS_M, "M"
IDS_BTN_SQRT, "gy<67>k"
IDS_BTN_DEGREES, "Degrees"
IDS_BTN_RADIANS, "Radians"
IDS_BTN_GRADS, "Grads"
IDS_BTN_SHRT_HEX "Hex"
IDS_BTN_SHRT_DEC "Dec"
IDS_BTN_SHRT_OCT "Oct"
IDS_BTN_SHRT_BIN "Bin"
IDS_ERR_INVALID_INPUT, "Hib<69>s bemenet."
IDS_ERR_DIVIDE_BY_ZERO, "Nem tudok null<6C>val osztani."
IDS_ERR_UNDEFINED, "Result of function is undefined."
END
MAIN_MENU MENU DISCARDABLE
BEGIN
POPUP "&Szerkeszt<7A>s"
BEGIN
MENUITEM "&M<>sol<6F>s Ctrl+C", IDM_COPY
MENUITEM "&Beilleszt<7A>s Ctrl+V", IDM_PASTE
END
POPUP "&N<>zet"
BEGIN
MENUITEM "Alap", IDM_MODE_STANDARD
MENUITEM "Tudom<6F>nyos", IDM_MODE_SCIENTIFIC
MENUITEM SEPARATOR
MENUITEM "Sz<53>mjegyek csoportos<6F>t<EFBFBD>sa", IDM_DIGIT_GROUPING
END
POPUP "S<>&g<>"
BEGIN
MENUITEM "&T<>mak<61>r<EFBFBD>k", IDM_HELP_TOPICS
MENUITEM SEPARATOR
MENUITEM "Sz<53>mol<6F>g<EFBFBD>p n<>vjegye", IDM_ABOUT
END
END
SCIMS_MENU MENU DISCARDABLE
BEGIN
POPUP "&Szerkeszt<7A>s"
BEGIN
MENUITEM "&M<>sol<6F>s Ctrl+C", IDM_COPY
MENUITEM "&Beilleszt<7A>s Ctrl+V", IDM_PASTE
END
POPUP "&N<>zet"
BEGIN
MENUITEM "Alap", IDM_MODE_STANDARD
MENUITEM "Tudom<6F>nyos", IDM_MODE_SCIENTIFIC
MENUITEM SEPARATOR
MENUITEM "Hexadecim<69>lis\tF5", ID_CALC_NS_HEX
MENUITEM "Decim<69>lis\tF6", ID_CALC_NS_DEC
MENUITEM "Okt<6B>lis\tF7", ID_CALC_NS_OCT
MENUITEM "Bin<69>ris\tF8", ID_CALC_NS_BIN
MENUITEM SEPARATOR
MENUITEM "Fok\tF2", ID_CALC_MS_DEGREES
MENUITEM "Radi<64>n\tF3", ID_CALC_MS_RADIANS
MENUITEM "<22>jfok\tF4", ID_CALC_MS_GRADS
MENUITEM SEPARATOR
MENUITEM "Sz<53>mjegyek csoportos<6F>t<EFBFBD>sa", IDM_DIGIT_GROUPING
END
POPUP "S<>&g<>"
BEGIN
MENUITEM "&T<>mak<61>r<EFBFBD>k", IDM_HELP_TOPICS
MENUITEM SEPARATOR
MENUITEM "Sz<53>mol<6F>g<EFBFBD>p n<>vjegye", IDM_ABOUT
END
END
SCIWS_MENU MENU DISCARDABLE
BEGIN
POPUP "&Szerkeszt<7A>s"
BEGIN
MENUITEM "&M<>sol<6F>s Ctrl+C", IDM_COPY
MENUITEM "&Beilleszt<7A>s Ctrl+V", IDM_PASTE
END
POPUP "&N<>zet"
BEGIN
MENUITEM "Alap", IDM_MODE_STANDARD
MENUITEM "Tudom<6F>nyos", IDM_MODE_SCIENTIFIC
MENUITEM SEPARATOR
MENUITEM "Hexadecim<69>lis\tF5", ID_CALC_NS_HEX
MENUITEM "Decim<69>lis\tF6", ID_CALC_NS_DEC
MENUITEM "Okt<6B>lis\tF7", ID_CALC_NS_OCT
MENUITEM "Bin<69>ris\tF8", ID_CALC_NS_BIN
MENUITEM SEPARATOR
MENUITEM "N<>gyszeres sz<73>\tF12", ID_CALC_WS_QWORD
MENUITEM "Duplasz<73>\tF2", ID_CALC_WS_DWORD
MENUITEM "Sz<53>\tF3", ID_CALC_WS_WORD
MENUITEM "B<>jt\tF4", ID_CALC_WS_BYTE
MENUITEM SEPARATOR
MENUITEM "Sz<53>mjegyek csoportos<6F>t<EFBFBD>sa", IDM_DIGIT_GROUPING
END
POPUP "S<>&g<>"
BEGIN
MENUITEM "&T<>mak<61>r<EFBFBD>k", IDM_HELP_TOPICS
MENUITEM SEPARATOR
MENUITEM "Sz<53>mol<6F>g<EFBFBD>p n<>vjegye", IDM_ABOUT
END
END
MAIN_MENU ACCELERATORS
BEGIN
VK_F1, IDV_HELP, VIRTKEY
END
DLG_ABOUT DIALOGEX 12,0,175,90
CAPTION "GNU winecalc (sz<73>mol<6F>g<EFBFBD>p) n<>vjegye"
FONT 8, "MS Shell Dlg"
STYLE DS_MODALFRAME | DS_SHELLFONT | WS_POPUP | WS_CAPTION | WS_SYSMENU
BEGIN
DEFPUSHBUTTON "OK", IDOK, 73, 70, 30, 14, WS_CHILD | WS_VISIBLE | WS_TABSTOP
END
WHATS_THIS_MENU MENU DISCARDABLE
BEGIN
POPUP ""
BEGIN
MENUITEM "Mi ez?", IDM_WHATS_THIS
END
END
DLG_STATS DIALOGEX 12,0,145,85
CAPTION "Statisztika"
FONT 8, "MS Shell Dlg"
STYLE DS_MODALFRAME | DS_SHELLFONT | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE
BEGIN
DEFPUSHBUTTON "&RET", ID_STATS_RET, 4, 52, 30, 13, WS_TABSTOP | WS_GROUP
PUSHBUTTON "&LOAD", ID_STATS_LOAD, 39, 52, 30, 13, WS_TABSTOP | WS_GROUP
PUSHBUTTON "&CD" ID_STATS_CD, 74, 52, 30, 13, WS_TABSTOP | WS_GROUP
PUSHBUTTON "C&AD", ID_STATS_CAD, 109, 52, 30, 13, WS_TABSTOP | WS_GROUP
END

View File

@@ -1,173 +0,0 @@
/*
* WineCalc (id-ID.rc)
*
* Copyright 2007 Zaenal Mutaqin (ade999@gmail.com)
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
#include "windows.h"
#include "resource.h"
#include "winecalc.h"
LANGUAGE LANG_INDONESIAN, SUBLANG_DEFAULT
STRINGTABLE DISCARDABLE
BEGIN
IDS_APPNAME, "Kalkulator"
IDS_COPYRIGHT1, "Kalkulator 5.0. Dilisensi di bawah LGPL 2"
IDS_COPYRIGHT2 "Hak Cipta 2003, James Briggs"
IDS_COPYRIGHT3 "San Jose, California, USA"
IDS_COPYRIGHT4 "james@ActionMessage.com"
IDS_COPYRIGHT5 "http://www.ActionMessage.com/winecalc/"
IDS_BTN_BACKSPACE, "Backspace"
IDS_BTN_CLEAR_ENTRY, "CE"
IDS_BTN_CLEAR_ALL, "C"
IDS_BTN_MEM_CLEAR, "MC"
IDS_BTN_MEM_RECALL, "MR"
IDS_BTN_MEM_STORE, "MS"
IDS_BTN_MEM_PLUS, "M+"
IDS_BTN_MEM_STATUS_M, "M"
IDS_BTN_SQRT, "sqrt"
IDS_BTN_DEGREES, "Degrees"
IDS_BTN_RADIANS, "Radians"
IDS_BTN_GRADS, "Grads"
IDS_BTN_SHRT_HEX "Hex"
IDS_BTN_SHRT_DEC "Dec"
IDS_BTN_SHRT_OCT "Oct"
IDS_BTN_SHRT_BIN "Bin"
IDS_ERR_INVALID_INPUT, "Input untuk fungsi tidak benar."
IDS_ERR_DIVIDE_BY_ZERO, "Tidak bisa membagi dengan nol."
IDS_ERR_UNDEFINED, "Hasil fungsi tidak terdefinisikan."
END
MAIN_MENU MENU DISCARDABLE
BEGIN
POPUP "&Edit"
BEGIN
MENUITEM "&Copy Ctrl+C", IDM_COPY
MENUITEM "&Paste Ctrl+V", IDM_PASTE
END
POPUP "&Lihat"
BEGIN
MENUITEM "Standar", IDM_MODE_STANDARD
MENUITEM "Sains", IDM_MODE_SCIENTIFIC
MENUITEM SEPARATOR
MENUITEM "Pengelompokan Digit", IDM_DIGIT_GROUPING
END
POPUP "&Bantuan"
BEGIN
MENUITEM "Topik Bantuan", IDM_HELP_TOPICS
MENUITEM SEPARATOR
MENUITEM "Tentang Kalkulator", IDM_ABOUT
END
END
SCIMS_MENU MENU DISCARDABLE
BEGIN
POPUP "&Edit"
BEGIN
MENUITEM "&Copy Ctrl+C", IDM_COPY
MENUITEM "&Paste Ctrl+V", IDM_PASTE
END
POPUP "&Lihat"
BEGIN
MENUITEM "Standar", IDM_MODE_STANDARD
MENUITEM "Sains", IDM_MODE_SCIENTIFIC
MENUITEM SEPARATOR
MENUITEM "Heksa\tF5", ID_CALC_NS_HEX
MENUITEM "Desimal\tF6", ID_CALC_NS_DEC
MENUITEM "Oktal\tF7", ID_CALC_NS_OCT
MENUITEM "Biner\tF8", ID_CALC_NS_BIN
MENUITEM SEPARATOR
MENUITEM "Derajat\tF2", ID_CALC_MS_DEGREES
MENUITEM "Radian\tF3", ID_CALC_MS_RADIANS
MENUITEM "Grads\tF4", ID_CALC_MS_GRADS
MENUITEM SEPARATOR
MENUITEM "Pengelompokan Digit", IDM_DIGIT_GROUPING
END
POPUP "&Bantuan"
BEGIN
MENUITEM "Topik Bantuan", IDM_HELP_TOPICS
MENUITEM SEPARATOR
MENUITEM "Tentang Kalkulator", IDM_ABOUT
END
END
SCIWS_MENU MENU DISCARDABLE
BEGIN
POPUP "&Edit"
BEGIN
MENUITEM "&Copy Ctrl+C", IDM_COPY
MENUITEM "&Paste Ctrl+V", IDM_PASTE
END
POPUP "&Lihat"
BEGIN
MENUITEM "Standar", IDM_MODE_STANDARD
MENUITEM "Sains", IDM_MODE_SCIENTIFIC
MENUITEM SEPARATOR
MENUITEM "Heksa\tF5", ID_CALC_NS_HEX
MENUITEM "Desimal\tF6", ID_CALC_NS_DEC
MENUITEM "Oktal\tF7", ID_CALC_NS_OCT
MENUITEM "Biner\tF8", ID_CALC_NS_BIN
MENUITEM SEPARATOR
MENUITEM "Qword\tF12", ID_CALC_WS_QWORD
MENUITEM "Dword\tF2", ID_CALC_WS_DWORD
MENUITEM "Word\tF3", ID_CALC_WS_WORD
MENUITEM "Byte\tF4", ID_CALC_WS_BYTE
MENUITEM SEPARATOR
MENUITEM "Pengelompokan Digit", IDM_DIGIT_GROUPING
END
POPUP "&Bantuan"
BEGIN
MENUITEM "Topik Bantuan", IDM_HELP_TOPICS
MENUITEM SEPARATOR
MENUITEM "Tentang Kalkulator", IDM_ABOUT
END
END
MAIN_MENU ACCELERATORS
BEGIN
VK_F1, IDV_HELP, VIRTKEY
END
DLG_ABOUT DIALOGEX 12,0,175,90
CAPTION "Tentang GNU WineCalc"
FONT 8, "MS Shell Dlg"
STYLE DS_MODALFRAME | DS_SHELLFONT | WS_POPUP | WS_CAPTION | WS_SYSMENU
BEGIN
DEFPUSHBUTTON "OK", IDOK, 73, 70, 30, 14, WS_CHILD | WS_VISIBLE | WS_TABSTOP
END
WHATS_THIS_MENU MENU DISCARDABLE
BEGIN
POPUP ""
BEGIN
MENUITEM "Apa Ini?", IDM_WHATS_THIS
END
END
DLG_STATS DIALOGEX 12,0,145,85
CAPTION "Kotak Statistik"
FONT 8, "MS Shell Dlg"
STYLE DS_MODALFRAME | DS_SHELLFONT | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE
BEGIN
DEFPUSHBUTTON "&RET", ID_STATS_RET, 4, 52, 30, 13, WS_TABSTOP | WS_GROUP
PUSHBUTTON "&LOAD", ID_STATS_LOAD, 39, 52, 30, 13, WS_TABSTOP | WS_GROUP
PUSHBUTTON "&CD" ID_STATS_CD, 74, 52, 30, 13, WS_TABSTOP | WS_GROUP
PUSHBUTTON "C&AD", ID_STATS_CAD, 109, 52, 30, 13, WS_TABSTOP | WS_GROUP
END

View File

@@ -1,173 +1,365 @@
/*
* WineCalc (it-IT.rc)
*
* Copyright 2006 Gabriel ilardi
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
#include "windows.h"
#include "resource.h"
#include "winecalc.h"
LANGUAGE LANG_ITALIAN, SUBLANG_NEUTRAL
STRINGTABLE DISCARDABLE
BEGIN
IDS_APPNAME, "Calcolatrice"
// Dialog
IDS_COPYRIGHT1, "Calcolatrice 5.0. sotto licenza LGPL 2"
IDS_COPYRIGHT2 "Copyright 2003, James Briggs"
IDS_COPYRIGHT3 "San Jose, California, USA"
IDS_COPYRIGHT4 "james@ActionMessage.com"
IDS_COPYRIGHT5 "http://www.ActionMessage.com/winecalc/"
IDS_BTN_BACKSPACE, "Backspace"
IDS_BTN_CLEAR_ENTRY, "CE"
IDS_BTN_CLEAR_ALL, "C"
IDS_BTN_MEM_CLEAR, "MC"
IDS_BTN_MEM_RECALL, "MR"
IDS_BTN_MEM_STORE, "MS"
IDS_BTN_MEM_PLUS, "M+"
IDS_BTN_MEM_STATUS_M, "M"
IDS_BTN_SQRT, "sqrt"
IDS_BTN_DEGREES, "Degrees"
IDS_BTN_RADIANS, "Radians"
IDS_BTN_GRADS, "Grads"
IDS_BTN_SHRT_HEX "Hex"
IDS_BTN_SHRT_DEC "Dec"
IDS_BTN_SHRT_OCT "Oct"
IDS_BTN_SHRT_BIN "Bin"
IDS_ERR_INVALID_INPUT, "Input invalido per la funzione."
IDS_ERR_DIVIDE_BY_ZERO, "Non si pu<70> dividere per zero."
IDS_ERR_UNDEFINED, "Il risultato della funzione <20> indefinito."
END
MAIN_MENU MENU DISCARDABLE
BEGIN
POPUP "&Modifica"
BEGIN
MENUITEM "&Copia Ctrl+C", IDM_COPY
MENUITEM "I&ncolla Ctrl+V", IDM_PASTE
END
POPUP "&Visualizza"
BEGIN
MENUITEM "Standard", IDM_MODE_STANDARD
MENUITEM "Scientifica", IDM_MODE_SCIENTIFIC
MENUITEM SEPARATOR
MENUITEM "Raggruppamento cifre", IDM_DIGIT_GROUPING
END
POPUP "&?"
BEGIN
MENUITEM "Guida in linea", IDM_HELP_TOPICS
MENUITEM SEPARATOR
MENUITEM "Informazioni su Calcolatrice", IDM_ABOUT
END
END
SCIMS_MENU MENU DISCARDABLE
BEGIN
POPUP "&Modifica"
BEGIN
MENUITEM "&Copia Ctrl+C", IDM_COPY
MENUITEM "I&ncolla Ctrl+V", IDM_PASTE
END
POPUP "&Visualizza"
BEGIN
MENUITEM "Standard", IDM_MODE_STANDARD
MENUITEM "Scientifica", IDM_MODE_SCIENTIFIC
MENUITEM SEPARATOR
MENUITEM "Hex\tF5", ID_CALC_NS_HEX
MENUITEM "Dec\tF6", ID_CALC_NS_DEC
MENUITEM "Oct\tF7", ID_CALC_NS_OCT
MENUITEM "Bin\tF8", ID_CALC_NS_BIN
MENUITEM SEPARATOR
MENUITEM "Gradi\tF2", ID_CALC_MS_DEGREES
MENUITEM "Radianti\tF3", ID_CALC_MS_RADIANS
MENUITEM "Gradienti\tF4", ID_CALC_MS_GRADS
MENUITEM SEPARATOR
MENUITEM "Raggruppamento cifre", IDM_DIGIT_GROUPING
END
POPUP "&?"
BEGIN
MENUITEM "Guida in linea", IDM_HELP_TOPICS
MENUITEM SEPARATOR
MENUITEM "Informazioni su calcolatrice", IDM_ABOUT
END
END
SCIWS_MENU MENU DISCARDABLE
BEGIN
POPUP "&Modifica"
BEGIN
MENUITEM "&Copia Ctrl+C", IDM_COPY
MENUITEM "I&ncolla Ctrl+V", IDM_PASTE
END
POPUP "&Visualizza"
BEGIN
MENUITEM "Standard", IDM_MODE_STANDARD
MENUITEM "Scientifica", IDM_MODE_SCIENTIFIC
MENUITEM SEPARATOR
MENUITEM "Hex\tF5", ID_CALC_NS_HEX
MENUITEM "Dec\tF6", ID_CALC_NS_DEC
MENUITEM "Oct\tF7", ID_CALC_NS_OCT
MENUITEM "Bin\tF8", ID_CALC_NS_BIN
MENUITEM SEPARATOR
MENUITEM "Qword\tF12", ID_CALC_WS_QWORD
MENUITEM "Dword\tF2", ID_CALC_WS_DWORD
MENUITEM "Word\tF3", ID_CALC_WS_WORD
MENUITEM "Byte\tF4", ID_CALC_WS_BYTE
MENUITEM SEPARATOR
MENUITEM "Raggruppamento cifre", IDM_DIGIT_GROUPING
END
POPUP "&?"
BEGIN
MENUITEM "Guida in linea", IDM_HELP_TOPICS
MENUITEM SEPARATOR
MENUITEM "Informazioni su calcolatrice", IDM_ABOUT
END
END
MAIN_MENU ACCELERATORS
BEGIN
VK_F1, IDV_HELP, VIRTKEY
END
DLG_ABOUT DIALOGEX 12,0,175,90
CAPTION "Informazioni su GNU winecalc"
IDD_DIALOG_SCIENTIFIC DIALOGEX 0, 0, 316, 161
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Calcolatrice ReactOS"
MENU IDR_MENU_SCIENTIFIC_1
FONT 8, "MS Shell Dlg"
STYLE DS_MODALFRAME | DS_SHELLFONT | WS_POPUP | WS_CAPTION | WS_SYSMENU
BEGIN
DEFPUSHBUTTON "OK", IDOK, 73, 70, 30, 14, WS_CHILD | WS_VISIBLE | WS_TABSTOP
GROUPBOX "",IDC_STATIC,4,16,132,21
CONTROL "Hex",IDC_RADIO_HEX,"Button",BS_AUTORADIOBUTTON,8,24,29,
10
CONTROL "Dec",IDC_RADIO_DEC,"Button",BS_AUTORADIOBUTTON,40,24,29,
10
CONTROL "Oct",IDC_RADIO_OCT,"Button",BS_AUTORADIOBUTTON,72,24,27,
10
CONTROL "Bin",IDC_RADIO_BIN,"Button",BS_AUTORADIOBUTTON,100,24,
26,10
GROUPBOX "",IDC_STATIC,4,36,76,21
CONTROL "Inv",IDC_CHECK_INV,"Button",BS_AUTOCHECKBOX |
WS_TABSTOP,8,44,26,10
CONTROL "Hyp",IDC_CHECK_HYP,"Button",BS_AUTOCHECKBOX |
WS_TABSTOP,40,44,29,10
CTEXT "",IDC_TEXT_PARENT,84,40,24,17,SS_CENTERIMAGE,
WS_EX_CLIENTEDGE
CTEXT "",IDC_TEXT_MEMORY,112,40,24,17,SS_CENTERIMAGE,
WS_EX_CLIENTEDGE
PUSHBUTTON "Sta",IDC_BUTTON_STA,4,64,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Ave",IDC_BUTTON_AVE,4,83,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | WS_DISABLED | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Sum",IDC_BUTTON_SUM,4,102,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | WS_DISABLED | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "s",IDC_BUTTON_S,4,121,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | WS_DISABLED | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Dat",IDC_BUTTON_DAT,4,140,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | WS_DISABLED | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "F-E",IDC_BUTTON_FE,38,64,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "dms",IDC_BUTTON_DMS,38,83,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "sin",IDC_BUTTON_SIN,38,102,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "cos",IDC_BUTTON_COS,38,121,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "tan",IDC_BUTTON_TAN,38,140,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "(",IDC_BUTTON_LEFTPAR,64,64,24,17,BS_CENTER |
BS_VCENTER | BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Exp",IDC_BUTTON_EXP,64,83,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "x^y",IDC_BUTTON_XeY,64,102,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "x^2",IDC_BUTTON_Xe2,64,121,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "x^3",IDC_BUTTON_Xe3,64,140,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON ")",IDC_BUTTON_RIGHTPAR,90,64,24,17,BS_CENTER |
BS_VCENTER | BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "ln",IDC_BUTTON_LN,90,83,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "log",IDC_BUTTON_LOG,90,102,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "n!",IDC_BUTTON_NF,90,121,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "1/x",IDC_BUTTON_RX,90,140,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "MC",IDC_BUTTON_MC,124,64,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "MR",IDC_BUTTON_MR,124,83,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "MS",IDC_BUTTON_MS,124,102,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "M+",IDC_BUTTON_MP,124,121,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "pi",IDC_BUTTON_PI,124,140,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "7",IDC_BUTTON_7,158,64,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "4",IDC_BUTTON_4,158,83,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "1",IDC_BUTTON_1,158,102,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "0",IDC_BUTTON_0,158,121,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "A",IDC_BUTTON_A,158,140,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "8",IDC_BUTTON_8,184,64,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "5",IDC_BUTTON_5,184,83,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "2",IDC_BUTTON_2,184,102,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "+/-",IDC_BUTTON_SIGN,184,121,24,17,BS_CENTER |
BS_VCENTER | BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "B",IDC_BUTTON_B,184,140,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "9",IDC_BUTTON_9,210,64,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "6",IDC_BUTTON_6,210,83,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "3",IDC_BUTTON_3,210,102,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON ",",IDC_BUTTON_DOT,210,121,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "C",IDC_BUTTON_C,210,140,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "/",IDC_BUTTON_DIV,236,64,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "*",IDC_BUTTON_MULT,236,83,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "-",IDC_BUTTON_SUB,236,102,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "+",IDC_BUTTON_ADD,236,121,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "D",IDC_BUTTON_D,236,140,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Mod",IDC_BUTTON_MOD,262,64,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Or",IDC_BUTTON_OR,262,83,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Lsh",IDC_BUTTON_LSH,262,102,24,17,BS_CENTER |
BS_VCENTER | BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "=",IDC_BUTTON_EQU,262,121,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "E",IDC_BUTTON_E,262,140,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "And",IDC_BUTTON_AND,288,64,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Xor",IDC_BUTTON_XOR,288,83,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Not",IDC_BUTTON_NOT,288,102,24,17,BS_CENTER |
BS_VCENTER | BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Int",IDC_BUTTON_INT,288,121,24,17,BS_CENTER |
BS_VCENTER | BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "F",IDC_BUTTON_F,288,140,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
GROUPBOX "",IDC_STATIC,140,16,172,21
CONTROL "Qword",IDC_RADIO_QWORD,"Button",BS_AUTORADIOBUTTON |
NOT WS_VISIBLE,148,24,37,10
CONTROL "Dword",IDC_RADIO_DWORD,"Button",BS_AUTORADIOBUTTON |
NOT WS_VISIBLE,188,24,37,10
CONTROL "Word",IDC_RADIO_WORD,"Button",BS_AUTORADIOBUTTON | NOT
WS_VISIBLE,232,24,33,10
CONTROL "Byte",IDC_RADIO_BYTE,"Button",BS_AUTORADIOBUTTON | NOT
WS_VISIBLE,272,24,30,10
CONTROL "Gradi",IDC_RADIO_DEG,"Button",BS_AUTORADIOBUTTON,148,24,
33,10
CONTROL "Radianti",IDC_RADIO_RAD,"Button",BS_AUTORADIOBUTTON,192,
24,42,10
CONTROL "Gradienti",IDC_RADIO_GRAD,"Button",BS_AUTORADIOBUTTON,
236,24,44,10
PUSHBUTTON "C",IDC_BUTTON_CANC,272,40,40,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "CE",IDC_BUTTON_CE,228,40,40,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Cancella",IDC_BUTTON_BACK,184,40,40,17,BS_CENTER |
BS_VCENTER | BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
RTEXT "",IDC_TEXT_OUTPUT,4,4,308,12,SS_CENTERIMAGE,
WS_EX_CLIENTEDGE
DEFPUSHBUTTON "",IDC_BUTTON_FOCUS,0,0,5,5, NOT WS_VISIBLE
END
WHATS_THIS_MENU MENU DISCARDABLE
BEGIN
POPUP ""
BEGIN
MENUITEM "Cos'<27> questo?", IDM_WHATS_THIS
END
END
DLG_STATS DIALOGEX 12,0,145,85
CAPTION "Statistiche"
IDD_DIALOG_STANDARD DIALOGEX 0, 0, 172, 127
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Calcolatrice ReactOS"
MENU IDR_MENU_STANDARD
FONT 8, "MS Shell Dlg"
STYLE DS_MODALFRAME | DS_SHELLFONT | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE
BEGIN
DEFPUSHBUTTON "&RET", ID_STATS_RET, 4, 52, 30, 13, WS_TABSTOP | WS_GROUP
PUSHBUTTON "&LOAD", ID_STATS_LOAD, 39, 52, 30, 13, WS_TABSTOP | WS_GROUP
PUSHBUTTON "&CD" ID_STATS_CD, 74, 52, 30, 13, WS_TABSTOP | WS_GROUP
PUSHBUTTON "C&AD", ID_STATS_CAD, 109, 52, 30, 13, WS_TABSTOP | WS_GROUP
PUSHBUTTON "C",IDC_BUTTON_CANC,128,24,40,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "CE",IDC_BUTTON_CE,84,24,40,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Cancella",IDC_BUTTON_BACK,40,24,40,17,BS_CENTER |
BS_VCENTER | BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
RTEXT "",IDC_TEXT_OUTPUT,4,4,164,12,SS_CENTERIMAGE,
WS_EX_CLIENTEDGE
PUSHBUTTON "7",IDC_BUTTON_7,40,48,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "4",IDC_BUTTON_4,40,67,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "1",IDC_BUTTON_1,40,86,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "0",IDC_BUTTON_0,40,105,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "8",IDC_BUTTON_8,66,48,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "5",IDC_BUTTON_5,66,67,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "2",IDC_BUTTON_2,66,86,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "+/-",IDC_BUTTON_SIGN,66,105,24,17,BS_CENTER |
BS_VCENTER | BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "9",IDC_BUTTON_9,92,48,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "6",IDC_BUTTON_6,92,67,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "3",IDC_BUTTON_3,92,86,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON ",",IDC_BUTTON_DOT,92,105,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "/",IDC_BUTTON_DIV,118,48,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "*",IDC_BUTTON_MULT,118,67,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "-",IDC_BUTTON_SUB,118,86,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "+",IDC_BUTTON_ADD,118,105,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Sqrt",IDC_BUTTON_SQRT,144,48,24,17,BS_CENTER |
BS_VCENTER | BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "%",IDC_BUTTON_PERCENT,144,67,24,17,BS_CENTER |
BS_VCENTER | BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "1/x",IDC_BUTTON_RX,144,86,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "=",IDC_BUTTON_EQU,144,105,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
CTEXT "",IDC_TEXT_MEMORY,4,24,24,17,SS_CENTERIMAGE,
WS_EX_CLIENTEDGE
PUSHBUTTON "MC",IDC_BUTTON_MC,4,48,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "MR",IDC_BUTTON_MR,4,67,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "MS",IDC_BUTTON_MS,4,86,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "M+",IDC_BUTTON_MP,4,105,24,17,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
DEFPUSHBUTTON "",IDC_BUTTON_FOCUS,0,0,5,5, NOT WS_VISIBLE
END
IDD_DIALOG_ABOUT DIALOGEX DISCARDABLE 0, 0, 264, 169
STYLE DS_SHELLFONT | DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Informazioni su ReactOS Calc"
FONT 8, "MS Shell Dlg"
BEGIN
DEFPUSHBUTTON "OK",IDOK,105,148,52,16
CONTROL 106,IDC_STATIC,"Static",SS_BITMAP | SS_CENTERIMAGE |
SS_REALSIZEIMAGE | WS_BORDER,4,4,104,48
LTEXT "Calcolatrice ReactOS",IDC_STATIC,120,12,132,8,
SS_CENTERIMAGE
LTEXT "Versione ",IDC_TEXT_VERSION,120,20,132,8,SS_CENTERIMAGE
LTEXT "Scritto da Carlo Bramini",IDC_STATIC,120,32,132,8,
SS_CENTERIMAGE
GROUPBOX "",IDC_STATIC,112,0,148,52
GROUPBOX "",IDC_STATIC,4,56,256,88
EDITTEXT IDC_EDIT_LICENSE,12,68,240,68,ES_MULTILINE | ES_READONLY |
WS_VSCROLL
END
IDD_DIALOG_STAT DIALOGEX DISCARDABLE 0, 0, 163, 85
STYLE DS_SHELLFONT | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Finestra di statistica"
FONT 8, "MS Shell Dlg"
BEGIN
LISTBOX IDC_LIST_STAT,4,4,156,40,LBS_NOINTEGRALHEIGHT |
WS_VSCROLL | WS_TABSTOP
PUSHBUTTON "RET",IDC_BUTTON_RET,4,48,36,16
PUSHBUTTON "LOAD",IDC_BUTTON_LOAD,44,48,36,16
PUSHBUTTON "CD",IDC_BUTTON_CD,84,48,36,16
PUSHBUTTON "CAD",IDC_BUTTON_CAD,124,48,36,16
CTEXT "n=0",IDC_TEXT_NITEMS,4,68,156,12,SS_CENTERIMAGE |
SS_SUNKEN
END
// Menus
IDR_MENU_SCIENTIFIC_1 MENU DISCARDABLE
BEGIN
POPUP "Modifica"
BEGIN
MENUITEM "Copia\tCTRL-C", IDM_EDIT_COPY
MENUITEM "Incolla\tCTRL-V", IDM_EDIT_PASTE
END
POPUP "Visualizza"
BEGIN
MENUITEM "Standard", IDM_VIEW_STANDARD, CHECKED
MENUITEM "Scientifica", IDM_VIEW_SCIENTIFIC, CHECKED
MENUITEM "Conversione", IDM_VIEW_CONVERSION
MENUITEM SEPARATOR
MENUITEM "Hex\tF5", IDM_VIEW_HEX, CHECKED
MENUITEM "Decimale\tF6", IDM_VIEW_DEC, CHECKED
MENUITEM "Ottale\tF7", IDM_VIEW_OCT, CHECKED
MENUITEM "Binaria\tF8", IDM_VIEW_BIN, CHECKED
MENUITEM SEPARATOR
MENUITEM "Gradi\tF2", IDM_VIEW_DEG, CHECKED
MENUITEM "Radianti\tF3", IDM_VIEW_RAD, CHECKED
MENUITEM "Gradienti\tF4", IDM_VIEW_GRAD, CHECKED
MENUITEM SEPARATOR
MENUITEM "Raggruppamento cifre", IDM_VIEW_GROUP, CHECKED
END
POPUP "Aiuto"
BEGIN
MENUITEM "Guida in linea", IDM_HELP_HELP
MENUITEM SEPARATOR
MENUITEM "Informazioni su ReactOS Calc", IDM_HELP_ABOUT
END
END
IDR_MENU_SCIENTIFIC_2 MENU DISCARDABLE
BEGIN
POPUP "Modifica"
BEGIN
MENUITEM "Copia\tCTRL-C", IDM_EDIT_COPY
MENUITEM "Incolla\tCTRL-V", IDM_EDIT_PASTE
END
POPUP "Visualizza"
BEGIN
MENUITEM "Standard", IDM_VIEW_STANDARD, CHECKED
MENUITEM "Scientifica", IDM_VIEW_SCIENTIFIC, CHECKED
MENUITEM "Conversione", IDM_VIEW_CONVERSION
MENUITEM SEPARATOR
MENUITEM "Hex\tF5", IDM_VIEW_HEX, CHECKED
MENUITEM "Decimale\tF6", IDM_VIEW_DEC, CHECKED
MENUITEM "Ottale\tF7", IDM_VIEW_OCT, CHECKED
MENUITEM "Binaria\tF8", IDM_VIEW_BIN, CHECKED
MENUITEM SEPARATOR
MENUITEM "Qword\tF12", IDM_VIEW_QWORD, CHECKED
MENUITEM "Dword\tF2", IDM_VIEW_DWORD, CHECKED
MENUITEM "Word\tF3", IDM_VIEW_WORD, CHECKED
MENUITEM "Byte\tF4", IDM_VIEW_BYTE, CHECKED
MENUITEM SEPARATOR
MENUITEM "Raggruppamento cifre", IDM_VIEW_GROUP, CHECKED
END
POPUP "Aiuto"
BEGIN
MENUITEM "Guida in linea", IDM_HELP_HELP
MENUITEM SEPARATOR
MENUITEM "Informazioni su ReactOS Calc", IDM_HELP_ABOUT
END
END
IDR_MENU_STANDARD MENU DISCARDABLE
BEGIN
POPUP "Modifica"
BEGIN
MENUITEM "Copia\tCTRL-C", IDM_EDIT_COPY
MENUITEM "Incolla\tCTRL-V", IDM_EDIT_PASTE
END
POPUP "Visualizza"
BEGIN
MENUITEM "Standard", IDM_VIEW_STANDARD, CHECKED
MENUITEM "Scientifica", IDM_VIEW_SCIENTIFIC, CHECKED
MENUITEM "Conversione", IDM_VIEW_CONVERSION
MENUITEM SEPARATOR
MENUITEM "Raggruppamento cifre", IDM_VIEW_GROUP, CHECKED
END
POPUP "Aiuto"
BEGIN
MENUITEM "Guida in linea", IDM_HELP_HELP
MENUITEM SEPARATOR
MENUITEM "Informazioni su ReactOS Calc", IDM_HELP_ABOUT
END
END
// String Tables
STRINGTABLE DISCARDABLE
BEGIN
IDS_STRING_LICENSE "ReactOS Calc e` software libero rilasciato sotto licenza GNU GPL.\r\n\r\nE` possibile ottenere una copia del testo della licenza GNU GPL all'indirizzo:\r\nhttp://www.gnu.org/licenses/gpl.html\r\n\r\nE` possibile ottenere una traduzione del testo della licenza GNU GPL all'indirizzo:\r\nhttp://www.gnu.org/licenses/translations.html"
IDS_MATH_ERROR "Errore"
IDS_QUICKHELP "Guida rapida"
END

View File

@@ -1,166 +0,0 @@
/*
* WineCalc (ja-JP.rc)
*
* Copyright 2003 James Briggs
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
#include "windows.h"
#include "resource.h"
#include "winecalc.h"
LANGUAGE LANG_JAPANESE, SUBLANG_DEFAULT
MAIN_MENU MENU
BEGIN
POPUP "<22>ҏW(&E)"
BEGIN
MENUITEM "<22>R<EFBFBD>s<EFBFBD>[(&C) Ctrl+C", IDM_COPY
MENUITEM "<22>\\<5C><><EFBFBD>t<EFBFBD><74>(&P) Ctrl+V", IDM_PASTE
END
POPUP "<22>\\<5C><>(&V)"
BEGIN
MENUITEM "<22><><EFBFBD>ʂ̓d<CC93><64>", IDM_MODE_STANDARD
MENUITEM "<22>֐<EFBFBD><D690>d<EFBFBD><64>", IDM_MODE_SCIENTIFIC
MENUITEM SEPARATOR
MENUITEM "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>؂<EFBFBD>", IDM_DIGIT_GROUPING
END
POPUP "<22>w<EFBFBD><77><EFBFBD>v(&H)"
BEGIN
MENUITEM "<22>g<EFBFBD>s<EFBFBD>b<EFBFBD>N<EFBFBD>̌<EFBFBD><CC8C><EFBFBD>", IDM_HELP_TOPICS
MENUITEM SEPARATOR
MENUITEM "<22>d<EFBFBD><64><EFBFBD>ɂ‚<C982><C282><EFBFBD>", IDM_ABOUT
END
END
SCIMS_MENU MENU
BEGIN
POPUP "<22>ҏW(&E)"
BEGIN
MENUITEM "<22>R<EFBFBD>s<EFBFBD>[(&C) Ctrl+C", IDM_COPY
MENUITEM "<22>\\<5C><><EFBFBD>t<EFBFBD><74>(&P) Ctrl+V", IDM_PASTE
END
POPUP "<22>\\<5C><>(&V)"
BEGIN
MENUITEM "<22><><EFBFBD>ʂ̓d<CC93><64>", IDM_MODE_STANDARD
MENUITEM "<22>֐<EFBFBD><D690>d<EFBFBD><64>", IDM_MODE_SCIENTIFIC
MENUITEM SEPARATOR
MENUITEM "16 <20>i\tF5", ID_CALC_NS_HEX
MENUITEM "10 <20>i\tF6", ID_CALC_NS_DEC
MENUITEM "8 <20>i\tF7", ID_CALC_NS_OCT
MENUITEM "2 <20>i\tF8", ID_CALC_NS_BIN
MENUITEM SEPARATOR
MENUITEM "Degree\tF2", ID_CALC_MS_DEGREES
MENUITEM "Radian\tF3", ID_CALC_MS_RADIANS
MENUITEM "Grad\tF4", ID_CALC_MS_GRADS
MENUITEM SEPARATOR
MENUITEM "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>؂<EFBFBD>", IDM_DIGIT_GROUPING
END
POPUP "<22>w<EFBFBD><77><EFBFBD>v(&H)"
BEGIN
MENUITEM "<22>g<EFBFBD>s<EFBFBD>b<EFBFBD>N<EFBFBD>̌<EFBFBD><CC8C><EFBFBD>", IDM_HELP_TOPICS
MENUITEM SEPARATOR
MENUITEM "<22>d<EFBFBD><64><EFBFBD>ɂ‚<C982><C282><EFBFBD>", IDM_ABOUT
END
END
SCIWS_MENU MENU
BEGIN
POPUP "<22>ҏW(&E)"
BEGIN
MENUITEM "<22>R<EFBFBD>s<EFBFBD>[(&C) Ctrl+C", IDM_COPY
MENUITEM "<22>\\<5C><><EFBFBD>t<EFBFBD><74>(&P) Ctrl+V", IDM_PASTE
END
POPUP "<22>\\<5C><>(&V)"
BEGIN
MENUITEM "<22><><EFBFBD>ʂ̓d<CC93><64>", IDM_MODE_STANDARD
MENUITEM "<22>֐<EFBFBD><D690>d<EFBFBD><64>", IDM_MODE_SCIENTIFIC
MENUITEM SEPARATOR
MENUITEM "16 <20>i\tF5", ID_CALC_NS_HEX
MENUITEM "10 <20>i\tF6", ID_CALC_NS_DEC
MENUITEM "8 <20>i\tF7", ID_CALC_NS_OCT
MENUITEM "2 <20>i\tF8", ID_CALC_NS_BIN
MENUITEM SEPARATOR
MENUITEM "Qword\tF12", ID_CALC_WS_QWORD
MENUITEM "Dword\tF2", ID_CALC_WS_DWORD
MENUITEM "Word\tF3", ID_CALC_WS_WORD
MENUITEM "Byte\tF4", ID_CALC_WS_BYTE
MENUITEM SEPARATOR
MENUITEM "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>؂<EFBFBD>", IDM_DIGIT_GROUPING
END
POPUP "<22>w<EFBFBD><77><EFBFBD>v(&H)"
BEGIN
MENUITEM "<22>g<EFBFBD>s<EFBFBD>b<EFBFBD>N<EFBFBD>̌<EFBFBD><CC8C><EFBFBD>", IDM_HELP_TOPICS
MENUITEM SEPARATOR
MENUITEM "<22>d<EFBFBD><64><EFBFBD>ɂ‚<C982><C282><EFBFBD>", IDM_ABOUT
END
END
WHATS_THIS_MENU MENU
BEGIN
POPUP ""
BEGIN
MENUITEM "<22><><EFBFBD><EFBFBD><EFBFBD>͉<EFBFBD><CD89>H", IDM_WHATS_THIS
END
END
MAIN_MENU ACCELERATORS
BEGIN
VK_F1, IDV_HELP, VIRTKEY
END
DLG_ABOUT DIALOGEX 12, 0, 175, 90
FONT 9, "MS UI Gothic"
STYLE DS_MODALFRAME | DS_SHELLFONT | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "GNU winecalc <20>ɂ‚<C982><C282><EFBFBD>"
BEGIN
DEFPUSHBUTTON "OK",IDOK,73,70,30,14
END
DLG_STATS DIALOGEX 12, 0, 145, 85
STYLE DS_MODALFRAME | DS_SHELLFONT | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "<22><><EFBFBD>v<EFBFBD>BEGIN<49>b<EFBFBD>N<EFBFBD>X"
FONT 9, "MS UI Gothic"
BEGIN
DEFPUSHBUTTON "<22>߂<EFBFBD>(&R)",ID_STATS_RET,4,52,30,13,WS_GROUP
PUSHBUTTON "<22><><EFBFBD>[<5B>h(&L)",ID_STATS_LOAD,39,52,30,13,WS_GROUP
PUSHBUTTON "<22>N<EFBFBD><4E><EFBFBD>A(&C)",ID_STATS_CD,74,52,30,13,WS_GROUP
PUSHBUTTON "<22><><EFBFBD>ׂăN<C483><4E><EFBFBD>A(&A)",ID_STATS_CAD,109,52,30,13,WS_GROUP
END
STRINGTABLE
BEGIN
IDS_APPNAME "<22>d<EFBFBD><64>"
IDS_BTN_BACKSPACE "Back"
IDS_BTN_CLEAR_ENTRY "CE"
IDS_BTN_CLEAR_ALL "C"
IDS_ERR_INVALID_INPUT "<22><><EFBFBD><EFBFBD><EFBFBD>Ȓl<C892>ł<EFBFBD><C582>B"
IDS_ERR_DIVIDE_BY_ZERO "0 <20>Ŋ<EFBFBD><C58A><EFBFBD>Ƃ͂ł<CD82><C582>܂<EFBFBD><DC82><EFBFBD><EFBFBD>B"
IDS_ERR_UNDEFINED "<22>֐<EFBFBD><D690>̌<EFBFBD><CC8C>ʂ<EFBFBD><CA82><EFBFBD><EFBFBD>`<60><><EFBFBD><EFBFBD><EFBFBD>Ă<EFBFBD><C482>܂<EFBFBD><DC82><EFBFBD><EFBFBD>B"
IDS_COPYRIGHT1 "<22>d<EFBFBD><64> 5.0. Licensed under LGPL 2"
IDS_COPYRIGHT2 "Copyright 2003, James Briggs"
IDS_COPYRIGHT3 "San Jose, California, USA"
IDS_COPYRIGHT4 "james@ActionMessage.com"
IDS_COPYRIGHT5 "http://www.ActionMessage.com/winecalc/"
IDS_BTN_MEM_CLEAR "MC"
IDS_BTN_MEM_RECALL "MR"
IDS_BTN_MEM_STORE "MS"
IDS_BTN_MEM_PLUS "+"
IDS_BTN_MEM_STATUS_M "M"
IDS_BTN_SQRT "<22><>"
END

View File

@@ -1,157 +0,0 @@
/*
* Korean translation by manatails007(www.manatails007.org)
*/
#include "windows.h"
#include "resource.h"
#include "winecalc.h"
LANGUAGE LANG_KOREAN, SUBLANG_DEFAULT
STRINGTABLE DISCARDABLE
BEGIN
IDS_APPNAME, "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
IDS_COPYRIGHT1, "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 5.0. LGPL 2<><32><EFBFBD>̼<EFBFBD><CCBC><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>"
IDS_COPYRIGHT2 "Copyright 2003, James Briggs"
IDS_COPYRIGHT3 "San Jose, California, USA"
IDS_COPYRIGHT4 "james@ActionMessage.com"
IDS_COPYRIGHT5 "http://www.ActionMessage.com/winecalc/"
IDS_BTN_BACKSPACE, "Backspace"
IDS_BTN_CLEAR_ENTRY, "CE"
IDS_BTN_CLEAR_ALL, "C"
IDS_BTN_MEM_CLEAR, "MC"
IDS_BTN_MEM_RECALL, "MR"
IDS_BTN_MEM_STORE, "MS"
IDS_BTN_MEM_PLUS, "M+"
IDS_BTN_MEM_STATUS_M, "M"
IDS_BTN_SQRT, "sqrt"
IDS_BTN_DEGREES, "Degrees"
IDS_BTN_RADIANS, "Radians"
IDS_BTN_GRADS, "Grads"
IDS_BTN_SHRT_HEX "Hex"
IDS_BTN_SHRT_DEC "Dec"
IDS_BTN_SHRT_OCT "Oct"
IDS_BTN_SHRT_BIN "Bin"
IDS_ERR_INVALID_INPUT, "<22>Լ<EFBFBD><D4BC><EFBFBD> <20>߸<EFBFBD> <20>Է<EFBFBD> <20>ϼ̽<CFBC><CCBD>ϴ<EFBFBD>."
IDS_ERR_DIVIDE_BY_ZERO, "0<><30><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>ϴ<EFBFBD>."
IDS_ERR_UNDEFINED, "<22>Լ<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ʾҽ<CABE><D2BD>ϴ<EFBFBD>."
END
MAIN_MENU MENU DISCARDABLE
BEGIN
POPUP "<22><><EFBFBD><EFBFBD>"
BEGIN
MENUITEM "<22><><EFBFBD><EFBFBD> Ctrl+C", IDM_COPY
MENUITEM "<22>ٿ<EFBFBD><D9BF>ֱ<EFBFBD> Ctrl+V", IDM_PASTE
END
POPUP "<22><><EFBFBD><EFBFBD>"
BEGIN
MENUITEM "<22>Ϲ<EFBFBD>", IDM_MODE_STANDARD
MENUITEM "<22><><EFBFBD><EFBFBD>", IDM_MODE_SCIENTIFIC
MENUITEM SEPARATOR
MENUITEM "<22>ڸ<EFBFBD><DAB8><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>", IDM_DIGIT_GROUPING
END
POPUP "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
BEGIN
MENUITEM "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>׸<EFBFBD>", IDM_HELP_TOPICS
MENUITEM SEPARATOR
MENUITEM "<22><><EFBFBD><EFBFBD><EFBFBD><20><><EFBFBD><EFBFBD>", IDM_ABOUT
END
END
SCIMS_MENU MENU DISCARDABLE
BEGIN
POPUP "<22><><EFBFBD><EFBFBD>"
BEGIN
MENUITEM "<22><><EFBFBD><EFBFBD> Ctrl+C", IDM_COPY
MENUITEM "<22>ٿ<EFBFBD><D9BF>ֱ<EFBFBD> Ctrl+V", IDM_PASTE
END
POPUP "<22><><EFBFBD><EFBFBD>"
BEGIN
MENUITEM "<22>Ϲ<EFBFBD>", IDM_MODE_STANDARD
MENUITEM "<22><><EFBFBD><EFBFBD>", IDM_MODE_SCIENTIFIC
MENUITEM SEPARATOR
MENUITEM "Hex\tF5", ID_CALC_NS_HEX
MENUITEM "Decimal\tF6", ID_CALC_NS_DEC
MENUITEM "Octal\tF7", ID_CALC_NS_OCT
MENUITEM "Binary\tF8", ID_CALC_NS_BIN
MENUITEM SEPARATOR
MENUITEM "Degrees\tF2", ID_CALC_MS_DEGREES
MENUITEM "Radians\tF3", ID_CALC_MS_RADIANS
MENUITEM "Grads\tF4", ID_CALC_MS_GRADS
MENUITEM SEPARATOR
MENUITEM "<22>ڸ<EFBFBD><DAB8><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>", IDM_DIGIT_GROUPING
END
POPUP "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
BEGIN
MENUITEM "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>׸<EFBFBD>", IDM_HELP_TOPICS
MENUITEM SEPARATOR
MENUITEM "<22><><EFBFBD><EFBFBD><EFBFBD><20><><EFBFBD><EFBFBD>", IDM_ABOUT
END
END
SCIWS_MENU MENU DISCARDABLE
BEGIN
POPUP "<22><><EFBFBD><EFBFBD>"
BEGIN
MENUITEM "<22><><EFBFBD><EFBFBD> Ctrl+C", IDM_COPY
MENUITEM "<22>ٿ<EFBFBD><D9BF>ֱ<EFBFBD> Ctrl+V", IDM_PASTE
END
POPUP "<22><><EFBFBD><EFBFBD>"
BEGIN
MENUITEM "<22>Ϲ<EFBFBD>", IDM_MODE_STANDARD
MENUITEM "<22><><EFBFBD><EFBFBD>", IDM_MODE_SCIENTIFIC
MENUITEM SEPARATOR
MENUITEM "Hex\tF5", ID_CALC_NS_HEX
MENUITEM "Decimal\tF6", ID_CALC_NS_DEC
MENUITEM "Octal\tF7", ID_CALC_NS_OCT
MENUITEM "Binary\tF8", ID_CALC_NS_BIN
MENUITEM SEPARATOR
MENUITEM "Qword\tF12", ID_CALC_WS_QWORD
MENUITEM "Dword\tF2", ID_CALC_WS_DWORD
MENUITEM "Word\tF3", ID_CALC_WS_WORD
MENUITEM "Byte\tF4", ID_CALC_WS_BYTE
MENUITEM SEPARATOR
MENUITEM "<22>ڸ<EFBFBD><DAB8><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>", IDM_DIGIT_GROUPING
END
POPUP "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
BEGIN
MENUITEM "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>׸<EFBFBD>", IDM_HELP_TOPICS
MENUITEM SEPARATOR
MENUITEM "<22><><EFBFBD><EFBFBD><EFBFBD><20><><EFBFBD><EFBFBD>", IDM_ABOUT
END
END
MAIN_MENU ACCELERATORS
BEGIN
VK_F1, IDV_HELP, VIRTKEY
END
DLG_ABOUT DIALOGEX 12,0,175,90
CAPTION "GNU winecalc<6C><63> <20><><EFBFBD><EFBFBD>"
FONT 8, "MS Shell Dlg"
STYLE DS_MODALFRAME | DS_SHELLFONT | WS_POPUP | WS_CAPTION | WS_SYSMENU
BEGIN
DEFPUSHBUTTON "Ȯ<><C8AE>", IDOK, 73, 70, 30, 14, WS_CHILD | WS_VISIBLE | WS_TABSTOP
END
WHATS_THIS_MENU MENU DISCARDABLE
BEGIN
POPUP ""
BEGIN
MENUITEM "<22>̰<EFBFBD> <20><><EFBFBD><EFBFBD>?", IDM_WHATS_THIS
END
END
DLG_STATS DIALOGEX 12,0,145,85
CAPTION "<22><><EFBFBD><EFBFBD> <20>ڽ<EFBFBD>"
FONT 8, "MS Shell Dlg"
STYLE DS_MODALFRAME | DS_SHELLFONT | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE
BEGIN
DEFPUSHBUTTON "&RET", ID_STATS_RET, 4, 52, 30, 13, WS_TABSTOP | WS_GROUP
PUSHBUTTON "&LOAD", ID_STATS_LOAD, 39, 52, 30, 13, WS_TABSTOP | WS_GROUP
PUSHBUTTON "&CD" ID_STATS_CD, 74, 52, 30, 13, WS_TABSTOP | WS_GROUP
PUSHBUTTON "C&AD", ID_STATS_CAD, 109, 52, 30, 13, WS_TABSTOP | WS_GROUP
END

Some files were not shown because too many files have changed in this diff Show More