Partially fixed up tree after merge from HEAD. More to do.
Fixing ICE in gcc is no fun. svn path=/branches/powerpc/; revision=24443
@@ -7,6 +7,12 @@
|
||||
<directory name="calc">
|
||||
<xi:include href="calc/calc.rbuild" />
|
||||
</directory>
|
||||
<directory name="cmdutils">
|
||||
<xi:include href="cmdutils/cmdutils.rbuild" />
|
||||
</directory>
|
||||
<directory name="devmgmt">
|
||||
<xi:include href="devmgmt/devmgmt.rbuild" />
|
||||
</directory>
|
||||
<directory name="devmgr">
|
||||
<xi:include href="devmgr/devmgr.rbuild" />
|
||||
</directory>
|
||||
@@ -43,6 +49,9 @@
|
||||
<directory name="sc">
|
||||
<xi:include href="sc/sc.rbuild" />
|
||||
</directory>
|
||||
<directory name="sm">
|
||||
<xi:include href="sm/sm.rbuild" />
|
||||
</directory>
|
||||
<directory name="screensavers">
|
||||
<xi:include href="screensavers/screensavers.rbuild" />
|
||||
</directory>
|
||||
@@ -61,6 +70,9 @@
|
||||
<directory name="taskmgr">
|
||||
<xi:include href="taskmgr/taskmgr.rbuild" />
|
||||
</directory>
|
||||
<directory name="testsets">
|
||||
<xi:include href="testsets/testsets.rbuild" />
|
||||
</directory>
|
||||
<directory name="winefile">
|
||||
<xi:include href="winefile/winefile.rbuild" />
|
||||
</directory>
|
||||
@@ -73,4 +85,8 @@
|
||||
<directory name="utils">
|
||||
<xi:include href="utils/utils.rbuild" />
|
||||
</directory>
|
||||
<directory name="winver">
|
||||
<xi:include href="winver/winver.rbuild" />
|
||||
</directory>
|
||||
|
||||
</group>
|
||||
|
||||
@@ -507,18 +507,8 @@ PrintSpecialAccess:
|
||||
}
|
||||
|
||||
|
||||
#ifdef _UNICODE
|
||||
int __cdecl main(void)
|
||||
#else
|
||||
int __cdecl _main (int argc, char *argv[])
|
||||
#endif
|
||||
int __cdecl _tmain(int argc, const TCHAR *argv[])
|
||||
{
|
||||
#ifdef _UNICODE
|
||||
PWCHAR *argv;
|
||||
int argc = 0;
|
||||
argv = CommandLineToArgvW(GetCommandLineW(), &argc);
|
||||
#endif
|
||||
|
||||
if (argc < 2)
|
||||
{
|
||||
PrintHelp();
|
||||
|
||||
@@ -1,15 +1,15 @@
|
||||
<module name="cacls" type="win32cui" installbase="system32" installname="cacls.exe">
|
||||
<module name="cacls" type="win32cui" installbase="system32" installname="cacls.exe" unicode="true">
|
||||
<include base="cacls">.</include>
|
||||
<define name="__USE_W32API" />
|
||||
<define name="UNICODE" />
|
||||
<define name="_UNICODE" />
|
||||
<define name="_WIN32_IE">0x0500</define>
|
||||
<define name="_WIN32_WINNT">0x0600</define>
|
||||
<define name="WINVER">0x0600</define>
|
||||
<library>kernel32</library>
|
||||
<library>advapi32</library>
|
||||
<library>ntdll</library>
|
||||
<library>user32</library>
|
||||
<library>shell32</library>
|
||||
<file>cacls.c</file>
|
||||
<file>cacls.rc</file>
|
||||
<file>lang/cacls.rc</file>
|
||||
<pch>precomp.h</pch>
|
||||
</module>
|
||||
|
||||
@@ -0,0 +1,74 @@
|
||||
LANGUAGE LANG_NORWEGIAN, SUBLANG_NEUTRAL
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
{
|
||||
|
||||
IDS_HELP, "Viser eller endrer tilgang kontroll lister (ACL) av filer\n\n\
|
||||
CACLS filnavn [/T] [/E] [/C] [/G bruker:perm [...]] [/R user [...]]\n\
|
||||
[/P bruker:perm [...]] [/D bruker [...]]\n\
|
||||
filnavn Viser ACL.\n\
|
||||
/T Endrer ACL av spesifiserte filer i\n\
|
||||
nåværende katalog og alle under-mapper.\n\
|
||||
/E Rediger ACL isteden for erstatte det.\n\
|
||||
/C Fortsett på tilgang nektet feiler.\n\
|
||||
/G user:perm Innrømme spesifiert bruker tilgang rettigheter.\n\
|
||||
Perm kan bli: L Les\n\
|
||||
S Skriv\n\
|
||||
E Endre (skriv)\n\
|
||||
F Full kontroll\n\
|
||||
/R bruker Tilbakekalle spesifisert bruker tilgang rettighet (bare gyldig med /E).\n\
|
||||
/P bruker:perm Erstatte spesifisert bruker tilgang rettighet.\n\
|
||||
Perm kan bli: I Ingen\n\
|
||||
L Les\n\
|
||||
S Skrive\n\
|
||||
E Endre (skriv)\n\
|
||||
F Full kontroll\n\
|
||||
/D bruker Avslå spesifisert bruker tilgang.\n\
|
||||
Wildcards kan bli brukt for å spesifisere mere enn en fil i en kommando.\n\
|
||||
Du kan spesifisere mere enn en bruker i en kommando.\n\n\
|
||||
Forkortelse:\n\
|
||||
CI - Container Inherit.\n\
|
||||
ACE vil bli inherited av directories.\n\
|
||||
OI - Object Inherit.\n\
|
||||
ACE will be inherited by files.\n\
|
||||
IO - Inherit Only.\n\
|
||||
ACE gjelder ikke til nåværende fil/katalog.\n"
|
||||
|
||||
IDS_ABBR_CI, "(CI)"
|
||||
IDS_ABBR_OI, "(OI)"
|
||||
IDS_ABBR_IO, "(IO)"
|
||||
IDS_ABBR_FULL, "F"
|
||||
IDS_ABBR_READ, "R"
|
||||
IDS_ABBR_WRITE, "W"
|
||||
IDS_ABBR_CHANGE, "C"
|
||||
IDS_ABBR_NONE, "N"
|
||||
IDS_ALLOW, ""
|
||||
IDS_DENY, "(NEKTE)"
|
||||
IDS_SPECIAL_ACCESS, "(spesiell tilgang:)"
|
||||
IDS_GENERIC_READ, "GENERISK_LESE"
|
||||
IDS_GENERIC_WRITE, "GENERISK_SKRIVE"
|
||||
IDS_GENERIC_EXECUTE, "GENERISK_KJØRE"
|
||||
IDS_GENERIC_ALL, "GENERISK_ALT"
|
||||
IDS_FILE_GENERIC_EXECUTE, "FIL_GENERISK_KJØRE"
|
||||
IDS_FILE_GENERIC_READ, "FIL_GENERISK_LESE"
|
||||
IDS_FILE_GENERIC_WRITE, "FIL_GENERISK_SKRIVE"
|
||||
IDS_FILE_READ_DATA, "FIL_LES_DATA"
|
||||
IDS_FILE_WRITE_DATA, "FIL_SKRIV_DATA"
|
||||
IDS_FILE_APPEND_DATA, "FIL_TILFØYE_DATA"
|
||||
IDS_FILE_READ_EA, "FIL_LESE_EA"
|
||||
IDS_FILE_WRITE_EA, "FIL_SKRIVE_EA"
|
||||
IDS_FILE_EXECUTE, "FIL_KJØRE"
|
||||
IDS_FILE_DELETE_CHILD, "FIL_SLETT_BARN"
|
||||
IDS_FILE_READ_ATTRIBUTES, "FIL_LESE_ATTRIBUTTER"
|
||||
IDS_FILE_WRITE_ATTRIBUTES, "FIL_SKRIVE_ATTRIBUTTER"
|
||||
IDS_MAXIMUM_ALLOWED, "MAKSIMUM_TILATT"
|
||||
IDS_ACCESS_SYSTEM_SECURITY, "TILGANG_SYSTEM_SIKKERHET"
|
||||
IDS_SPECIFIC_RIGHTS_ALL, "SPESIFIKT_RETTIGHETER_ALT"
|
||||
IDS_STANDARD_RIGHTS_REQUIRED, "STANDARD_RETTIGHETER_PÅBUDT"
|
||||
IDS_SYNCHRONIZE, "SYNKRONISERE"
|
||||
IDS_WRITE_OWNER, "SKRIVE_EIER"
|
||||
IDS_WRITE_DAC, "SKRIVE_DAC"
|
||||
IDS_READ_CONTROL, "LESE_KONTROLL"
|
||||
IDS_DELETE, "SLETT"
|
||||
IDS_STANDARD_RIGHTS_ALL, "STANDARD_RETTIGHETER_ALT"
|
||||
}
|
||||
@@ -8,8 +8,9 @@
|
||||
LANGUAGE LANG_NEUTRAL, SUBLANG_NEUTRAL
|
||||
|
||||
/* include localised resources */
|
||||
#include "En.rc"
|
||||
#include "Nl.rc"
|
||||
#include "Ru.rc"
|
||||
#include "De.rc"
|
||||
#include "lang/En.rc"
|
||||
#include "lang/Nl.rc"
|
||||
#include "lang/Ru.rc"
|
||||
#include "lang/De.rc"
|
||||
#include "lang/No.rc"
|
||||
|
||||
|
||||
@@ -1,157 +1,157 @@
|
||||
/*
|
||||
* Czech language support
|
||||
*
|
||||
* WineCalc (En.rc)
|
||||
*
|
||||
* Copyright 2005 Denzil <[email protected]>
|
||||
*
|
||||
* 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
|
||||
{
|
||||
IDS_APPNAME, "Kalkulátor"
|
||||
|
||||
IDS_COPYRIGHT1, "Kalkulátor 5.0. Licencován pod LGPL 2"
|
||||
IDS_COPYRIGHT2 "Copyright 2003, James Briggs"
|
||||
IDS_COPYRIGHT3 "San Jose, California, USA"
|
||||
IDS_COPYRIGHT4 "[email protected]"
|
||||
IDS_COPYRIGHT5 "http://www.ActionMessage.com/winecalc/"
|
||||
|
||||
IDS_BTN_BACKSPACE, "Zpì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_ERR_INVALID_INPUT, "Neplatný vstup pro funkci."
|
||||
IDS_ERR_DIVIDE_BY_ZERO, "Nelze dìlit nulou."
|
||||
IDS_ERR_UNDEFINED, "Výsledek funkce není definován."
|
||||
}
|
||||
|
||||
MAIN_MENU MENU DISCARDABLE
|
||||
{
|
||||
POPUP "&Editace" {
|
||||
MENUITEM "&Kopírovat Ctrl+C", IDM_COPY
|
||||
MENUITEM "&Vložit Ctrl+V", IDM_PASTE
|
||||
}
|
||||
POPUP "&Zobrazení" {
|
||||
MENUITEM "Standartní", IDM_MODE_STANDARD
|
||||
MENUITEM "Vìdecké", IDM_MODE_SCIENTIFIC
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "Seskupování èíslic", IDM_DIGIT_GROUPING
|
||||
}
|
||||
POPUP "&Pomoc" {
|
||||
MENUITEM "Témata nápovìdy", IDM_HELP_TOPICS
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "O Kalkulátoru", IDM_ABOUT
|
||||
}
|
||||
}
|
||||
|
||||
SCIMS_MENU MENU DISCARDABLE
|
||||
{
|
||||
POPUP "&Editace" {
|
||||
MENUITEM "&Kopírovat Ctrl+C", IDM_COPY
|
||||
MENUITEM "&Vložit Ctrl+V", IDM_PASTE
|
||||
}
|
||||
POPUP "&Zobrazení" {
|
||||
MENUITEM "Standartní", IDM_MODE_STANDARD
|
||||
MENUITEM "Vìdecké", IDM_MODE_SCIENTIFIC
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "Šestnáctkové\tF5", ID_CALC_NS_HEX
|
||||
MENUITEM "Desítkové\tF6", ID_CALC_NS_DEC
|
||||
MENUITEM "Osmièkové\tF7", ID_CALC_NS_OCT
|
||||
MENUITEM "Dvojkové\tF8", ID_CALC_NS_BIN
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "Stupnì\tF2", ID_CALC_MS_DEGREES
|
||||
MENUITEM "Radiány\tF3", ID_CALC_MS_RADIANS
|
||||
MENUITEM "Grady\tF4", ID_CALC_MS_GRADS
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "Seskupování èíslic", IDM_DIGIT_GROUPING
|
||||
}
|
||||
POPUP "&Pomoc" {
|
||||
MENUITEM "Témata nápovìdy", IDM_HELP_TOPICS
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "O Kalkulátoru", IDM_ABOUT
|
||||
}
|
||||
}
|
||||
|
||||
SCIWS_MENU MENU DISCARDABLE
|
||||
{
|
||||
POPUP "&Editace" {
|
||||
MENUITEM "&Kopírovat Ctrl+C", IDM_COPY
|
||||
MENUITEM "&Vložit Ctrl+V", IDM_PASTE
|
||||
}
|
||||
POPUP "&Zobrazení" {
|
||||
MENUITEM "Standartní", IDM_MODE_STANDARD
|
||||
MENUITEM "Vìdecké", IDM_MODE_SCIENTIFIC
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "Šestnáctkové\tF5", ID_CALC_NS_HEX
|
||||
MENUITEM "Desítkové\tF6", ID_CALC_NS_DEC
|
||||
MENUITEM "Osmièkové\tF7", ID_CALC_NS_OCT
|
||||
MENUITEM "Dvojkové\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ání èíslic", IDM_DIGIT_GROUPING
|
||||
}
|
||||
POPUP "&Pomoc" {
|
||||
MENUITEM "Témata nápovìdy", IDM_HELP_TOPICS
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "O Kalkulátoru", IDM_ABOUT
|
||||
}
|
||||
}
|
||||
|
||||
MAIN_MENU ACCELERATORS
|
||||
BEGIN
|
||||
VK_F1, IDV_HELP, VIRTKEY
|
||||
END
|
||||
|
||||
DLG_ABOUT DIALOG 12,0,120,82
|
||||
CAPTION "O GNU winecalc"
|
||||
STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
|
||||
BEGIN
|
||||
DEFPUSHBUTTON "OK", IDOK, 42, 60, 30, 14, WS_CHILD | WS_VISIBLE | WS_TABSTOP
|
||||
END
|
||||
|
||||
WHATS_THIS_MENU MENU DISCARDABLE
|
||||
{
|
||||
POPUP "" {
|
||||
MENUITEM "Co je toto?", IDM_WHATS_THIS
|
||||
}
|
||||
}
|
||||
|
||||
DLG_STATS DIALOG 12,0,125,78
|
||||
CAPTION "Statistics Box"
|
||||
FONT 9, "Tahoma"
|
||||
STYLE WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE
|
||||
BEGIN
|
||||
DEFPUSHBUTTON "&RET", ID_STATS_RET, 4, 52, 25, 13, WS_TABSTOP | WS_GROUP
|
||||
PUSHBUTTON "&LOAD", ID_STATS_LOAD, 34, 52, 25, 13, WS_TABSTOP | WS_GROUP
|
||||
PUSHBUTTON "&CD" ID_STATS_CD, 64, 52, 25, 13, WS_TABSTOP | WS_GROUP
|
||||
PUSHBUTTON "C&AD", ID_STATS_CAD, 94, 52, 25, 13, WS_TABSTOP | WS_GROUP
|
||||
END
|
||||
/*
|
||||
* Czech language support
|
||||
*
|
||||
* WineCalc (En.rc)
|
||||
*
|
||||
* Copyright 2005 Denzil <[email protected]>
|
||||
*
|
||||
* 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
|
||||
{
|
||||
IDS_APPNAME, "Kalkulátor"
|
||||
|
||||
IDS_COPYRIGHT1, "Kalkulátor 5.0. Licencován pod LGPL 2"
|
||||
IDS_COPYRIGHT2 "Copyright 2003, James Briggs"
|
||||
IDS_COPYRIGHT3 "San Jose, California, USA"
|
||||
IDS_COPYRIGHT4 "[email protected]"
|
||||
IDS_COPYRIGHT5 "http://www.ActionMessage.com/winecalc/"
|
||||
|
||||
IDS_BTN_BACKSPACE, "Zpì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_ERR_INVALID_INPUT, "Neplatný vstup pro funkci."
|
||||
IDS_ERR_DIVIDE_BY_ZERO, "Nelze dìlit nulou."
|
||||
IDS_ERR_UNDEFINED, "Výsledek funkce není definován."
|
||||
}
|
||||
|
||||
MAIN_MENU MENU DISCARDABLE
|
||||
{
|
||||
POPUP "&Editace" {
|
||||
MENUITEM "&Kopírovat Ctrl+C", IDM_COPY
|
||||
MENUITEM "&Vložit Ctrl+V", IDM_PASTE
|
||||
}
|
||||
POPUP "&Zobrazení" {
|
||||
MENUITEM "Standartní", IDM_MODE_STANDARD
|
||||
MENUITEM "Vìdecké", IDM_MODE_SCIENTIFIC
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "Seskupování èíslic", IDM_DIGIT_GROUPING
|
||||
}
|
||||
POPUP "&Pomoc" {
|
||||
MENUITEM "Témata nápovìdy", IDM_HELP_TOPICS
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "O Kalkulátoru", IDM_ABOUT
|
||||
}
|
||||
}
|
||||
|
||||
SCIMS_MENU MENU DISCARDABLE
|
||||
{
|
||||
POPUP "&Editace" {
|
||||
MENUITEM "&Kopírovat Ctrl+C", IDM_COPY
|
||||
MENUITEM "&Vložit Ctrl+V", IDM_PASTE
|
||||
}
|
||||
POPUP "&Zobrazení" {
|
||||
MENUITEM "Standartní", IDM_MODE_STANDARD
|
||||
MENUITEM "Vìdecké", IDM_MODE_SCIENTIFIC
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "Šestnáctkové\tF5", ID_CALC_NS_HEX
|
||||
MENUITEM "Desítkové\tF6", ID_CALC_NS_DEC
|
||||
MENUITEM "Osmièkové\tF7", ID_CALC_NS_OCT
|
||||
MENUITEM "Dvojkové\tF8", ID_CALC_NS_BIN
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "Stupnì\tF2", ID_CALC_MS_DEGREES
|
||||
MENUITEM "Radiány\tF3", ID_CALC_MS_RADIANS
|
||||
MENUITEM "Grady\tF4", ID_CALC_MS_GRADS
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "Seskupování èíslic", IDM_DIGIT_GROUPING
|
||||
}
|
||||
POPUP "&Pomoc" {
|
||||
MENUITEM "Témata nápovìdy", IDM_HELP_TOPICS
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "O Kalkulátoru", IDM_ABOUT
|
||||
}
|
||||
}
|
||||
|
||||
SCIWS_MENU MENU DISCARDABLE
|
||||
{
|
||||
POPUP "&Editace" {
|
||||
MENUITEM "&Kopírovat Ctrl+C", IDM_COPY
|
||||
MENUITEM "&Vložit Ctrl+V", IDM_PASTE
|
||||
}
|
||||
POPUP "&Zobrazení" {
|
||||
MENUITEM "Standartní", IDM_MODE_STANDARD
|
||||
MENUITEM "Vìdecké", IDM_MODE_SCIENTIFIC
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "Šestnáctkové\tF5", ID_CALC_NS_HEX
|
||||
MENUITEM "Desítkové\tF6", ID_CALC_NS_DEC
|
||||
MENUITEM "Osmièkové\tF7", ID_CALC_NS_OCT
|
||||
MENUITEM "Dvojkové\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ání èíslic", IDM_DIGIT_GROUPING
|
||||
}
|
||||
POPUP "&Pomoc" {
|
||||
MENUITEM "Témata nápovìdy", IDM_HELP_TOPICS
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "O Kalkulátoru", IDM_ABOUT
|
||||
}
|
||||
}
|
||||
|
||||
MAIN_MENU ACCELERATORS
|
||||
BEGIN
|
||||
VK_F1, IDV_HELP, VIRTKEY
|
||||
END
|
||||
|
||||
DLG_ABOUT DIALOG 12,0,120,82
|
||||
CAPTION "O GNU winecalc"
|
||||
STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
|
||||
BEGIN
|
||||
DEFPUSHBUTTON "OK", IDOK, 42, 60, 30, 14, WS_CHILD | WS_VISIBLE | WS_TABSTOP
|
||||
END
|
||||
|
||||
WHATS_THIS_MENU MENU DISCARDABLE
|
||||
{
|
||||
POPUP "" {
|
||||
MENUITEM "Co je toto?", IDM_WHATS_THIS
|
||||
}
|
||||
}
|
||||
|
||||
DLG_STATS DIALOG 12,0,125,78
|
||||
CAPTION "Statistics Box"
|
||||
FONT 9, "Tahoma"
|
||||
STYLE WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE
|
||||
BEGIN
|
||||
DEFPUSHBUTTON "&RET", ID_STATS_RET, 4, 52, 25, 13, WS_TABSTOP | WS_GROUP
|
||||
PUSHBUTTON "&LOAD", ID_STATS_LOAD, 34, 52, 25, 13, WS_TABSTOP | WS_GROUP
|
||||
PUSHBUTTON "&CD" ID_STATS_CD, 64, 52, 25, 13, WS_TABSTOP | WS_GROUP
|
||||
PUSHBUTTON "C&AD", ID_STATS_CAD, 94, 52, 25, 13, WS_TABSTOP | WS_GROUP
|
||||
END
|
||||
@@ -45,7 +45,7 @@ STRINGTABLE DISCARDABLE
|
||||
IDS_BTN_SQRT, "sqrt"
|
||||
IDS_ERR_INVALID_INPUT, "Ungültige Eingabe für Funktion."
|
||||
IDS_ERR_DIVIDE_BY_ZERO, "Teilen durch 0 unmöglich."
|
||||
IDS_ERR_UNDEFINED, "Das Ergebnis der Funktion is undefiniert."
|
||||
IDS_ERR_UNDEFINED, "Das Ergebnis der Funktion ist undefiniert."
|
||||
}
|
||||
|
||||
MAIN_MENU MENU DISCARDABLE
|
||||
@@ -77,14 +77,14 @@ SCIMS_MENU MENU DISCARDABLE
|
||||
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är\tF8", ID_CALC_NS_BIN
|
||||
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ä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 "&Grad\tF4", ID_CALC_MS_GRADS
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "Zifferngr&uppierung", IDM_DIGIT_GROUPING
|
||||
}
|
||||
@@ -105,15 +105,15 @@ SCIWS_MENU MENU DISCARDABLE
|
||||
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är\tF8", ID_CALC_NS_BIN
|
||||
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ä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 "&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
|
||||
}
|
||||
@@ -0,0 +1,154 @@
|
||||
/*
|
||||
* WineCalc (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
|
||||
{
|
||||
IDS_APPNAME, "ÕðïëïãéóôÞò"
|
||||
|
||||
IDS_COPYRIGHT1, "ÕðïëïãéóôÞò 5.0. Licensed under LGPL 2"
|
||||
IDS_COPYRIGHT2 "Copyright 2003, James Briggs"
|
||||
IDS_COPYRIGHT3 "San Jose, California, USA"
|
||||
IDS_COPYRIGHT4 "[email protected]"
|
||||
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_ERR_INVALID_INPUT, "ËáíèáóìÝíï üñéóìá ãéá ôç óõíÜñôçóç."
|
||||
IDS_ERR_DIVIDE_BY_ZERO, "Äå ìðïñåß íá ãßíåé äéáßñåóç ôïõ ìçäåíüò."
|
||||
IDS_ERR_UNDEFINED, "Ôï áðïôÝëåóìá ôçò óõíÜñôçóçò åßíáé áäéåõêñßíéóôï."
|
||||
}
|
||||
|
||||
MAIN_MENU MENU DISCARDABLE
|
||||
{
|
||||
POPUP "&Åðåîåñãáóßá" {
|
||||
MENUITEM "&ÁíôéãñáöÞ Ctrl+C", IDM_COPY
|
||||
MENUITEM "&Åðéêüëëçóç Ctrl+V", IDM_PASTE
|
||||
}
|
||||
POPUP "&¸íäåéîç" {
|
||||
MENUITEM "Êáíïíéêü", IDM_MODE_STANDARD
|
||||
MENUITEM "Åðéóôçìïíéêü", IDM_MODE_SCIENTIFIC
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "ÏñãÜíùóç øçößùí", IDM_DIGIT_GROUPING
|
||||
}
|
||||
POPUP "&ÂïÞèåéá" {
|
||||
MENUITEM "ÈÝìáôá âïÞèåéáò", IDM_HELP_TOPICS
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "Ðåñß ôïõ ÕðïëïãéóôÞ", IDM_ABOUT
|
||||
}
|
||||
}
|
||||
|
||||
SCIMS_MENU MENU DISCARDABLE
|
||||
{
|
||||
POPUP "&Åðåîåñãáóßá" {
|
||||
MENUITEM "&ÁíôéãñáöÞ Ctrl+C", IDM_COPY
|
||||
MENUITEM "&Åðéêüëëçóç Ctrl+V", IDM_PASTE
|
||||
}
|
||||
POPUP "&¸íäåéîç" {
|
||||
MENUITEM "Êáíïíéêü", IDM_MODE_STANDARD
|
||||
MENUITEM "Åðéóôçìïíéêü", IDM_MODE_SCIENTIFIC
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "Äåêáåîáäéêü\tF5", ID_CALC_NS_HEX
|
||||
MENUITEM "Äåêáäéêü\tF6", ID_CALC_NS_DEC
|
||||
MENUITEM "Ïêôáäéêü\tF7", ID_CALC_NS_OCT
|
||||
MENUITEM "Äõáäéêü\tF8", ID_CALC_NS_BIN
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "Âáèìïß\tF2", ID_CALC_MS_DEGREES
|
||||
MENUITEM "Ìïßñåò\tF3", ID_CALC_MS_RADIANS
|
||||
MENUITEM "Grads\tF4", ID_CALC_MS_GRADS
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "ÏñãÜíùóç øçößùí", IDM_DIGIT_GROUPING
|
||||
}
|
||||
POPUP "&ÂïÞèåéá" {
|
||||
MENUITEM "ÈÝìáôá âïÞèåéáò", IDM_HELP_TOPICS
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "Ðåñß ôïõ ÕðïëïãéóôÞ", IDM_ABOUT
|
||||
}
|
||||
}
|
||||
|
||||
SCIWS_MENU MENU DISCARDABLE
|
||||
{
|
||||
POPUP "&Åðåîåñãáóßá" {
|
||||
MENUITEM "&ÁíôéãñáöÞ Ctrl+C", IDM_COPY
|
||||
MENUITEM "&Åðéêüëëçóç Ctrl+V", IDM_PASTE
|
||||
}
|
||||
POPUP "&¸íäåéîç" {
|
||||
MENUITEM "Êáíïíéêü", IDM_MODE_STANDARD
|
||||
MENUITEM "Åðéóôçìïíéêü", IDM_MODE_SCIENTIFIC
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "Äåêáåîáäéêü\tF5", ID_CALC_NS_HEX
|
||||
MENUITEM "Äåêáäéêü\tF6", ID_CALC_NS_DEC
|
||||
MENUITEM "Ïêôáäéêü\tF7", ID_CALC_NS_OCT
|
||||
MENUITEM "Äõáäéêü\tF8", ID_CALC_NS_BIN
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "Âáèìïß\tF2", ID_CALC_MS_DEGREES
|
||||
MENUITEM "Ìïßñåò\tF3", ID_CALC_MS_RADIANS
|
||||
MENUITEM "Grads\tF4", ID_CALC_MS_GRADS
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "ÏñãÜíùóç øçößùí", IDM_DIGIT_GROUPING
|
||||
}
|
||||
POPUP "&ÂïÞèåéá" {
|
||||
MENUITEM "ÈÝìáôá âïÞèåéáò", IDM_HELP_TOPICS
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "Ðåñß ôïõ ÕðïëïãéóôÞ", IDM_ABOUT
|
||||
}
|
||||
}
|
||||
|
||||
MAIN_MENU ACCELERATORS
|
||||
BEGIN
|
||||
VK_F1, IDV_HELP, VIRTKEY
|
||||
END
|
||||
|
||||
DLG_ABOUT DIALOG 12,0,120,82
|
||||
CAPTION "Ðåñß ôïõ GNU winecalc"
|
||||
STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
|
||||
BEGIN
|
||||
DEFPUSHBUTTON "OK", IDOK, 42, 60, 30, 14, WS_CHILD | WS_VISIBLE | WS_TABSTOP
|
||||
END
|
||||
|
||||
WHATS_THIS_MENU MENU DISCARDABLE
|
||||
{
|
||||
POPUP "" {
|
||||
MENUITEM "Ôé åßíáé áõôü;", IDM_WHATS_THIS
|
||||
}
|
||||
}
|
||||
|
||||
DLG_STATS DIALOG 12,0,125,78
|
||||
CAPTION "Statistics Box"
|
||||
FONT 9, "Tahoma"
|
||||
STYLE WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE
|
||||
BEGIN
|
||||
DEFPUSHBUTTON "&RET", ID_STATS_RET, 4, 52, 25, 13, WS_TABSTOP | WS_GROUP
|
||||
PUSHBUTTON "&LOAD", ID_STATS_LOAD, 34, 52, 25, 13, WS_TABSTOP | WS_GROUP
|
||||
PUSHBUTTON "&CD" ID_STATS_CD, 64, 52, 25, 13, WS_TABSTOP | WS_GROUP
|
||||
PUSHBUTTON "C&AD", ID_STATS_CAD, 94, 52, 25, 13, WS_TABSTOP | WS_GROUP
|
||||
END
|
||||
@@ -1,156 +1,156 @@
|
||||
/*
|
||||
* WineCalc (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
|
||||
{
|
||||
IDS_APPNAME, "Számológép"
|
||||
|
||||
IDS_COPYRIGHT1, "Calculator 5.0. Licensed under LGPL 2"
|
||||
IDS_COPYRIGHT2 "Copyright 2003, James Briggs"
|
||||
IDS_COPYRIGHT3 "San Jose, California, USA"
|
||||
IDS_COPYRIGHT4 "[email protected]"
|
||||
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ök"
|
||||
IDS_ERR_INVALID_INPUT, "Hibás bemenet."
|
||||
IDS_ERR_DIVIDE_BY_ZERO, "Nem tudok nullával osztani."
|
||||
IDS_ERR_UNDEFINED, "Result of function is undefined."
|
||||
}
|
||||
|
||||
MAIN_MENU MENU DISCARDABLE
|
||||
{
|
||||
POPUP "&Szerkesztés" {
|
||||
MENUITEM "&Másolás Ctrl+C", IDM_COPY
|
||||
MENUITEM "&Beillesztés Ctrl+V", IDM_PASTE
|
||||
}
|
||||
POPUP "&Nézet" {
|
||||
MENUITEM "Alap", IDM_MODE_STANDARD
|
||||
MENUITEM "Tudományos", IDM_MODE_SCIENTIFIC
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "Számjegyek csoportosítása", IDM_DIGIT_GROUPING
|
||||
}
|
||||
POPUP "Sú&gó" {
|
||||
MENUITEM "&Témakörök", IDM_HELP_TOPICS
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "Számológép névjegye", IDM_ABOUT
|
||||
}
|
||||
}
|
||||
|
||||
SCIMS_MENU MENU DISCARDABLE
|
||||
{
|
||||
POPUP "&Szerkesztés" {
|
||||
MENUITEM "&Másolás Ctrl+C", IDM_COPY
|
||||
MENUITEM "&Beillesztés Ctrl+V", IDM_PASTE
|
||||
}
|
||||
POPUP "&Nézet" {
|
||||
MENUITEM "Alap", IDM_MODE_STANDARD
|
||||
MENUITEM "Tudományos", IDM_MODE_SCIENTIFIC
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "Hexadecimális\tF5", ID_CALC_NS_HEX
|
||||
MENUITEM "Decimális\tF6", ID_CALC_NS_DEC
|
||||
MENUITEM "Oktális\tF7", ID_CALC_NS_OCT
|
||||
MENUITEM "Bináris\tF8", ID_CALC_NS_BIN
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "Fok\tF2", ID_CALC_MS_DEGREES
|
||||
MENUITEM "Radián\tF3", ID_CALC_MS_RADIANS
|
||||
MENUITEM "Újfok\tF4", ID_CALC_MS_GRADS
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "Számjegyek csoportosítása", IDM_DIGIT_GROUPING
|
||||
}
|
||||
POPUP "Sú&gó" {
|
||||
MENUITEM "&Témakörök", IDM_HELP_TOPICS
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "Számológép névjegye", IDM_ABOUT
|
||||
}
|
||||
}
|
||||
|
||||
SCIWS_MENU MENU DISCARDABLE
|
||||
{
|
||||
POPUP "&Szerkesztés" {
|
||||
MENUITEM "&Másolás Ctrl+C", IDM_COPY
|
||||
MENUITEM "&Beillesztés Ctrl+V", IDM_PASTE
|
||||
}
|
||||
POPUP "&Nézet" {
|
||||
MENUITEM "Alap", IDM_MODE_STANDARD
|
||||
MENUITEM "Tudományos", IDM_MODE_SCIENTIFIC
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "Hexadecimális\tF5", ID_CALC_NS_HEX
|
||||
MENUITEM "Decimális\tF6", ID_CALC_NS_DEC
|
||||
MENUITEM "Oktális\tF7", ID_CALC_NS_OCT
|
||||
MENUITEM "Bináris\tF8", ID_CALC_NS_BIN
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "Négyszeres szó\tF12", ID_CALC_WS_QWORD
|
||||
MENUITEM "Duplaszó\tF2", ID_CALC_WS_DWORD
|
||||
MENUITEM "Szó\tF3", ID_CALC_WS_WORD
|
||||
MENUITEM "Bájt\tF4", ID_CALC_WS_BYTE
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "Számjegyek csoportosítása", IDM_DIGIT_GROUPING
|
||||
}
|
||||
POPUP "Sú&gó" {
|
||||
MENUITEM "&Témakörök", IDM_HELP_TOPICS
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "Számológép névjegye", IDM_ABOUT
|
||||
}
|
||||
}
|
||||
|
||||
MAIN_MENU ACCELERATORS
|
||||
BEGIN
|
||||
VK_F1, IDV_HELP, VIRTKEY
|
||||
END
|
||||
|
||||
DLG_ABOUT DIALOG 12,0,120,82
|
||||
CAPTION "GNU winecalc (számológép) névjegye"
|
||||
STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
|
||||
BEGIN
|
||||
DEFPUSHBUTTON "OK", IDOK, 42, 60, 30, 14, WS_CHILD | WS_VISIBLE | WS_TABSTOP
|
||||
END
|
||||
|
||||
WHATS_THIS_MENU MENU DISCARDABLE
|
||||
{
|
||||
POPUP "" {
|
||||
MENUITEM "Mi ez?", IDM_WHATS_THIS
|
||||
}
|
||||
}
|
||||
|
||||
DLG_STATS DIALOG 12,0,125,78
|
||||
CAPTION "Statisztika"
|
||||
FONT 9, "Tahoma"
|
||||
STYLE WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE
|
||||
BEGIN
|
||||
DEFPUSHBUTTON "&RET", ID_STATS_RET, 4, 52, 25, 13, WS_TABSTOP | WS_GROUP
|
||||
PUSHBUTTON "&LOAD", ID_STATS_LOAD, 34, 52, 25, 13, WS_TABSTOP | WS_GROUP
|
||||
PUSHBUTTON "&CD" ID_STATS_CD, 64, 52, 25, 13, WS_TABSTOP | WS_GROUP
|
||||
PUSHBUTTON "C&AD", ID_STATS_CAD, 94, 52, 25, 13, WS_TABSTOP | WS_GROUP
|
||||
END
|
||||
/*
|
||||
* WineCalc (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
|
||||
{
|
||||
IDS_APPNAME, "Számológép"
|
||||
|
||||
IDS_COPYRIGHT1, "Calculator 5.0. Licensed under LGPL 2"
|
||||
IDS_COPYRIGHT2 "Copyright 2003, James Briggs"
|
||||
IDS_COPYRIGHT3 "San Jose, California, USA"
|
||||
IDS_COPYRIGHT4 "[email protected]"
|
||||
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ök"
|
||||
IDS_ERR_INVALID_INPUT, "Hibás bemenet."
|
||||
IDS_ERR_DIVIDE_BY_ZERO, "Nem tudok nullával osztani."
|
||||
IDS_ERR_UNDEFINED, "Result of function is undefined."
|
||||
}
|
||||
|
||||
MAIN_MENU MENU DISCARDABLE
|
||||
{
|
||||
POPUP "&Szerkesztés" {
|
||||
MENUITEM "&Másolás Ctrl+C", IDM_COPY
|
||||
MENUITEM "&Beillesztés Ctrl+V", IDM_PASTE
|
||||
}
|
||||
POPUP "&Nézet" {
|
||||
MENUITEM "Alap", IDM_MODE_STANDARD
|
||||
MENUITEM "Tudományos", IDM_MODE_SCIENTIFIC
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "Számjegyek csoportosítása", IDM_DIGIT_GROUPING
|
||||
}
|
||||
POPUP "Sú&gó" {
|
||||
MENUITEM "&Témakörök", IDM_HELP_TOPICS
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "Számológép névjegye", IDM_ABOUT
|
||||
}
|
||||
}
|
||||
|
||||
SCIMS_MENU MENU DISCARDABLE
|
||||
{
|
||||
POPUP "&Szerkesztés" {
|
||||
MENUITEM "&Másolás Ctrl+C", IDM_COPY
|
||||
MENUITEM "&Beillesztés Ctrl+V", IDM_PASTE
|
||||
}
|
||||
POPUP "&Nézet" {
|
||||
MENUITEM "Alap", IDM_MODE_STANDARD
|
||||
MENUITEM "Tudományos", IDM_MODE_SCIENTIFIC
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "Hexadecimális\tF5", ID_CALC_NS_HEX
|
||||
MENUITEM "Decimális\tF6", ID_CALC_NS_DEC
|
||||
MENUITEM "Oktális\tF7", ID_CALC_NS_OCT
|
||||
MENUITEM "Bináris\tF8", ID_CALC_NS_BIN
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "Fok\tF2", ID_CALC_MS_DEGREES
|
||||
MENUITEM "Radián\tF3", ID_CALC_MS_RADIANS
|
||||
MENUITEM "Újfok\tF4", ID_CALC_MS_GRADS
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "Számjegyek csoportosítása", IDM_DIGIT_GROUPING
|
||||
}
|
||||
POPUP "Sú&gó" {
|
||||
MENUITEM "&Témakörök", IDM_HELP_TOPICS
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "Számológép névjegye", IDM_ABOUT
|
||||
}
|
||||
}
|
||||
|
||||
SCIWS_MENU MENU DISCARDABLE
|
||||
{
|
||||
POPUP "&Szerkesztés" {
|
||||
MENUITEM "&Másolás Ctrl+C", IDM_COPY
|
||||
MENUITEM "&Beillesztés Ctrl+V", IDM_PASTE
|
||||
}
|
||||
POPUP "&Nézet" {
|
||||
MENUITEM "Alap", IDM_MODE_STANDARD
|
||||
MENUITEM "Tudományos", IDM_MODE_SCIENTIFIC
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "Hexadecimális\tF5", ID_CALC_NS_HEX
|
||||
MENUITEM "Decimális\tF6", ID_CALC_NS_DEC
|
||||
MENUITEM "Oktális\tF7", ID_CALC_NS_OCT
|
||||
MENUITEM "Bináris\tF8", ID_CALC_NS_BIN
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "Négyszeres szó\tF12", ID_CALC_WS_QWORD
|
||||
MENUITEM "Duplaszó\tF2", ID_CALC_WS_DWORD
|
||||
MENUITEM "Szó\tF3", ID_CALC_WS_WORD
|
||||
MENUITEM "Bájt\tF4", ID_CALC_WS_BYTE
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "Számjegyek csoportosítása", IDM_DIGIT_GROUPING
|
||||
}
|
||||
POPUP "Sú&gó" {
|
||||
MENUITEM "&Témakörök", IDM_HELP_TOPICS
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "Számológép névjegye", IDM_ABOUT
|
||||
}
|
||||
}
|
||||
|
||||
MAIN_MENU ACCELERATORS
|
||||
BEGIN
|
||||
VK_F1, IDV_HELP, VIRTKEY
|
||||
END
|
||||
|
||||
DLG_ABOUT DIALOG 12,0,120,82
|
||||
CAPTION "GNU winecalc (számológép) névjegye"
|
||||
STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
|
||||
BEGIN
|
||||
DEFPUSHBUTTON "OK", IDOK, 42, 60, 30, 14, WS_CHILD | WS_VISIBLE | WS_TABSTOP
|
||||
END
|
||||
|
||||
WHATS_THIS_MENU MENU DISCARDABLE
|
||||
{
|
||||
POPUP "" {
|
||||
MENUITEM "Mi ez?", IDM_WHATS_THIS
|
||||
}
|
||||
}
|
||||
|
||||
DLG_STATS DIALOG 12,0,125,78
|
||||
CAPTION "Statisztika"
|
||||
FONT 9, "Tahoma"
|
||||
STYLE WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE
|
||||
BEGIN
|
||||
DEFPUSHBUTTON "&RET", ID_STATS_RET, 4, 52, 25, 13, WS_TABSTOP | WS_GROUP
|
||||
PUSHBUTTON "&LOAD", ID_STATS_LOAD, 34, 52, 25, 13, WS_TABSTOP | WS_GROUP
|
||||
PUSHBUTTON "&CD" ID_STATS_CD, 64, 52, 25, 13, WS_TABSTOP | WS_GROUP
|
||||
PUSHBUTTON "C&AD", ID_STATS_CAD, 94, 52, 25, 13, WS_TABSTOP | WS_GROUP
|
||||
END
|
||||
@@ -1,7 +1,7 @@
|
||||
/*
|
||||
* WineCalc (It.rc)
|
||||
*
|
||||
* Copyright 2003 James Briggs
|
||||
* 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
|
||||
@@ -26,9 +26,9 @@ LANGUAGE LANG_ITALIAN, SUBLANG_NEUTRAL
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
{
|
||||
IDS_APPNAME, "Calculator"
|
||||
IDS_APPNAME, "Calcolatrice"
|
||||
|
||||
IDS_COPYRIGHT1, "Calculator 5.0. Licensed under LGPL 2"
|
||||
IDS_COPYRIGHT1, "Calcolatrice 5.0. sotto licenza LGPL 2"
|
||||
IDS_COPYRIGHT2 "Copyright 2003, James Briggs"
|
||||
IDS_COPYRIGHT3 "San Jose, California, USA"
|
||||
IDS_COPYRIGHT4 "[email protected]"
|
||||
@@ -43,84 +43,84 @@ STRINGTABLE DISCARDABLE
|
||||
IDS_BTN_MEM_PLUS, "M+"
|
||||
IDS_BTN_MEM_STATUS_M, "M"
|
||||
IDS_BTN_SQRT, "sqrt"
|
||||
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."
|
||||
IDS_ERR_INVALID_INPUT, "Input invalido per la funzione."
|
||||
IDS_ERR_DIVIDE_BY_ZERO, "Non si può dividere per zero."
|
||||
IDS_ERR_UNDEFINED, "Il risultato della funzione è indefinito."
|
||||
}
|
||||
|
||||
MAIN_MENU MENU DISCARDABLE
|
||||
{
|
||||
POPUP "&Edit" {
|
||||
MENUITEM "&Copy Ctrl+C", IDM_COPY
|
||||
MENUITEM "&Paste Ctrl+V", IDM_PASTE
|
||||
POPUP "&Modifica" {
|
||||
MENUITEM "&Copia Ctrl+C", IDM_COPY
|
||||
MENUITEM "I&ncolla Ctrl+V", IDM_PASTE
|
||||
}
|
||||
POPUP "&View" {
|
||||
POPUP "&Visualizza" {
|
||||
MENUITEM "Standard", IDM_MODE_STANDARD
|
||||
MENUITEM "Scientific", IDM_MODE_SCIENTIFIC
|
||||
MENUITEM "Scientifica", IDM_MODE_SCIENTIFIC
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "Digit Grouping", IDM_DIGIT_GROUPING
|
||||
MENUITEM "Raggruppamento cifre", IDM_DIGIT_GROUPING
|
||||
}
|
||||
POPUP "&Help" {
|
||||
MENUITEM "Help Topics", IDM_HELP_TOPICS
|
||||
POPUP "&?" {
|
||||
MENUITEM "Guida in linea", IDM_HELP_TOPICS
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "About Calculator", IDM_ABOUT
|
||||
MENUITEM "Informazioni su Calcolatrice", IDM_ABOUT
|
||||
}
|
||||
}
|
||||
|
||||
SCIMS_MENU MENU DISCARDABLE
|
||||
{
|
||||
POPUP "&Edit" {
|
||||
MENUITEM "&Copy Ctrl+C", IDM_COPY
|
||||
MENUITEM "&Paste Ctrl+V", IDM_PASTE
|
||||
POPUP "&Modifica" {
|
||||
MENUITEM "&Copia Ctrl+C", IDM_COPY
|
||||
MENUITEM "I&ncolla Ctrl+V", IDM_PASTE
|
||||
}
|
||||
POPUP "&View" {
|
||||
POPUP "&Visualizza" {
|
||||
MENUITEM "Standard", IDM_MODE_STANDARD
|
||||
MENUITEM "Scientific", IDM_MODE_SCIENTIFIC
|
||||
MENUITEM "Scientifica", 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 "Dec\tF6", ID_CALC_NS_DEC
|
||||
MENUITEM "Oct\tF7", ID_CALC_NS_OCT
|
||||
MENUITEM "Bin\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 "Gradi\tF2", ID_CALC_MS_DEGREES
|
||||
MENUITEM "Radianti\tF3", ID_CALC_MS_RADIANS
|
||||
MENUITEM "Gradienti\tF4", ID_CALC_MS_GRADS
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "Digit Grouping", IDM_DIGIT_GROUPING
|
||||
MENUITEM "Raggruppamento cifre", IDM_DIGIT_GROUPING
|
||||
}
|
||||
POPUP "&Help" {
|
||||
MENUITEM "Help Topics", IDM_HELP_TOPICS
|
||||
POPUP "&?" {
|
||||
MENUITEM "Guida in linea", IDM_HELP_TOPICS
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "About Calculator", IDM_ABOUT
|
||||
MENUITEM "Informazioni su calcolatrice", IDM_ABOUT
|
||||
}
|
||||
}
|
||||
|
||||
SCIWS_MENU MENU DISCARDABLE
|
||||
{
|
||||
POPUP "&Edit" {
|
||||
MENUITEM "&Copy Ctrl+C", IDM_COPY
|
||||
MENUITEM "&Paste Ctrl+V", IDM_PASTE
|
||||
POPUP "&Modifica" {
|
||||
MENUITEM "&Copia Ctrl+C", IDM_COPY
|
||||
MENUITEM "I&ncolla Ctrl+V", IDM_PASTE
|
||||
}
|
||||
POPUP "&View" {
|
||||
POPUP "&Visualizza" {
|
||||
MENUITEM "Standard", IDM_MODE_STANDARD
|
||||
MENUITEM "Scientific", IDM_MODE_SCIENTIFIC
|
||||
MENUITEM "Scientifica", 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 "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 "Digit Grouping", IDM_DIGIT_GROUPING
|
||||
MENUITEM "Raggruppamento cifre", IDM_DIGIT_GROUPING
|
||||
}
|
||||
POPUP "&Help" {
|
||||
MENUITEM "Help Topics", IDM_HELP_TOPICS
|
||||
POPUP "&?" {
|
||||
MENUITEM "Guida in linea", IDM_HELP_TOPICS
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "About Calculator", IDM_ABOUT
|
||||
MENUITEM "Informazioni su calcolatrice", IDM_ABOUT
|
||||
}
|
||||
}
|
||||
|
||||
@@ -132,19 +132,19 @@ END
|
||||
WHATS_THIS_MENU MENU DISCARDABLE
|
||||
{
|
||||
POPUP "" {
|
||||
MENUITEM "What's This?", IDM_WHATS_THIS
|
||||
MENUITEM "?", IDM_WHATS_THIS
|
||||
}
|
||||
}
|
||||
|
||||
DLG_ABOUT DIALOG 12,0,120,82
|
||||
CAPTION "About GNU winecalc"
|
||||
CAPTION "Informazioni su GNU winecalc"
|
||||
STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
|
||||
BEGIN
|
||||
DEFPUSHBUTTON "OK", IDOK, 42, 60, 30, 14, WS_CHILD | WS_VISIBLE | WS_TABSTOP
|
||||
END
|
||||
|
||||
DLG_STATS DIALOG 12,0,125,78
|
||||
CAPTION "Statistics Box"
|
||||
CAPTION "Statistiche"
|
||||
FONT 9, "Tahoma"
|
||||
STYLE WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE
|
||||
BEGIN
|
||||
@@ -0,0 +1,155 @@
|
||||
/*
|
||||
* 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_NORWEGIAN, SUBLANG_NEUTRAL
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
{
|
||||
IDS_APPNAME, "Kalkulator"
|
||||
|
||||
IDS_COPYRIGHT1, "Kalkulator 5.0. Lisensert under LGPL 2"
|
||||
IDS_COPYRIGHT2 "Copyright 2003, James Briggs"
|
||||
IDS_COPYRIGHT3 "San Jose, California, USA"
|
||||
IDS_COPYRIGHT4 "[email protected]"
|
||||
IDS_COPYRIGHT5 "http://www.ActionMessage.com/winecalc/"
|
||||
|
||||
IDS_BTN_BACKSPACE, "Tilbake"
|
||||
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_ERR_INVALID_INPUT, "Ugyldig informasjon for funksjon."
|
||||
IDS_ERR_DIVIDE_BY_ZERO, "Kan ikke dividere på null."
|
||||
IDS_ERR_UNDEFINED, "Resultatet av funksjoner er ubestemt."
|
||||
}
|
||||
|
||||
MAIN_MENU MENU DISCARDABLE
|
||||
{
|
||||
POPUP "&Rediger" {
|
||||
MENUITEM "&Kopier Ctrl+C", IDM_COPY
|
||||
MENUITEM "&Lim inn Ctrl+V", IDM_PASTE
|
||||
}
|
||||
POPUP "&Vis" {
|
||||
MENUITEM "Standard", IDM_MODE_STANDARD
|
||||
MENUITEM "Vitenskapelig", IDM_MODE_SCIENTIFIC
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "Siffergruppering", IDM_DIGIT_GROUPING
|
||||
}
|
||||
POPUP "&Hjelp" {
|
||||
MENUITEM "Emner i hjelp", IDM_HELP_TOPICS
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "Om kalkulator", IDM_ABOUT
|
||||
}
|
||||
}
|
||||
|
||||
SCIMS_MENU MENU DISCARDABLE
|
||||
{
|
||||
POPUP "&Rediger" {
|
||||
MENUITEM "&Kopiere Ctrl+C", IDM_COPY
|
||||
MENUITEM "&Lim inn Ctrl+V", IDM_PASTE
|
||||
}
|
||||
POPUP "&Vis" {
|
||||
MENUITEM "Standard", IDM_MODE_STANDARD
|
||||
MENUITEM "Vitenskapelig", IDM_MODE_SCIENTIFIC
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "Heksadesimalt\tF5", ID_CALC_NS_HEX
|
||||
MENUITEM "Desimalt\tF6", ID_CALC_NS_DEC
|
||||
MENUITEM "Oktalt\tF7", ID_CALC_NS_OCT
|
||||
MENUITEM "Binært\tF8", ID_CALC_NS_BIN
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "Grader\tF2", ID_CALC_MS_DEGREES
|
||||
MENUITEM "Radianer\tF3", ID_CALC_MS_RADIANS
|
||||
MENUITEM "Gradienter\tF4", ID_CALC_MS_GRADS
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "Siffergruppering", IDM_DIGIT_GROUPING
|
||||
}
|
||||
POPUP "&Hjelp" {
|
||||
MENUITEM "Emner i hjelp", IDM_HELP_TOPICS
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "Om Kalkulator", IDM_ABOUT
|
||||
}
|
||||
}
|
||||
|
||||
SCIWS_MENU MENU DISCARDABLE
|
||||
{
|
||||
POPUP "&Rediger" {
|
||||
MENUITEM "&Kopier Ctrl+C", IDM_COPY
|
||||
MENUITEM "&Lim inn Ctrl+V", IDM_PASTE
|
||||
}
|
||||
POPUP "&Vis" {
|
||||
MENUITEM "Standard", IDM_MODE_STANDARD
|
||||
MENUITEM "Vitenskapelig", IDM_MODE_SCIENTIFIC
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "Heksadesimalt\tF5", ID_CALC_NS_HEX
|
||||
MENUITEM "Desimal\tF6", ID_CALC_NS_DEC
|
||||
MENUITEM "Oktalt\tF7", ID_CALC_NS_OCT
|
||||
MENUITEM "Binært\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 "Siffergruppering", IDM_DIGIT_GROUPING
|
||||
}
|
||||
POPUP "&Help" {
|
||||
MENUITEM "Emner i hjelp", IDM_HELP_TOPICS
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "Om Kalkulator", IDM_ABOUT
|
||||
}
|
||||
}
|
||||
|
||||
MAIN_MENU ACCELERATORS
|
||||
BEGIN
|
||||
VK_F1, IDV_HELP, VIRTKEY
|
||||
END
|
||||
|
||||
DLG_ABOUT DIALOG 12,0,120,82
|
||||
CAPTION "Om GNU winecalc"
|
||||
STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
|
||||
BEGIN
|
||||
DEFPUSHBUTTON "OK", IDOK, 42, 60, 30, 14, WS_CHILD | WS_VISIBLE | WS_TABSTOP
|
||||
END
|
||||
|
||||
WHATS_THIS_MENU MENU DISCARDABLE
|
||||
{
|
||||
POPUP "" {
|
||||
MENUITEM "Hva er dette?", IDM_WHATS_THIS
|
||||
}
|
||||
}
|
||||
|
||||
DLG_STATS DIALOG 12,0,125,78
|
||||
CAPTION "Statistics Box"
|
||||
FONT 9, "Tahoma"
|
||||
STYLE WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE
|
||||
BEGIN
|
||||
DEFPUSHBUTTON "&RET", ID_STATS_RET, 4, 52, 25, 13, WS_TABSTOP | WS_GROUP
|
||||
PUSHBUTTON "&LOAD", ID_STATS_LOAD, 34, 52, 25, 13, WS_TABSTOP | WS_GROUP
|
||||
PUSHBUTTON "&CD" ID_STATS_CD, 64, 52, 25, 13, WS_TABSTOP | WS_GROUP
|
||||
PUSHBUTTON "C&AD", ID_STATS_CAD, 94, 52, 25, 13, WS_TABSTOP | WS_GROUP
|
||||
END
|
||||
@@ -1,155 +1,155 @@
|
||||
/*
|
||||
* WineCalc (En.rc)
|
||||
*
|
||||
* Copyright 2005 David Nordenberg
|
||||
*
|
||||
* 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_SWEDISH, SUBLANG_NEUTRAL
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
{
|
||||
IDS_APPNAME, "Kalkylatorn"
|
||||
|
||||
IDS_COPYRIGHT1, "Kalkylatorn 5.0. Licenserad under LGPL 2"
|
||||
IDS_COPYRIGHT2 "Copyright 2003, James Briggs"
|
||||
IDS_COPYRIGHT3 "San Jose, California, USA"
|
||||
IDS_COPYRIGHT4 "[email protected]"
|
||||
IDS_COPYRIGHT5 "http://www.ActionMessage.com/winecalc/"
|
||||
|
||||
IDS_BTN_BACKSPACE, "Backsteg"
|
||||
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_ERR_INVALID_INPUT, "Felaktig indata för funktion."
|
||||
IDS_ERR_DIVIDE_BY_ZERO, "Kan inte dividera med noll."
|
||||
IDS_ERR_UNDEFINED, "Funktionens resultat är odefinerat."
|
||||
}
|
||||
|
||||
MAIN_MENU MENU DISCARDABLE
|
||||
{
|
||||
POPUP "&Redigera" {
|
||||
MENUITEM "&Kopiera\tCtrl+C", IDM_COPY
|
||||
MENUITEM "K&listra in\tCtrl+V", IDM_PASTE
|
||||
}
|
||||
POPUP "&Visa" {
|
||||
MENUITEM "Standard", IDM_MODE_STANDARD
|
||||
MENUITEM "Vetenskaplig", IDM_MODE_SCIENTIFIC
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "Siffergruppering", IDM_DIGIT_GROUPING
|
||||
}
|
||||
POPUP "&Hjälp" {
|
||||
MENUITEM "Hjälpavsnitt", IDM_HELP_TOPICS
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "Om Kalkylatorn", IDM_ABOUT
|
||||
}
|
||||
}
|
||||
|
||||
SCIMS_MENU MENU DISCARDABLE
|
||||
{
|
||||
POPUP "&Redigera" {
|
||||
MENUITEM "&Kopiera\tCtrl+C", IDM_COPY
|
||||
MENUITEM "K&listra in\tCtrl+V", IDM_PASTE
|
||||
}
|
||||
POPUP "&Visa" {
|
||||
MENUITEM "Standard", IDM_MODE_STANDARD
|
||||
MENUITEM "Vetenskaplig", IDM_MODE_SCIENTIFIC
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "Hex\tF5", ID_CALC_NS_HEX
|
||||
MENUITEM "Decimal\tF6", ID_CALC_NS_DEC
|
||||
MENUITEM "Oktal\tF7", ID_CALC_NS_OCT
|
||||
MENUITEM "Binär\tF8", ID_CALC_NS_BIN
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "Grader\tF2", ID_CALC_MS_DEGREES
|
||||
MENUITEM "Radianer\tF3", ID_CALC_MS_RADIANS
|
||||
MENUITEM "Gradienter\tF4", ID_CALC_MS_GRADS
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "Siffergruppering", IDM_DIGIT_GROUPING
|
||||
}
|
||||
POPUP "&Hjälp" {
|
||||
MENUITEM "Hjälpavsnitt", IDM_HELP_TOPICS
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "Om Kalkylatorn", IDM_ABOUT
|
||||
}
|
||||
}
|
||||
|
||||
SCIWS_MENU MENU DISCARDABLE
|
||||
{
|
||||
POPUP "&Redigera" {
|
||||
MENUITEM "&Kopiera\tCtrl+C", IDM_COPY
|
||||
MENUITEM "K&listra in\tCtrl+V", IDM_PASTE
|
||||
}
|
||||
POPUP "&Visa" {
|
||||
MENUITEM "Standard", IDM_MODE_STANDARD
|
||||
MENUITEM "Vetenskaplig", IDM_MODE_SCIENTIFIC
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "Hex\tF5", ID_CALC_NS_HEX
|
||||
MENUITEM "Decimal\tF6", ID_CALC_NS_DEC
|
||||
MENUITEM "Oktal\tF7", ID_CALC_NS_OCT
|
||||
MENUITEM "Binär\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 "Siffergruppering", IDM_DIGIT_GROUPING
|
||||
}
|
||||
POPUP "&Hjälp" {
|
||||
MENUITEM "Hjälpavsnitt", IDM_HELP_TOPICS
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "Om Kalkylatorn", IDM_ABOUT
|
||||
}
|
||||
}
|
||||
|
||||
MAIN_MENU ACCELERATORS
|
||||
BEGIN
|
||||
VK_F1, IDV_HELP, VIRTKEY
|
||||
END
|
||||
|
||||
DLG_ABOUT DIALOG 12,0,120,82
|
||||
CAPTION "Om GNU Kalkylatorn (winecalc)"
|
||||
STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
|
||||
BEGIN
|
||||
DEFPUSHBUTTON "OK", IDOK, 42, 60, 30, 14, WS_CHILD | WS_VISIBLE | WS_TABSTOP
|
||||
END
|
||||
|
||||
WHATS_THIS_MENU MENU DISCARDABLE
|
||||
{
|
||||
POPUP "" {
|
||||
MENUITEM "Vad är det här?", IDM_WHATS_THIS
|
||||
}
|
||||
}
|
||||
|
||||
DLG_STATS DIALOG 12,0,125,78
|
||||
CAPTION "Statistikruta"
|
||||
FONT 9, "Tahoma"
|
||||
STYLE WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE
|
||||
BEGIN
|
||||
DEFPUSHBUTTON "&RET", ID_STATS_RET, 4, 52, 25, 13, WS_TABSTOP | WS_GROUP
|
||||
PUSHBUTTON "&LOAD", ID_STATS_LOAD, 34, 52, 25, 13, WS_TABSTOP | WS_GROUP
|
||||
PUSHBUTTON "&CD" ID_STATS_CD, 64, 52, 25, 13, WS_TABSTOP | WS_GROUP
|
||||
PUSHBUTTON "C&AD", ID_STATS_CAD, 94, 52, 25, 13, WS_TABSTOP | WS_GROUP
|
||||
END
|
||||
/*
|
||||
* WineCalc (En.rc)
|
||||
*
|
||||
* Copyright 2005 David Nordenberg
|
||||
*
|
||||
* 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_SWEDISH, SUBLANG_NEUTRAL
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
{
|
||||
IDS_APPNAME, "Kalkylatorn"
|
||||
|
||||
IDS_COPYRIGHT1, "Kalkylatorn 5.0. Licenserad under LGPL 2"
|
||||
IDS_COPYRIGHT2 "Copyright 2003, James Briggs"
|
||||
IDS_COPYRIGHT3 "San Jose, California, USA"
|
||||
IDS_COPYRIGHT4 "[email protected]"
|
||||
IDS_COPYRIGHT5 "http://www.ActionMessage.com/winecalc/"
|
||||
|
||||
IDS_BTN_BACKSPACE, "Backsteg"
|
||||
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_ERR_INVALID_INPUT, "Felaktig indata för funktion."
|
||||
IDS_ERR_DIVIDE_BY_ZERO, "Kan inte dividera med noll."
|
||||
IDS_ERR_UNDEFINED, "Funktionens resultat är odefinerat."
|
||||
}
|
||||
|
||||
MAIN_MENU MENU DISCARDABLE
|
||||
{
|
||||
POPUP "&Redigera" {
|
||||
MENUITEM "&Kopiera\tCtrl+C", IDM_COPY
|
||||
MENUITEM "K&listra in\tCtrl+V", IDM_PASTE
|
||||
}
|
||||
POPUP "&Visa" {
|
||||
MENUITEM "Standard", IDM_MODE_STANDARD
|
||||
MENUITEM "Vetenskaplig", IDM_MODE_SCIENTIFIC
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "Siffergruppering", IDM_DIGIT_GROUPING
|
||||
}
|
||||
POPUP "&Hjälp" {
|
||||
MENUITEM "Hjälpavsnitt", IDM_HELP_TOPICS
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "Om Kalkylatorn", IDM_ABOUT
|
||||
}
|
||||
}
|
||||
|
||||
SCIMS_MENU MENU DISCARDABLE
|
||||
{
|
||||
POPUP "&Redigera" {
|
||||
MENUITEM "&Kopiera\tCtrl+C", IDM_COPY
|
||||
MENUITEM "K&listra in\tCtrl+V", IDM_PASTE
|
||||
}
|
||||
POPUP "&Visa" {
|
||||
MENUITEM "Standard", IDM_MODE_STANDARD
|
||||
MENUITEM "Vetenskaplig", IDM_MODE_SCIENTIFIC
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "Hex\tF5", ID_CALC_NS_HEX
|
||||
MENUITEM "Decimal\tF6", ID_CALC_NS_DEC
|
||||
MENUITEM "Oktal\tF7", ID_CALC_NS_OCT
|
||||
MENUITEM "Binär\tF8", ID_CALC_NS_BIN
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "Grader\tF2", ID_CALC_MS_DEGREES
|
||||
MENUITEM "Radianer\tF3", ID_CALC_MS_RADIANS
|
||||
MENUITEM "Gradienter\tF4", ID_CALC_MS_GRADS
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "Siffergruppering", IDM_DIGIT_GROUPING
|
||||
}
|
||||
POPUP "&Hjälp" {
|
||||
MENUITEM "Hjälpavsnitt", IDM_HELP_TOPICS
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "Om Kalkylatorn", IDM_ABOUT
|
||||
}
|
||||
}
|
||||
|
||||
SCIWS_MENU MENU DISCARDABLE
|
||||
{
|
||||
POPUP "&Redigera" {
|
||||
MENUITEM "&Kopiera\tCtrl+C", IDM_COPY
|
||||
MENUITEM "K&listra in\tCtrl+V", IDM_PASTE
|
||||
}
|
||||
POPUP "&Visa" {
|
||||
MENUITEM "Standard", IDM_MODE_STANDARD
|
||||
MENUITEM "Vetenskaplig", IDM_MODE_SCIENTIFIC
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "Hex\tF5", ID_CALC_NS_HEX
|
||||
MENUITEM "Decimal\tF6", ID_CALC_NS_DEC
|
||||
MENUITEM "Oktal\tF7", ID_CALC_NS_OCT
|
||||
MENUITEM "Binär\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 "Siffergruppering", IDM_DIGIT_GROUPING
|
||||
}
|
||||
POPUP "&Hjälp" {
|
||||
MENUITEM "Hjälpavsnitt", IDM_HELP_TOPICS
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "Om Kalkylatorn", IDM_ABOUT
|
||||
}
|
||||
}
|
||||
|
||||
MAIN_MENU ACCELERATORS
|
||||
BEGIN
|
||||
VK_F1, IDV_HELP, VIRTKEY
|
||||
END
|
||||
|
||||
DLG_ABOUT DIALOG 12,0,120,82
|
||||
CAPTION "Om GNU Kalkylatorn (winecalc)"
|
||||
STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
|
||||
BEGIN
|
||||
DEFPUSHBUTTON "OK", IDOK, 42, 60, 30, 14, WS_CHILD | WS_VISIBLE | WS_TABSTOP
|
||||
END
|
||||
|
||||
WHATS_THIS_MENU MENU DISCARDABLE
|
||||
{
|
||||
POPUP "" {
|
||||
MENUITEM "Vad är det här?", IDM_WHATS_THIS
|
||||
}
|
||||
}
|
||||
|
||||
DLG_STATS DIALOG 12,0,125,78
|
||||
CAPTION "Statistikruta"
|
||||
FONT 9, "Tahoma"
|
||||
STYLE WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_VISIBLE
|
||||
BEGIN
|
||||
DEFPUSHBUTTON "&RET", ID_STATS_RET, 4, 52, 25, 13, WS_TABSTOP | WS_GROUP
|
||||
PUSHBUTTON "&LOAD", ID_STATS_LOAD, 34, 52, 25, 13, WS_TABSTOP | WS_GROUP
|
||||
PUSHBUTTON "&CD" ID_STATS_CD, 64, 52, 25, 13, WS_TABSTOP | WS_GROUP
|
||||
PUSHBUTTON "C&AD", ID_STATS_CAD, 94, 52, 25, 13, WS_TABSTOP | WS_GROUP
|
||||
END
|
||||
@@ -23,18 +23,20 @@
|
||||
|
||||
IDI_CALCICON ICON "calculator.ico"
|
||||
|
||||
#include "En.rc"
|
||||
#include "Cz.rc"
|
||||
#include "De.rc"
|
||||
#include "Es.rc"
|
||||
#include "Fr.rc"
|
||||
#include "It.rc"
|
||||
#include "Ja.rc"
|
||||
#include "Nl.rc"
|
||||
#include "Pt.rc"
|
||||
#include "Ru.rc"
|
||||
#include "Sv.rc"
|
||||
#include "Hu.rc"
|
||||
#include "Uk.rc"
|
||||
#include "lang/En.rc"
|
||||
#include "lang/Cz.rc"
|
||||
#include "lang/De.rc"
|
||||
#include "lang/Es.rc"
|
||||
#include "lang/Fr.rc"
|
||||
#include "lang/It.rc"
|
||||
#include "lang/Ja.rc"
|
||||
#include "lang/Nl.rc"
|
||||
#include "lang/Pt.rc"
|
||||
#include "lang/Ru.rc"
|
||||
#include "lang/Sv.rc"
|
||||
#include "lang/Hu.rc"
|
||||
#include "lang/Uk.rc"
|
||||
#include "lang/Gr.rc"
|
||||
#include "lang/No.rc"
|
||||
|
||||
LANGUAGE LANG_NEUTRAL,SUBLANG_NEUTRAL
|
||||
|
||||
@@ -0,0 +1,8 @@
|
||||
<group>
|
||||
<directory name="find">
|
||||
<xi:include href="find/find.rbuild" />
|
||||
</directory>
|
||||
<directory name="more">
|
||||
<xi:include href="more/more.rbuild" />
|
||||
</directory>
|
||||
</group>
|
||||
@@ -0,0 +1,248 @@
|
||||
/* find.c */
|
||||
|
||||
/* Copyright (C) 1994-2002, Jim Hall <[email protected]> */
|
||||
|
||||
/* Adapted for ReactOS */
|
||||
|
||||
/*
|
||||
This program is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation; either version 2 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program 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 General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program; if not, write to the Free Software
|
||||
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
||||
*/
|
||||
|
||||
|
||||
/* This program locates a string in a text file and prints those lines
|
||||
* that contain the string. Multiple files are clearly separated.
|
||||
*/
|
||||
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <ctype.h>
|
||||
|
||||
#include <dir.h>
|
||||
#include <dos.h>
|
||||
|
||||
|
||||
/* Symbol definition */
|
||||
#define MAX_STR 1024
|
||||
|
||||
|
||||
/* This function prints out all lines containing a substring. There are some
|
||||
* conditions that may be passed to the function.
|
||||
*
|
||||
* RETURN: If the string was found at least once, returns 1.
|
||||
* If the string was not found at all, returns 0.
|
||||
*/
|
||||
int
|
||||
find_str (char *sz, FILE *p, int invert_search,
|
||||
int count_lines, int number_output, int ignore_case)
|
||||
{
|
||||
int i, length;
|
||||
long line_number = 0, total_lines = 0;
|
||||
char *c, temp_str[MAX_STR], this_line[MAX_STR];
|
||||
|
||||
/* Convert to upper if needed */
|
||||
if (ignore_case)
|
||||
{
|
||||
length = strlen (sz);
|
||||
for (i = 0; i < length; i++)
|
||||
sz[i] = toupper (sz[i]);
|
||||
}
|
||||
|
||||
/* Scan the file until EOF */
|
||||
while (fgets (temp_str, MAX_STR, p) != NULL)
|
||||
{
|
||||
/* Remove the trailing newline */
|
||||
length = strlen (temp_str);
|
||||
if (temp_str[length-1] == '\n')
|
||||
{
|
||||
temp_str[length-1] = '\0';
|
||||
}
|
||||
|
||||
/* Increment number of lines */
|
||||
line_number++;
|
||||
strcpy (this_line, temp_str);
|
||||
|
||||
/* Convert to upper if needed */
|
||||
if (ignore_case)
|
||||
{
|
||||
for (i = 0; i < length; i++)
|
||||
{
|
||||
temp_str[i] = toupper (temp_str[i]);
|
||||
}
|
||||
}
|
||||
|
||||
/* Locate the substring */
|
||||
|
||||
/* strstr() returns a pointer to the first occurrence in the
|
||||
string of the substring */
|
||||
c = strstr (temp_str, sz);
|
||||
|
||||
if ( ((invert_search) ? (c == NULL) : (c != NULL)) )
|
||||
{
|
||||
if (!count_lines)
|
||||
{
|
||||
if (number_output)
|
||||
printf ("%ld:", line_number);
|
||||
|
||||
/* Print the line of text */
|
||||
puts (this_line);
|
||||
}
|
||||
|
||||
total_lines++;
|
||||
} /* long if */
|
||||
} /* while fgets */
|
||||
|
||||
if (count_lines)
|
||||
{
|
||||
/* Just show num. lines that contain the string */
|
||||
printf ("%ld\n", total_lines);
|
||||
}
|
||||
|
||||
|
||||
/* RETURN: If the string was found at least once, returns 1.
|
||||
* If the string was not found at all, returns 0.
|
||||
*/
|
||||
return (total_lines > 0 ? 1 : 0);
|
||||
}
|
||||
|
||||
|
||||
/* Show usage */
|
||||
void
|
||||
usage (void)
|
||||
{
|
||||
fprintf (stderr, "FIND: Prints all lines of a file that contain a string\n");
|
||||
fprintf (stderr, "FIND [ /C ] [ /I ] [ /N ] [ /V ] \"string\" [ file... ]\n");
|
||||
fprintf (stderr, " /C Count the number of lines that contain string\n");
|
||||
fprintf (stderr, " /I Ignore case\n");
|
||||
fprintf (stderr, " /N Number the displayed lines, starting at 1\n");
|
||||
fprintf (stderr, " /V Print lines that do not contain the string\n");
|
||||
}
|
||||
|
||||
|
||||
/* Main program */
|
||||
int
|
||||
main (int argc, char **argv)
|
||||
{
|
||||
char *opt, *needle = NULL;
|
||||
int ret = 0;
|
||||
|
||||
int invert_search = 0; /* flag to invert the search */
|
||||
int count_lines = 0; /* flag to whether/not count lines */
|
||||
int number_output = 0; /* flag to print line numbers */
|
||||
int ignore_case = 0; /* flag to be case insensitive */
|
||||
|
||||
FILE *pfile; /* file pointer */
|
||||
int hfind; /* search handle */
|
||||
struct _finddata_t finddata; /* _findfirst, filenext block */
|
||||
|
||||
/* Scan the command line */
|
||||
while ((--argc) && (needle == NULL))
|
||||
{
|
||||
if (*(opt = *++argv) == '/')
|
||||
{
|
||||
switch (opt[1])
|
||||
{
|
||||
case 'c':
|
||||
case 'C': /* Count */
|
||||
count_lines = 1;
|
||||
break;
|
||||
|
||||
case 'i':
|
||||
case 'I': /* Ignore */
|
||||
ignore_case = 1;
|
||||
break;
|
||||
|
||||
case 'n':
|
||||
case 'N': /* Number */
|
||||
number_output = 1;
|
||||
break;
|
||||
|
||||
case 'v':
|
||||
case 'V': /* Not with */
|
||||
invert_search = 1;
|
||||
break;
|
||||
|
||||
default:
|
||||
usage ();
|
||||
exit (2); /* syntax error .. return error 2 */
|
||||
break;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
/* Get the string */
|
||||
if (needle == NULL)
|
||||
{
|
||||
/* Assign the string to find */
|
||||
needle = *argv;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/* Check for search string */
|
||||
if (needle == NULL)
|
||||
{
|
||||
/* No string? */
|
||||
usage ();
|
||||
exit (1);
|
||||
}
|
||||
|
||||
/* Scan the files for the string */
|
||||
if (argc == 0)
|
||||
{
|
||||
ret = find_str (needle, stdin, invert_search, count_lines,
|
||||
number_output, ignore_case);
|
||||
}
|
||||
|
||||
while (--argc >= 0)
|
||||
{
|
||||
hfind = _findfirst (*++argv, &finddata);
|
||||
if (hfind < 0)
|
||||
{
|
||||
/* We were not able to find a file. Display a message and
|
||||
set the exit status. */
|
||||
fprintf (stderr, "FIND: %s: No such file\n", *argv);
|
||||
}
|
||||
else
|
||||
{
|
||||
/* repeat find next file to match the filemask */
|
||||
do
|
||||
{
|
||||
/* We have found a file, so try to open it */
|
||||
if ((pfile = fopen (finddata.name, "r")) != NULL)
|
||||
{
|
||||
printf ("---------------- %s\n", finddata.name);
|
||||
ret = find_str (needle, pfile, invert_search, count_lines,
|
||||
number_output, ignore_case);
|
||||
fclose (pfile);
|
||||
}
|
||||
else
|
||||
{
|
||||
fprintf (stderr, "FIND: %s: Cannot open file\n",
|
||||
finddata.name);
|
||||
}
|
||||
}
|
||||
while (_findnext(hfind, &finddata) > 0);
|
||||
}
|
||||
_findclose(hfind);
|
||||
} /* for each argv */
|
||||
|
||||
/* RETURN: If the string was found at least once, returns 0.
|
||||
* If the string was not found at all, returns 1.
|
||||
* (Note that find_str.c returns the exact opposite values.)
|
||||
*/
|
||||
exit ( (ret ? 0 : 1) );
|
||||
}
|
||||
|
||||
@@ -0,0 +1,8 @@
|
||||
<module name="find" type="win32cui" installbase="system32" installname="find.exe">
|
||||
<define name="__USE_W32API" />
|
||||
<define name="_WIN32_IE">0x0501</define>
|
||||
<define name="_WIN32_WINNT">0x0501</define>
|
||||
<library>kernel32</library>
|
||||
<file>find.c</file>
|
||||
<file>find.rc</file>
|
||||
</module>
|
||||
@@ -0,0 +1,6 @@
|
||||
/* $Id$ */
|
||||
|
||||
#define REACTOS_STR_FILE_DESCRIPTION "W32 find command\0"
|
||||
#define REACTOS_STR_INTERNAL_NAME "find\0"
|
||||
#define REACTOS_STR_ORIGINAL_FILENAME "find.exe\0"
|
||||
#include <reactos/version.rc>
|
||||
@@ -0,0 +1,168 @@
|
||||
/*
|
||||
* MORE.C - external command.
|
||||
*
|
||||
* clone from 4nt more command
|
||||
*
|
||||
* 26 Sep 1999 - Paolo Pantaleo <[email protected]>
|
||||
* started
|
||||
* Oct 2003 - Timothy Schepens <tischepe at fastmail dot fm>
|
||||
* use window size instead of buffer size.
|
||||
*/
|
||||
|
||||
#include <windows.h>
|
||||
#include <malloc.h>
|
||||
#include <tchar.h>
|
||||
|
||||
|
||||
DWORD len;
|
||||
LPTSTR msg = _T("--- continue ---");
|
||||
|
||||
|
||||
/*handle for file and console*/
|
||||
HANDLE hStdIn;
|
||||
HANDLE hStdOut;
|
||||
HANDLE hStdErr;
|
||||
HANDLE hKeyboard;
|
||||
|
||||
|
||||
static VOID
|
||||
GetScreenSize (PSHORT maxx, PSHORT maxy)
|
||||
{
|
||||
CONSOLE_SCREEN_BUFFER_INFO csbi;
|
||||
|
||||
GetConsoleScreenBufferInfo (hStdOut, &csbi);
|
||||
*maxx = (csbi.srWindow.Right - csbi.srWindow.Left) + 1;
|
||||
*maxy = (csbi.srWindow.Bottom - csbi.srWindow.Top) - 4;
|
||||
|
||||
}
|
||||
|
||||
|
||||
static
|
||||
VOID ConOutPuts (LPTSTR szText)
|
||||
{
|
||||
DWORD dwWritten;
|
||||
|
||||
WriteFile (GetStdHandle (STD_OUTPUT_HANDLE), szText, _tcslen(szText), &dwWritten, NULL);
|
||||
WriteFile (GetStdHandle (STD_OUTPUT_HANDLE), "\n", 1, &dwWritten, NULL);
|
||||
}
|
||||
|
||||
|
||||
static VOID
|
||||
ConInKey (VOID)
|
||||
{
|
||||
INPUT_RECORD ir;
|
||||
DWORD dwRead;
|
||||
|
||||
do
|
||||
{
|
||||
ReadConsoleInput (hKeyboard, &ir, 1, &dwRead);
|
||||
if ((ir.EventType == KEY_EVENT) &&
|
||||
(ir.Event.KeyEvent.bKeyDown == TRUE))
|
||||
return;
|
||||
}
|
||||
while (TRUE);
|
||||
}
|
||||
|
||||
|
||||
static VOID
|
||||
WaitForKey (VOID)
|
||||
{
|
||||
DWORD dwWritten;
|
||||
|
||||
WriteFile (hStdErr,msg , len, &dwWritten, NULL);
|
||||
|
||||
ConInKey();
|
||||
|
||||
WriteFile (hStdErr, _T("\n"), 1, &dwWritten, NULL);
|
||||
|
||||
// FlushConsoleInputBuffer (hConsoleIn);
|
||||
}
|
||||
|
||||
|
||||
//INT CommandMore (LPTSTR cmd, LPTSTR param)
|
||||
int main (int argc, char **argv)
|
||||
{
|
||||
SHORT maxx,maxy;
|
||||
SHORT line_count=0,ch_count=0;
|
||||
INT i, last;
|
||||
HANDLE hFile = INVALID_HANDLE_VALUE;
|
||||
TCHAR szFullPath[MAX_PATH];
|
||||
|
||||
/*reading/writing buffer*/
|
||||
TCHAR *buff;
|
||||
|
||||
/*bytes written by WriteFile and ReadFile*/
|
||||
DWORD dwRead,dwWritten;
|
||||
|
||||
/*ReadFile() return value*/
|
||||
BOOL bRet;
|
||||
|
||||
len = _tcslen (msg);
|
||||
hStdIn = GetStdHandle(STD_INPUT_HANDLE);
|
||||
hStdOut = GetStdHandle(STD_OUTPUT_HANDLE);
|
||||
hStdErr = GetStdHandle(STD_ERROR_HANDLE);
|
||||
|
||||
if (argc > 1 && _tcsncmp (argv[1], _T("/?"), 2) == 0)
|
||||
{
|
||||
ConOutPuts(_T("Help text still missing!!"));
|
||||
return 0;
|
||||
}
|
||||
|
||||
hKeyboard = CreateFile (_T("CONIN$"), GENERIC_READ,
|
||||
0,NULL,OPEN_ALWAYS,0,0);
|
||||
|
||||
GetScreenSize(&maxx,&maxy);
|
||||
|
||||
buff=malloc(4096);
|
||||
|
||||
FlushConsoleInputBuffer (hKeyboard);
|
||||
|
||||
if(argc > 1)
|
||||
{
|
||||
GetFullPathName(argv[1], MAX_PATH, szFullPath, NULL);
|
||||
hFile = CreateFile (szFullPath, GENERIC_READ,
|
||||
0,NULL,OPEN_ALWAYS,0,0);
|
||||
}
|
||||
|
||||
do
|
||||
{
|
||||
if(hFile != INVALID_HANDLE_VALUE)
|
||||
{
|
||||
bRet = ReadFile(hFile,buff,4096,&dwRead,NULL);
|
||||
}
|
||||
else
|
||||
{
|
||||
bRet = ReadFile(hStdIn,buff,4096,&dwRead,NULL);
|
||||
}
|
||||
|
||||
for(last=i=0;i<dwRead && bRet;i++)
|
||||
{
|
||||
ch_count++;
|
||||
if(buff[i] == _T('\n') || ch_count == maxx)
|
||||
{
|
||||
ch_count=0;
|
||||
line_count++;
|
||||
if (line_count == maxy)
|
||||
{
|
||||
line_count = 0;
|
||||
WriteFile(hStdOut,&buff[last], i-last+1, &dwWritten, NULL);
|
||||
last=i+1;
|
||||
FlushFileBuffers (hStdOut);
|
||||
WaitForKey ();
|
||||
}
|
||||
}
|
||||
}
|
||||
if (last<dwRead && bRet)
|
||||
WriteFile(hStdOut,&buff[last], dwRead-last, &dwWritten, NULL);
|
||||
|
||||
}
|
||||
while(dwRead>0 && bRet);
|
||||
|
||||
free (buff);
|
||||
CloseHandle (hKeyboard);
|
||||
CloseHandle (hFile);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
/* EOF */
|
||||
@@ -0,0 +1,8 @@
|
||||
<module name="more" type="win32cui" installbase="system32" installname="more.exe">
|
||||
<define name="__USE_W32API" />
|
||||
<define name="_WIN32_IE">0x0501</define>
|
||||
<define name="_WIN32_WINNT">0x0501</define>
|
||||
<library>kernel32</library>
|
||||
<file>more.c</file>
|
||||
<file>more.rc</file>
|
||||
</module>
|
||||
@@ -0,0 +1,6 @@
|
||||
/* $Id$ */
|
||||
|
||||
#define REACTOS_STR_FILE_DESCRIPTION "W32 more command\0"
|
||||
#define REACTOS_STR_INTERNAL_NAME "more\0"
|
||||
#define REACTOS_STR_ORIGINAL_FILENAME "more.exe\0"
|
||||
#include <reactos/version.rc>
|
||||
@@ -25,23 +25,4 @@ IDI_MAINICON ICON DISCARDABLE "resources/config.ico"
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
|
||||
/*
|
||||
* Everything specific to any language goes in one of the specific
|
||||
* files. Note that you can and may override resources which also have
|
||||
* a neutral version. This is to get localized bitmaps for example.
|
||||
*/
|
||||
|
||||
#include "En.rc"
|
||||
#include "Cz.rc"
|
||||
#include "De.rc"
|
||||
#include "Dk.rc"
|
||||
#include "Gr.rc"
|
||||
#include "Ja.rc"
|
||||
#include "Nl.rc"
|
||||
#include "Pl.rc"
|
||||
#include "Ru.rc"
|
||||
#include "Sv.rc"
|
||||
#include "Es.rc"
|
||||
#include "Hu.rc"
|
||||
#include "Fi.rc"
|
||||
|
||||
#include "rsrc.rc"
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
// Danish language resource file (Thomas Larsen, 2005-03-11)
|
||||
|
||||
LANGUAGE LANG_DANISH, SUBLANG_NEUTRAL
|
||||
LANGUAGE LANG_DANISH, SUBLANG_DEFAULT
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
@@ -1,6 +1,6 @@
|
||||
// English language resource file (frik85, 2005-03-08)
|
||||
|
||||
LANGUAGE LANG_FINNISH, SUBLANG_NEUTRAL
|
||||
LANGUAGE LANG_FINNISH, SUBLANG_DEFAULT
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
@@ -1,6 +1,6 @@
|
||||
// Hungarian language resource file (talley, 2005-10-12)
|
||||
|
||||
LANGUAGE LANG_HUNGARIAN, SUBLANG_NEUTRAL
|
||||
LANGUAGE LANG_HUNGARIAN, SUBLANG_DEFAULT
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
@@ -0,0 +1,33 @@
|
||||
/*
|
||||
* PROJECT: ReactOS Control Application
|
||||
* LICENSE: GPL - See COPYING in the top level directory
|
||||
* FILE: base/applications/control/No.rc
|
||||
* PURPOSE: Norwegian translation
|
||||
* TRANSLATOR: LMH1
|
||||
*
|
||||
*/
|
||||
LANGUAGE LANG_NORWEGIAN, SUBLANG_NEUTRAL
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// Menu
|
||||
//
|
||||
|
||||
IDM_MAINMENU MENU DISCARDABLE
|
||||
BEGIN
|
||||
POPUP "&Fil"
|
||||
BEGIN
|
||||
MENUITEM "&Avslutt", IDM_CLOSE
|
||||
END
|
||||
POPUP "&Vis"
|
||||
BEGIN
|
||||
MENUITEM "Større Ikoner", IDM_LARGEICONS
|
||||
MENUITEM "Mindre Ikoner", IDM_SMALLICONS
|
||||
MENUITEM "Liste", IDM_LIST
|
||||
MENUITEM "Detaljer", IDM_DETAILS
|
||||
END
|
||||
POPUP "Hjelp"
|
||||
BEGIN
|
||||
MENUITEM "Om", IDM_ABOUT
|
||||
END
|
||||
END
|
||||
@@ -1,6 +1,6 @@
|
||||
// Polish language resource file (Sebastian Gasiorek, 2005-07-06)
|
||||
|
||||
LANGUAGE LANG_POLISH, SUBLANG_NEUTRAL
|
||||
LANGUAGE LANG_POLISH, SUBLANG_DEFAULT
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
@@ -1,6 +1,6 @@
|
||||
// Russian language resource file (unC0Rr, 2005-03-11)
|
||||
|
||||
LANGUAGE LANG_RUSSIAN, SUBLANG_NEUTRAL
|
||||
LANGUAGE LANG_RUSSIAN, SUBLANG_DEFAULT
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
@@ -0,0 +1,34 @@
|
||||
/*
|
||||
* PROJECT: ReactOS System Control Panel
|
||||
* LICENSE: GPL - See COPYING in the top level directory
|
||||
* FILE: base/applications/control/Uk.rc
|
||||
* PURPOSE: Ukraianian Language File for ReactOS System Control Panel
|
||||
* PROGRAMMERS: temarez
|
||||
*/
|
||||
|
||||
LANGUAGE LANG_UKRAINIAN, SUBLANG_DEFAULT
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// Menu
|
||||
//
|
||||
|
||||
IDM_MAINMENU MENU DISCARDABLE
|
||||
BEGIN
|
||||
POPUP "&Ôàéë"
|
||||
BEGIN
|
||||
MENUITEM "&Çàêðèòè", IDM_CLOSE
|
||||
END
|
||||
POPUP "&Âèãëÿä"
|
||||
BEGIN
|
||||
MENUITEM "&Âåëèê³ ²êîíêè", IDM_LARGEICONS
|
||||
MENUITEM "&Ìàë³ ²êîíêè", IDM_SMALLICONS
|
||||
MENUITEM "&Ñïèñîê", IDM_LIST
|
||||
MENUITEM "&Ïîäðîáèö³", IDM_DETAILS
|
||||
END
|
||||
POPUP "&Äîâ³äêà"
|
||||
BEGIN
|
||||
MENUITEM "&Ïðî ïðîãðàìó", IDM_ABOUT
|
||||
END
|
||||
END
|
||||
|
||||
@@ -0,0 +1,27 @@
|
||||
|
||||
|
||||
#include <windows.h>
|
||||
#include "resource.h"
|
||||
|
||||
/* define language neutral resources */
|
||||
|
||||
LANGUAGE LANG_NEUTRAL, SUBLANG_NEUTRAL
|
||||
|
||||
/* include localised resources */
|
||||
#include "lang/Cz.rc"
|
||||
#include "lang/De.rc"
|
||||
#include "lang/Dk.rc"
|
||||
#include "lang/En.rc"
|
||||
#include "lang/Es.rc"
|
||||
#include "lang/Fi.rc"
|
||||
#include "lang/Gr.rc"
|
||||
#include "lang/Hu.rc"
|
||||
#include "lang/Ja.rc"
|
||||
#include "lang/Nl.rc"
|
||||
#include "lang/No.rc"
|
||||
#include "lang/Pl.rc"
|
||||
#include "lang/Ru.rc"
|
||||
#include "lang/Sv.rc"
|
||||
#include "lang/Uk.rc"
|
||||
|
||||
|
||||
@@ -0,0 +1,79 @@
|
||||
IDR_MAINMENU MENU
|
||||
BEGIN
|
||||
POPUP "&File"
|
||||
BEGIN
|
||||
MENUITEM "E&xit", IDC_EXIT
|
||||
END
|
||||
POPUP "Action"
|
||||
BEGIN
|
||||
MENUITEM "Print", IDC_PRINT, GRAYED
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "Properties", IDC_PROP
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "Help", IDC_PROGHELP, GRAYED
|
||||
END
|
||||
POPUP "View"
|
||||
BEGIN
|
||||
MENUITEM "Devices by type", IDC_DEVBYTYPE, CHECKED
|
||||
MENUITEM "Devices by connection", IDC_STATIC, GRAYED
|
||||
MENUITEM "Resources by type", IDC_STATIC, GRAYED
|
||||
MENUITEM "Resources by connection", IDC_STATIC, GRAYED
|
||||
END
|
||||
POPUP "Help"
|
||||
BEGIN
|
||||
MENUITEM "Help", IDC_PROGHELP
|
||||
MENUITEM "About", IDC_ABOUT
|
||||
END
|
||||
END
|
||||
|
||||
IDR_POPUP MENU
|
||||
BEGIN
|
||||
POPUP "popup"
|
||||
BEGIN
|
||||
MENUITEM "Properties", IDC_PROP
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "Help", IDC_PROGHELP
|
||||
END
|
||||
END
|
||||
|
||||
IDD_ABOUTBOX DIALOGEX 22,16,190,182
|
||||
CAPTION "About Device Manager"
|
||||
FONT 8,"Tahoma",0,0
|
||||
STYLE WS_BORDER | WS_DLGFRAME | WS_SYSMENU | DS_MODALFRAME
|
||||
BEGIN
|
||||
LTEXT "Device Manager v0.1\nCopyright (C) 2006\nby Ged Murphy ([email protected])", IDC_STATIC, 48, 7, 130, 26
|
||||
PUSHBUTTON "Close", IDOK, 75, 162, 44, 15
|
||||
ICON IDI_MAIN_ICON, IDC_STATIC, 10, 10, 7, 30
|
||||
EDITTEXT IDC_LICENSE_EDIT, 8, 44, 174, 107, WS_VISIBLE | WS_VSCROLL | WS_TABSTOP | ES_READONLY | ES_MULTILINE
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
BEGIN
|
||||
IDS_LICENSE "This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.\r\n\r\nThis program 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 General Public License for more details.\r\n\r\nYou should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA."
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
BEGIN
|
||||
IDS_TOOLTIP_PROP "Properties"
|
||||
IDS_TOOLTIP_REFRESH "Refresh"
|
||||
IDS_TOOLTIP_HELP "Help"
|
||||
IDS_TOOLTIP_EXIT "Exit"
|
||||
END
|
||||
|
||||
/* Hints */
|
||||
STRINGTABLE DISCARDABLE
|
||||
BEGIN
|
||||
IDS_HINT_BLANK " "
|
||||
IDS_HINT_EXIT " Exits the program."
|
||||
IDS_HINT_REFRESH " Refresh the service list."
|
||||
IDS_HINT_PROP " Open property sheet for the current selection."
|
||||
IDS_HINT_HELP " Display help window."
|
||||
IDS_HINT_ABOUT " About ReactOS Device Manager."
|
||||
|
||||
IDS_HINT_SYS_RESTORE " Restores this window to normal size."
|
||||
IDS_HINT_SYS_MOVE " Moves this window."
|
||||
IDS_HINT_SYS_SIZE " Resizes this window."
|
||||
IDS_HINT_SYS_MINIMIZE " Collapses this window to an icon."
|
||||
IDS_HINT_SYS_MAXIMIZE " Expands this window to fill this screen."
|
||||
IDS_HINT_SYS_CLOSE " Closes this window."
|
||||
END
|
||||
@@ -0,0 +1,62 @@
|
||||
/*
|
||||
* PROJECT: ReactOS Device Managment
|
||||
* LICENSE: GPL - See COPYING in the top level directory
|
||||
* FILE: base/system/devmgmt/about.c
|
||||
* PURPOSE: About dialog box message handler
|
||||
* COPYRIGHT: Copyright 2006 Ged Murphy <[email protected]>
|
||||
*
|
||||
*/
|
||||
|
||||
#include "precomp.h"
|
||||
|
||||
BOOL CALLBACK
|
||||
AboutDialogProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam)
|
||||
{
|
||||
HWND hLicenseEditWnd;
|
||||
HICON hIcon = NULL;
|
||||
TCHAR strLicense[700];
|
||||
|
||||
switch (message)
|
||||
{
|
||||
case WM_INITDIALOG:
|
||||
|
||||
hIcon = LoadImage(hInstance,
|
||||
MAKEINTRESOURCE(IDI_MAIN_ICON),
|
||||
IMAGE_ICON,
|
||||
16,
|
||||
16,
|
||||
0);
|
||||
|
||||
SendMessage(hDlg,
|
||||
WM_SETICON,
|
||||
ICON_SMALL,
|
||||
(LPARAM)hIcon);
|
||||
|
||||
hLicenseEditWnd = GetDlgItem(hDlg,
|
||||
IDC_LICENSE_EDIT);
|
||||
|
||||
LoadString(hInstance,
|
||||
IDS_LICENSE,
|
||||
strLicense,
|
||||
sizeof(strLicense) / sizeof(TCHAR));
|
||||
|
||||
SetWindowText(hLicenseEditWnd,
|
||||
strLicense);
|
||||
|
||||
return TRUE;
|
||||
|
||||
case WM_COMMAND:
|
||||
|
||||
if ((LOWORD(wParam) == IDOK) || (LOWORD(wParam) == IDCANCEL))
|
||||
{
|
||||
DestroyIcon(hIcon);
|
||||
EndDialog(hDlg,
|
||||
LOWORD(wParam));
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
break;
|
||||
}
|
||||
|
||||
return FALSE;
|
||||
}
|
||||
@@ -0,0 +1,70 @@
|
||||
/*
|
||||
* PROJECT: ReactOS Device Managment
|
||||
* LICENSE: GPL - See COPYING in the top level directory
|
||||
* FILE: base/system/devmgmt/devmgmt.c
|
||||
* PURPOSE: Program HQ
|
||||
* COPYRIGHT: Copyright 2006 Ged Murphy <[email protected]>
|
||||
*
|
||||
*/
|
||||
|
||||
#include "precomp.h"
|
||||
|
||||
HINSTANCE hInstance;
|
||||
HANDLE ProcessHeap;
|
||||
|
||||
int WINAPI
|
||||
WinMain(HINSTANCE hThisInstance,
|
||||
HINSTANCE hPrevInstance,
|
||||
LPSTR lpCmdLine,
|
||||
int nCmdShow)
|
||||
{
|
||||
LPTSTR lpAppName;
|
||||
HWND hMainWnd;
|
||||
MSG Msg;
|
||||
int Ret = 1;
|
||||
INITCOMMONCONTROLSEX icex;
|
||||
|
||||
hInstance = hThisInstance;
|
||||
ProcessHeap = GetProcessHeap();
|
||||
|
||||
icex.dwSize = sizeof(INITCOMMONCONTROLSEX);
|
||||
icex.dwICC = ICC_BAR_CLASSES | ICC_COOL_CLASSES;
|
||||
InitCommonControlsEx(&icex);
|
||||
|
||||
if (!AllocAndLoadString(&lpAppName,
|
||||
hInstance,
|
||||
IDS_APPNAME))
|
||||
{
|
||||
return 1;
|
||||
}
|
||||
|
||||
// FreeConsole();
|
||||
// AllocConsole();
|
||||
|
||||
if (InitMainWindowImpl())
|
||||
{
|
||||
hMainWnd = CreateMainWindow(lpAppName,
|
||||
nCmdShow);
|
||||
if (hMainWnd != NULL)
|
||||
{
|
||||
/* pump the message queue */
|
||||
while( GetMessage( &Msg, NULL, 0, 0 ) )
|
||||
{
|
||||
TranslateMessage(&Msg);
|
||||
DispatchMessage(&Msg);
|
||||
|
||||
}
|
||||
|
||||
Ret = 0;
|
||||
}
|
||||
|
||||
UninitMainWindowImpl();
|
||||
}
|
||||
|
||||
LocalFree((HLOCAL)lpAppName);
|
||||
|
||||
return Ret;
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -0,0 +1,29 @@
|
||||
<?xml version="1.0"?>
|
||||
<rbuild xmlns:xi="http://www.w3.org/2001/XInclude">
|
||||
<module name="devmgmt" type="win32gui" installbase="system32" installname="devmgmt.exe">
|
||||
<include base="devmgmt">.</include>
|
||||
<define name="UNICODE" />
|
||||
<define name="_UNICODE" />
|
||||
<define name="__REACTOS__" />
|
||||
<define name="__USE_W32API" />
|
||||
<define name="_WIN32_IE">0x600</define>
|
||||
<define name="_WIN32_WINNT">0x501</define>
|
||||
<library>ntdll</library>
|
||||
<library>setupapi</library>
|
||||
<library>gdi32</library>
|
||||
<library>kernel32</library>
|
||||
<library>user32</library>
|
||||
<library>comctl32</library>
|
||||
<library>advapi32</library>
|
||||
<library>devmgr</library>
|
||||
<compilationunit name="unit.c">
|
||||
<file>about.c</file>
|
||||
<file>devmgmt.c</file>
|
||||
<file>enumdevices.c</file>
|
||||
<file>mainwnd.c</file>
|
||||
<file>misc.c</file>
|
||||
</compilationunit>
|
||||
<file>devmgmt.rc</file>
|
||||
<pch>precomp.h</pch>
|
||||
</module>
|
||||
</rbuild>
|
||||
@@ -0,0 +1,29 @@
|
||||
#include <windows.h>
|
||||
#include <commctrl.h>
|
||||
#include "resource.h"
|
||||
|
||||
#define REACTOS_STR_FILE_DESCRIPTION "ReactOS Device Manager\0"
|
||||
#define REACTOS_STR_INTERNAL_NAME "devmgmt\0"
|
||||
#define REACTOS_STR_ORIGINAL_FILENAME "devmgmt.exe\0"
|
||||
#include <reactos/version.rc>
|
||||
|
||||
LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US
|
||||
|
||||
1 24 DISCARDABLE "manifest.xml"
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
BEGIN
|
||||
IDS_APPNAME "ReactOS Device Manager"
|
||||
END
|
||||
|
||||
IDI_MAIN_ICON ICON "res/computer.ico"
|
||||
IDB_ROOT_IMAGE BITMAP "res/root.bmp"
|
||||
|
||||
/* main toolbar icons */
|
||||
IDB_PROP BITMAP DISCARDABLE "res/properties.bmp"
|
||||
IDB_REFRESH BITMAP DISCARDABLE "res/refresh.bmp"
|
||||
IDB_HELP BITMAP DISCARDABLE "res/help.bmp"
|
||||
IDB_EXIT BITMAP DISCARDABLE "res/exit.bmp"
|
||||
|
||||
|
||||
#include "En.rc"
|
||||
@@ -0,0 +1,438 @@
|
||||
/*
|
||||
* PROJECT: ReactOS Device Managment
|
||||
* LICENSE: GPL - See COPYING in the top level directory
|
||||
* FILE: base/system/devmgmt/enumdevices.c
|
||||
* PURPOSE: Enumerates all devices on the local machine
|
||||
* COPYRIGHT: Copyright 2006 Ged Murphy <[email protected]>
|
||||
*
|
||||
*/
|
||||
|
||||
#include "precomp.h"
|
||||
|
||||
static SP_CLASSIMAGELIST_DATA ImageListData;
|
||||
static HDEVINFO hDevInfo;
|
||||
|
||||
VOID
|
||||
FreeDeviceStrings(HWND hTV)
|
||||
{
|
||||
HTREEITEM hItem;
|
||||
|
||||
hItem = TreeView_GetRoot(hTV);
|
||||
|
||||
if (hItem)
|
||||
{
|
||||
hItem = TreeView_GetChild(hTV,
|
||||
hItem);
|
||||
/* loop the parent items */
|
||||
while (hItem)
|
||||
{
|
||||
hItem = TreeView_GetChild(hTV,
|
||||
hItem);
|
||||
if (hItem == NULL)
|
||||
break;
|
||||
|
||||
/* loop the child items and free the DeviceID */
|
||||
while (TRUE)
|
||||
{
|
||||
HTREEITEM hOldItem;
|
||||
TV_ITEM tvItem;
|
||||
//TCHAR Buf[100];
|
||||
|
||||
tvItem.hItem = hItem;
|
||||
tvItem.mask = TVIF_PARAM;// | TVIF_TEXT;
|
||||
//tvItem.pszText = Buf;
|
||||
//tvItem.cchTextMax = 99;
|
||||
|
||||
(void)TreeView_GetItem(hTV, &tvItem);
|
||||
|
||||
//MessageBox(NULL, Buf, NULL, 0);
|
||||
|
||||
HeapFree(GetProcessHeap(),
|
||||
0,
|
||||
(LPTSTR)tvItem.lParam);
|
||||
|
||||
hOldItem = hItem;
|
||||
|
||||
hItem = TreeView_GetNextSibling(hTV,
|
||||
hItem);
|
||||
if (hItem == NULL)
|
||||
{
|
||||
hItem = hOldItem;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
hItem = TreeView_GetParent(hTV,
|
||||
hItem);
|
||||
hItem = TreeView_GetNextSibling(hTV,
|
||||
hItem);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
VOID
|
||||
OpenPropSheet(HWND hTV,
|
||||
HTREEITEM hItem)
|
||||
{
|
||||
TV_ITEM tvItem;
|
||||
|
||||
tvItem.hItem = hItem;
|
||||
tvItem.mask = TVIF_PARAM;
|
||||
|
||||
if (TreeView_GetItem(hTV, &tvItem) &&
|
||||
(LPTSTR)tvItem.lParam != NULL)
|
||||
{
|
||||
DevicePropertiesExW(hTV,
|
||||
NULL,
|
||||
(LPTSTR)tvItem.lParam,
|
||||
0,
|
||||
FALSE);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
static HTREEITEM
|
||||
InsertIntoTreeView(HWND hTV,
|
||||
HTREEITEM hRoot,
|
||||
LPTSTR lpLabel,
|
||||
LPTSTR DeviceID,
|
||||
INT DevImage)
|
||||
{
|
||||
TV_ITEM tvi;
|
||||
TV_INSERTSTRUCT tvins;
|
||||
|
||||
ZeroMemory(&tvi, sizeof(tvi));
|
||||
ZeroMemory(&tvins, sizeof(tvins));
|
||||
|
||||
tvi.mask = TVIF_TEXT | TVIF_PARAM | TVIF_IMAGE | TVIF_SELECTEDIMAGE;
|
||||
tvi.pszText = lpLabel;
|
||||
tvi.cchTextMax = lstrlen(lpLabel);
|
||||
tvi.lParam = (LPARAM)DeviceID;
|
||||
tvi.iImage = DevImage;
|
||||
tvi.iSelectedImage = DevImage;
|
||||
|
||||
tvins.item = tvi;
|
||||
tvins.hParent = hRoot;
|
||||
|
||||
return TreeView_InsertItem(hTV, &tvins);
|
||||
}
|
||||
|
||||
|
||||
static INT
|
||||
EnumDeviceClasses(INT ClassIndex,
|
||||
LPTSTR DevClassName,
|
||||
LPTSTR DevClassDesc,
|
||||
BOOL *DevPresent,
|
||||
INT *ClassImage)
|
||||
{
|
||||
GUID ClassGuid;
|
||||
HKEY KeyClass;
|
||||
TCHAR ClassName[MAX_CLASS_NAME_LEN];
|
||||
DWORD RequiredSize = MAX_CLASS_NAME_LEN;
|
||||
UINT Ret;
|
||||
|
||||
*DevPresent = FALSE;
|
||||
*DevClassName = _T('\0');
|
||||
|
||||
Ret = CM_Enumerate_Classes(ClassIndex,
|
||||
&ClassGuid,
|
||||
0);
|
||||
if (Ret != CR_SUCCESS)
|
||||
{
|
||||
/* all classes enumerated */
|
||||
if(Ret == CR_NO_SUCH_VALUE)
|
||||
{
|
||||
hDevInfo = NULL;
|
||||
return -1;
|
||||
}
|
||||
|
||||
if (Ret == CR_INVALID_DATA)
|
||||
; /*FIXME: what should we do here? */
|
||||
|
||||
/* handle other errors... */
|
||||
}
|
||||
|
||||
if (SetupDiClassNameFromGuid(&ClassGuid,
|
||||
ClassName,
|
||||
RequiredSize,
|
||||
&RequiredSize))
|
||||
{
|
||||
lstrcpy(DevClassName, ClassName);
|
||||
}
|
||||
|
||||
if (!SetupDiGetClassImageIndex(&ImageListData,
|
||||
&ClassGuid,
|
||||
ClassImage))
|
||||
{
|
||||
/* FIXME: can we do this?
|
||||
* Set the blank icon: IDI_SETUPAPI_BLANK = 41
|
||||
* it'll be image 24 in the imagelist */
|
||||
*ClassImage = 24;
|
||||
}
|
||||
|
||||
/* Get device info for all devices of a particular class */
|
||||
hDevInfo = SetupDiGetClassDevs(&ClassGuid,
|
||||
NULL,
|
||||
NULL,
|
||||
DIGCF_PRESENT);
|
||||
if (hDevInfo == INVALID_HANDLE_VALUE)
|
||||
{
|
||||
hDevInfo = NULL;
|
||||
return 0;
|
||||
}
|
||||
|
||||
KeyClass = SetupDiOpenClassRegKeyEx(&ClassGuid,
|
||||
MAXIMUM_ALLOWED,
|
||||
DIOCR_INSTALLER,
|
||||
NULL,
|
||||
0);
|
||||
if (KeyClass != INVALID_HANDLE_VALUE)
|
||||
{
|
||||
|
||||
LONG dwSize = MAX_DEV_LEN;
|
||||
|
||||
if (RegQueryValue(KeyClass,
|
||||
NULL,
|
||||
DevClassDesc,
|
||||
&dwSize) != ERROR_SUCCESS)
|
||||
{
|
||||
*DevClassDesc = _T('\0');
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
return -3;
|
||||
}
|
||||
|
||||
*DevPresent = TRUE;
|
||||
|
||||
RegCloseKey(KeyClass);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
static INT
|
||||
EnumDevices(INT index,
|
||||
LPTSTR DeviceClassName,
|
||||
LPTSTR DeviceName,
|
||||
LPTSTR *DeviceID)
|
||||
{
|
||||
SP_DEVINFO_DATA DeviceInfoData;
|
||||
DWORD DevIdSize;
|
||||
|
||||
*DeviceName = _T('\0');
|
||||
*DeviceID = NULL;
|
||||
|
||||
ZeroMemory(&DeviceInfoData, sizeof(SP_DEVINFO_DATA));
|
||||
DeviceInfoData.cbSize = sizeof(SP_DEVINFO_DATA);
|
||||
|
||||
if (!SetupDiEnumDeviceInfo(hDevInfo,
|
||||
index,
|
||||
&DeviceInfoData))
|
||||
{
|
||||
/* no such device */
|
||||
return -1;
|
||||
}
|
||||
|
||||
/* get the device ID */
|
||||
if (!SetupDiGetDeviceInstanceId(hDevInfo,
|
||||
&DeviceInfoData,
|
||||
NULL,
|
||||
0,
|
||||
&DevIdSize))
|
||||
{
|
||||
if (GetLastError() == ERROR_INSUFFICIENT_BUFFER)
|
||||
{
|
||||
(*DeviceID) = (LPTSTR)HeapAlloc(GetProcessHeap(),
|
||||
0,
|
||||
DevIdSize * sizeof(TCHAR));
|
||||
if (*DeviceID)
|
||||
{
|
||||
if (!SetupDiGetDeviceInstanceId(hDevInfo,
|
||||
&DeviceInfoData,
|
||||
*DeviceID,
|
||||
DevIdSize,
|
||||
NULL))
|
||||
{
|
||||
HeapFree(GetProcessHeap(),
|
||||
0,
|
||||
*DeviceID);
|
||||
*DeviceID = NULL;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/* get the device's friendly name */
|
||||
if (!SetupDiGetDeviceRegistryProperty(hDevInfo,
|
||||
&DeviceInfoData,
|
||||
SPDRP_FRIENDLYNAME,
|
||||
0,
|
||||
(BYTE*)DeviceName,
|
||||
MAX_DEV_LEN,
|
||||
NULL))
|
||||
{
|
||||
/* if the friendly name fails, try the description instead */
|
||||
if (!SetupDiGetDeviceRegistryProperty(hDevInfo,
|
||||
&DeviceInfoData,
|
||||
SPDRP_DEVICEDESC,
|
||||
0,
|
||||
(BYTE*)DeviceName,
|
||||
MAX_DEV_LEN,
|
||||
NULL))
|
||||
{
|
||||
/* if the description fails, just give up! */
|
||||
return -2;
|
||||
}
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
VOID
|
||||
ListDevicesByType(PMAIN_WND_INFO Info,
|
||||
HTREEITEM hRoot)
|
||||
{
|
||||
HTREEITEM hDevItem;
|
||||
TCHAR DevName[MAX_DEV_LEN];
|
||||
TCHAR DevDesc[MAX_DEV_LEN];
|
||||
LPTSTR DeviceID = NULL;
|
||||
BOOL DevExist = FALSE;
|
||||
INT ClassRet;
|
||||
INT index = 0;
|
||||
INT DevImage;
|
||||
|
||||
do
|
||||
{
|
||||
ClassRet = EnumDeviceClasses(index,
|
||||
DevName,
|
||||
DevDesc,
|
||||
&DevExist,
|
||||
&DevImage);
|
||||
|
||||
if ((ClassRet != -1) && (DevExist))
|
||||
{
|
||||
TCHAR DeviceName[MAX_DEV_LEN];
|
||||
INT Ret, DevIndex = 0;
|
||||
|
||||
if (DevDesc[0] != _T('\0'))
|
||||
{
|
||||
hDevItem = InsertIntoTreeView(Info->hTreeView,
|
||||
hRoot,
|
||||
DevDesc,
|
||||
NULL,
|
||||
DevImage);
|
||||
}
|
||||
else
|
||||
{
|
||||
hDevItem = InsertIntoTreeView(Info->hTreeView,
|
||||
hRoot,
|
||||
DevName,
|
||||
NULL,
|
||||
DevImage);
|
||||
}
|
||||
|
||||
do
|
||||
{
|
||||
Ret = EnumDevices(DevIndex,
|
||||
DevName,
|
||||
DeviceName,
|
||||
&DeviceID);
|
||||
if (Ret == 0)
|
||||
{
|
||||
InsertIntoTreeView(Info->hTreeView,
|
||||
hDevItem,
|
||||
DeviceName,
|
||||
DeviceID,
|
||||
DevImage);
|
||||
}
|
||||
|
||||
DevIndex++;
|
||||
|
||||
} while (Ret != -1);
|
||||
|
||||
/* kill InfoList initialized in EnumDeviceClasses */
|
||||
if (hDevInfo)
|
||||
{
|
||||
SetupDiDestroyDeviceInfoList(hDevInfo);
|
||||
hDevInfo = NULL;
|
||||
}
|
||||
|
||||
/* don't insert classes with no devices */
|
||||
if (!TreeView_GetChild(Info->hTreeView,
|
||||
hDevItem))
|
||||
{
|
||||
(void)TreeView_DeleteItem(Info->hTreeView,
|
||||
hDevItem);
|
||||
}
|
||||
else
|
||||
{
|
||||
(void)TreeView_SortChildren(Info->hTreeView,
|
||||
hDevItem,
|
||||
0);
|
||||
}
|
||||
}
|
||||
|
||||
index++;
|
||||
|
||||
} while (ClassRet != -1);
|
||||
|
||||
(void)TreeView_Expand(Info->hTreeView,
|
||||
hRoot,
|
||||
TVE_EXPAND);
|
||||
|
||||
(void)TreeView_SortChildren(Info->hTreeView,
|
||||
hRoot,
|
||||
0);
|
||||
}
|
||||
|
||||
|
||||
HTREEITEM
|
||||
InitTreeView(PMAIN_WND_INFO Info)
|
||||
{
|
||||
HTREEITEM hRoot;
|
||||
HBITMAP hComp;
|
||||
TCHAR ComputerName[MAX_PATH];
|
||||
DWORD dwSize = MAX_PATH;
|
||||
INT RootImage;
|
||||
|
||||
(void)TreeView_DeleteAllItems(Info->hTreeView);
|
||||
|
||||
/* get the device image List */
|
||||
ImageListData.cbSize = sizeof(ImageListData);
|
||||
SetupDiGetClassImageList(&ImageListData);
|
||||
|
||||
hComp = LoadBitmap(hInstance,
|
||||
MAKEINTRESOURCE(IDB_ROOT_IMAGE));
|
||||
|
||||
ImageList_Add(ImageListData.ImageList,
|
||||
hComp,
|
||||
NULL);
|
||||
|
||||
DeleteObject(hComp);
|
||||
|
||||
(void)TreeView_SetImageList(Info->hTreeView,
|
||||
ImageListData.ImageList,
|
||||
TVSIL_NORMAL);
|
||||
|
||||
if (!GetComputerName(ComputerName,
|
||||
&dwSize))
|
||||
{
|
||||
ComputerName[0] = _T('\0');
|
||||
}
|
||||
|
||||
RootImage = ImageList_GetImageCount(ImageListData.ImageList) - 1;
|
||||
|
||||
/* insert the root item into the tree */
|
||||
hRoot = InsertIntoTreeView(Info->hTreeView,
|
||||
NULL,
|
||||
ComputerName,
|
||||
NULL,
|
||||
RootImage);
|
||||
|
||||
return hRoot;
|
||||
}
|
||||
@@ -0,0 +1,641 @@
|
||||
/*
|
||||
* PROJECT: ReactOS Device Managment
|
||||
* LICENSE: GPL - See COPYING in the top level directory
|
||||
* FILE: base/system/devmgmt/mainwnd.c
|
||||
* PURPOSE: Main window message handler
|
||||
* COPYRIGHT: Copyright 2006 Ged Murphy <gedmurphy@gmail.com>
|
||||
*
|
||||
*/
|
||||
|
||||
#include "precomp.h"
|
||||
|
||||
static const TCHAR szMainWndClass[] = TEXT("DevMgmtWndClass");
|
||||
|
||||
|
||||
/* Toolbar buttons */
|
||||
TBBUTTON Buttons [] =
|
||||
{ /* iBitmap, idCommand, fsState, fsStyle, bReserved[2], dwData, iString */
|
||||
{TBICON_PROP, IDC_PROP, TBSTATE_ENABLED, BTNS_BUTTON, {0}, 0, 0}, /* properties */
|
||||
{TBICON_REFRESH, IDC_REFRESH, TBSTATE_ENABLED, BTNS_BUTTON, {0}, 0, 0}, /* refresh */
|
||||
|
||||
/* Note: First item for a seperator is its width in pixels */
|
||||
{15, 0, TBSTATE_ENABLED, BTNS_SEP, {0}, 0, 0}, /* separator */
|
||||
|
||||
{TBICON_HELP, IDC_PROGHELP,TBSTATE_ENABLED, BTNS_BUTTON, {0}, 0, 0 }, /* help */
|
||||
{TBICON_EXIT, IDC_EXIT, TBSTATE_ENABLED, BTNS_BUTTON, {0}, 0, 0 }, /* exit */
|
||||
|
||||
};
|
||||
|
||||
|
||||
/* menu hints */
|
||||
static const MENU_HINT MainMenuHintTable[] = {
|
||||
/* File Menu */
|
||||
{IDC_EXIT, IDS_HINT_EXIT},
|
||||
|
||||
/* Action Menu */
|
||||
{IDC_REFRESH, IDS_HINT_REFRESH},
|
||||
{IDC_PROP, IDS_HINT_PROP},
|
||||
|
||||
/* Help Menu */
|
||||
{IDC_PROGHELP, IDS_HINT_HELP},
|
||||
{IDC_ABOUT, IDS_HINT_ABOUT}
|
||||
};
|
||||
|
||||
/* system menu hints */
|
||||
static const MENU_HINT SystemMenuHintTable[] = {
|
||||
{SC_RESTORE, IDS_HINT_SYS_RESTORE},
|
||||
{SC_MOVE, IDS_HINT_SYS_MOVE},
|
||||
{SC_SIZE, IDS_HINT_SYS_SIZE},
|
||||
{SC_MINIMIZE, IDS_HINT_SYS_MINIMIZE},
|
||||
{SC_MAXIMIZE, IDS_HINT_SYS_MAXIMIZE},
|
||||
{SC_CLOSE, IDS_HINT_SYS_CLOSE},
|
||||
};
|
||||
|
||||
|
||||
static BOOL
|
||||
MainWndMenuHint(PMAIN_WND_INFO Info,
|
||||
WORD CmdId,
|
||||
const MENU_HINT *HintArray,
|
||||
DWORD HintsCount,
|
||||
UINT DefHintId)
|
||||
{
|
||||
BOOL Found = FALSE;
|
||||
const MENU_HINT *LastHint;
|
||||
UINT HintId = DefHintId;
|
||||
|
||||
LastHint = HintArray + HintsCount;
|
||||
while (HintArray != LastHint)
|
||||
{
|
||||
if (HintArray->CmdId == CmdId)
|
||||
{
|
||||
HintId = HintArray->HintId;
|
||||
Found = TRUE;
|
||||
break;
|
||||
}
|
||||
HintArray++;
|
||||
}
|
||||
|
||||
StatusBarLoadString(Info->hStatus,
|
||||
SB_SIMPLEID,
|
||||
hInstance,
|
||||
HintId);
|
||||
|
||||
return Found;
|
||||
}
|
||||
|
||||
|
||||
static VOID
|
||||
UpdateMainStatusBar(PMAIN_WND_INFO Info)
|
||||
{
|
||||
if (Info->hStatus != NULL)
|
||||
{
|
||||
SendMessage(Info->hStatus,
|
||||
SB_SIMPLE,
|
||||
(WPARAM)Info->InMenuLoop,
|
||||
0);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
static BOOL
|
||||
CreateToolbar(PMAIN_WND_INFO Info)
|
||||
{
|
||||
INT NumButtons = sizeof(Buttons) / sizeof(Buttons[0]);
|
||||
|
||||
Info->hTool = CreateWindowEx(0,
|
||||
TOOLBARCLASSNAME,
|
||||
NULL,
|
||||
WS_CHILD | WS_VISIBLE | TBSTYLE_FLAT | TBSTYLE_TOOLTIPS,
|
||||
0, 0, 0, 0,
|
||||
Info->hMainWnd,
|
||||
(HMENU)IDC_TOOLBAR,
|
||||
hInstance,
|
||||
NULL);
|
||||
if(Info->hTool != NULL)
|
||||
{
|
||||
HIMAGELIST hImageList;
|
||||
|
||||
SendMessage(Info->hTool,
|
||||
TB_SETEXTENDEDSTYLE,
|
||||
0,
|
||||
TBSTYLE_EX_HIDECLIPPEDBUTTONS);
|
||||
|
||||
SendMessage(Info->hTool,
|
||||
TB_BUTTONSTRUCTSIZE,
|
||||
sizeof(Buttons[0]),
|
||||
0);
|
||||
|
||||
hImageList = InitImageList(IDB_PROP,
|
||||
IDB_EXIT,
|
||||
16,
|
||||
16);
|
||||
if (hImageList == NULL)
|
||||
return FALSE;
|
||||
|
||||
ImageList_Destroy((HIMAGELIST)SendMessage(Info->hTool,
|
||||
TB_SETIMAGELIST,
|
||||
0,
|
||||
(LPARAM)hImageList));
|
||||
|
||||
SendMessage(Info->hTool,
|
||||
TB_ADDBUTTONS,
|
||||
NumButtons,
|
||||
(LPARAM)Buttons);
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
|
||||
static BOOL
|
||||
CreateTreeView(PMAIN_WND_INFO Info)
|
||||
{
|
||||
Info->hTreeView = CreateWindowEx(0,
|
||||
WC_TREEVIEW,
|
||||
NULL,
|
||||
WS_CHILD | WS_VISIBLE | WS_BORDER | TVS_HASLINES |
|
||||
TVS_HASBUTTONS | TVS_SHOWSELALWAYS | TVS_LINESATROOT,
|
||||
0, 0, 0, 0,
|
||||
Info->hMainWnd,
|
||||
(HMENU)IDC_TREEVIEW,
|
||||
hInstance,
|
||||
NULL);
|
||||
if (Info->hTreeView == NULL)
|
||||
{
|
||||
DisplayString(_T("Could not create TreeView."));
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
static BOOL
|
||||
CreateStatusBar(PMAIN_WND_INFO Info)
|
||||
{
|
||||
INT StatWidths[] = {110, -1}; /* widths of status bar */
|
||||
|
||||
Info->hStatus = CreateWindowEx(0,
|
||||
STATUSCLASSNAME,
|
||||
NULL,
|
||||
WS_CHILD | WS_VISIBLE | SBARS_SIZEGRIP,
|
||||
0, 0, 0, 0,
|
||||
Info->hMainWnd,
|
||||
(HMENU)IDC_STATUSBAR,
|
||||
hInstance,
|
||||
NULL);
|
||||
if(Info->hStatus == NULL)
|
||||
return FALSE;
|
||||
|
||||
|
||||
SendMessage(Info->hStatus,
|
||||
SB_SETPARTS,
|
||||
sizeof(StatWidths) / sizeof(INT),
|
||||
(LPARAM)StatWidths);
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
|
||||
|
||||
static VOID
|
||||
InitMainWnd(PMAIN_WND_INFO Info)
|
||||
{
|
||||
HMENU hMenu;
|
||||
HTREEITEM hRoot;
|
||||
|
||||
if (!CreateToolbar(Info))
|
||||
DisplayString(_T("error creating toolbar"));
|
||||
|
||||
if (!CreateTreeView(Info))
|
||||
{
|
||||
DisplayString(_T("error creating list view"));
|
||||
return;
|
||||
}
|
||||
|
||||
if (!CreateStatusBar(Info))
|
||||
DisplayString(_T("error creating status bar"));
|
||||
|
||||
/* make 'properties' bold */
|
||||
hMenu = GetMenu(Info->hMainWnd);
|
||||
hMenu = GetSubMenu(hMenu, 1);
|
||||
SetMenuDefaultItem(hMenu, IDC_PROP, FALSE);
|
||||
|
||||
/* Create Popup Menu */
|
||||
Info->hShortcutMenu = LoadMenu(hInstance,
|
||||
MAKEINTRESOURCE(IDR_POPUP));
|
||||
Info->hShortcutMenu = GetSubMenu(Info->hShortcutMenu,
|
||||
0);
|
||||
SetMenuDefaultItem(Info->hShortcutMenu, IDC_PROP, FALSE);
|
||||
|
||||
/* emum all devices */
|
||||
hRoot = InitTreeView(Info);
|
||||
if (hRoot)
|
||||
ListDevicesByType(Info, hRoot);
|
||||
}
|
||||
|
||||
|
||||
static VOID
|
||||
OnContext(PMAIN_WND_INFO Info,
|
||||
LPARAM lParam)
|
||||
{
|
||||
HTREEITEM hSelected;
|
||||
POINT pt;
|
||||
RECT rc;
|
||||
|
||||
INT xPos = GET_X_LPARAM(lParam);
|
||||
INT yPos = GET_Y_LPARAM(lParam);
|
||||
|
||||
hSelected = TreeView_GetSelection(Info->hTreeView);
|
||||
|
||||
if (TreeView_GetItemRect(Info->hTreeView,
|
||||
hSelected,
|
||||
&rc,
|
||||
TRUE))
|
||||
{
|
||||
if (GetCursorPos(&pt) &&
|
||||
ScreenToClient(Info->hTreeView, &pt) &&
|
||||
PtInRect(&rc, pt))
|
||||
{
|
||||
TrackPopupMenuEx(Info->hShortcutMenu,
|
||||
TPM_RIGHTBUTTON,
|
||||
xPos,
|
||||
yPos,
|
||||
Info->hMainWnd,
|
||||
NULL);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
static VOID
|
||||
OnNotify(PMAIN_WND_INFO Info,
|
||||
LPARAM lParam)
|
||||
{
|
||||
|
||||
LPNMHDR pnmhdr = (LPNMHDR)lParam;
|
||||
|
||||
switch (pnmhdr->code)
|
||||
{
|
||||
case NM_DBLCLK:
|
||||
{
|
||||
HTREEITEM hSelected = TreeView_GetSelection(Info->hTreeView);
|
||||
|
||||
if (!TreeView_GetChild(Info->hTreeView,
|
||||
hSelected))
|
||||
{
|
||||
OpenPropSheet(Info->hTreeView,
|
||||
hSelected);
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
||||
case NM_RCLICK:
|
||||
{
|
||||
TV_HITTESTINFO HitTest;
|
||||
|
||||
if (GetCursorPos(&HitTest.pt) &&
|
||||
ScreenToClient(Info->hTreeView, &HitTest.pt))
|
||||
{
|
||||
if (TreeView_HitTest(Info->hTreeView, &HitTest))
|
||||
(void)TreeView_SelectItem(Info->hTreeView, HitTest.hItem);
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
||||
case TTN_GETDISPINFO:
|
||||
{
|
||||
LPTOOLTIPTEXT lpttt;
|
||||
UINT idButton;
|
||||
|
||||
lpttt = (LPTOOLTIPTEXT)lParam;
|
||||
|
||||
idButton = (UINT)lpttt->hdr.idFrom;
|
||||
switch (idButton)
|
||||
{
|
||||
case IDC_PROP:
|
||||
lpttt->lpszText = MAKEINTRESOURCE(IDS_TOOLTIP_PROP);
|
||||
break;
|
||||
|
||||
case IDC_REFRESH:
|
||||
lpttt->lpszText = MAKEINTRESOURCE(IDS_TOOLTIP_REFRESH);
|
||||
break;
|
||||
|
||||
case IDC_PROGHELP:
|
||||
lpttt->lpszText = MAKEINTRESOURCE(IDS_TOOLTIP_HELP);
|
||||
break;
|
||||
|
||||
case IDC_EXIT:
|
||||
lpttt->lpszText = MAKEINTRESOURCE(IDS_TOOLTIP_EXIT);
|
||||
break;
|
||||
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
static VOID
|
||||
MainWndCommand(PMAIN_WND_INFO Info,
|
||||
WORD CmdId,
|
||||
HWND hControl)
|
||||
{
|
||||
UNREFERENCED_PARAMETER(hControl);
|
||||
|
||||
switch (CmdId)
|
||||
{
|
||||
case IDC_PROP:
|
||||
{
|
||||
HTREEITEM hSelected = TreeView_GetSelection(Info->hTreeView);
|
||||
OpenPropSheet(Info->hTreeView,
|
||||
hSelected);
|
||||
}
|
||||
break;
|
||||
|
||||
case IDC_REFRESH:
|
||||
{
|
||||
HTREEITEM hRoot;
|
||||
|
||||
FreeDeviceStrings(Info->hTreeView);
|
||||
|
||||
hRoot = InitTreeView(Info);
|
||||
if (hRoot)
|
||||
ListDevicesByType(Info, hRoot);
|
||||
}
|
||||
break;
|
||||
|
||||
case IDC_PROGHELP:
|
||||
{
|
||||
DisplayString(_T("Help is not yet implemented\n"));
|
||||
SetFocus(Info->hTreeView);
|
||||
}
|
||||
break;
|
||||
|
||||
case IDC_EXIT:
|
||||
{
|
||||
PostMessage(Info->hMainWnd,
|
||||
WM_CLOSE,
|
||||
0,
|
||||
0);
|
||||
}
|
||||
break;
|
||||
|
||||
case IDC_ABOUT:
|
||||
{
|
||||
DialogBox(hInstance,
|
||||
MAKEINTRESOURCE(IDD_ABOUTBOX),
|
||||
Info->hMainWnd,
|
||||
(DLGPROC)AboutDialogProc);
|
||||
|
||||
SetFocus(Info->hTreeView);
|
||||
}
|
||||
break;
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
static VOID CALLBACK
|
||||
MainWndResize(PMAIN_WND_INFO Info,
|
||||
WORD cx,
|
||||
WORD cy)
|
||||
{
|
||||
RECT rcClient, rcTool, rcStatus;
|
||||
int lvHeight, iToolHeight, iStatusHeight;
|
||||
|
||||
/* Size toolbar and get height */
|
||||
SendMessage(Info->hTool, TB_AUTOSIZE, 0, 0);
|
||||
GetWindowRect(Info->hTool, &rcTool);
|
||||
iToolHeight = rcTool.bottom - rcTool.top;
|
||||
|
||||
/* Size status bar and get height */
|
||||
SendMessage(Info->hStatus, WM_SIZE, 0, 0);
|
||||
GetWindowRect(Info->hStatus, &rcStatus);
|
||||
iStatusHeight = rcStatus.bottom - rcStatus.top;
|
||||
|
||||
/* Calculate remaining height and size list view */
|
||||
GetClientRect(Info->hMainWnd, &rcClient);
|
||||
lvHeight = rcClient.bottom - iToolHeight - iStatusHeight;
|
||||
SetWindowPos(Info->hTreeView,
|
||||
NULL,
|
||||
0,
|
||||
iToolHeight,
|
||||
rcClient.right,
|
||||
lvHeight,
|
||||
SWP_NOZORDER);
|
||||
}
|
||||
|
||||
|
||||
static LRESULT CALLBACK
|
||||
MainWndProc(HWND hwnd,
|
||||
UINT msg,
|
||||
WPARAM wParam,
|
||||
LPARAM lParam)
|
||||
{
|
||||
PMAIN_WND_INFO Info;
|
||||
LRESULT Ret = 0;
|
||||
|
||||
/* Get the window context */
|
||||
Info = (PMAIN_WND_INFO)GetWindowLongPtr(hwnd,
|
||||
GWLP_USERDATA);
|
||||
if (Info == NULL && msg != WM_CREATE)
|
||||
{
|
||||
goto HandleDefaultMessage;
|
||||
}
|
||||
|
||||
switch(msg)
|
||||
{
|
||||
case WM_CREATE:
|
||||
{
|
||||
Info = (PMAIN_WND_INFO)(((LPCREATESTRUCT)lParam)->lpCreateParams);
|
||||
|
||||
/* Initialize the main window context */
|
||||
Info->hMainWnd = hwnd;
|
||||
|
||||
SetWindowLongPtr(hwnd,
|
||||
GWLP_USERDATA,
|
||||
(LONG_PTR)Info);
|
||||
|
||||
InitMainWnd(Info);
|
||||
|
||||
/* Show the window */
|
||||
ShowWindow(hwnd,
|
||||
Info->nCmdShow);
|
||||
|
||||
}
|
||||
break;
|
||||
|
||||
case WM_SIZE:
|
||||
{
|
||||
MainWndResize(Info,
|
||||
LOWORD(lParam),
|
||||
HIWORD(lParam));
|
||||
}
|
||||
break;
|
||||
|
||||
case WM_NOTIFY:
|
||||
{
|
||||
OnNotify(Info, lParam);
|
||||
}
|
||||
break;
|
||||
|
||||
case WM_CONTEXTMENU:
|
||||
{
|
||||
OnContext(Info, lParam);
|
||||
}
|
||||
break;
|
||||
|
||||
case WM_COMMAND:
|
||||
{
|
||||
MainWndCommand(Info,
|
||||
LOWORD(wParam),
|
||||
(HWND)lParam);
|
||||
goto HandleDefaultMessage;
|
||||
}
|
||||
|
||||
case WM_MENUSELECT:
|
||||
{
|
||||
if (Info->hStatus != NULL)
|
||||
{
|
||||
if (!MainWndMenuHint(Info,
|
||||
LOWORD(wParam),
|
||||
MainMenuHintTable,
|
||||
sizeof(MainMenuHintTable) / sizeof(MainMenuHintTable[0]),
|
||||
IDS_HINT_BLANK))
|
||||
{
|
||||
MainWndMenuHint(Info,
|
||||
LOWORD(wParam),
|
||||
SystemMenuHintTable,
|
||||
sizeof(SystemMenuHintTable) / sizeof(SystemMenuHintTable[0]),
|
||||
IDS_HINT_BLANK);
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
||||
case WM_ENTERMENULOOP:
|
||||
{
|
||||
Info->InMenuLoop = TRUE;
|
||||
UpdateMainStatusBar(Info);
|
||||
break;
|
||||
}
|
||||
|
||||
case WM_EXITMENULOOP:
|
||||
{
|
||||
Info->InMenuLoop = FALSE;
|
||||
UpdateMainStatusBar(Info);
|
||||
break;
|
||||
}
|
||||
|
||||
case WM_CLOSE:
|
||||
{
|
||||
FreeDeviceStrings(Info->hTreeView);
|
||||
DestroyMenu(Info->hShortcutMenu);
|
||||
DestroyWindow(hwnd);
|
||||
}
|
||||
break;
|
||||
|
||||
case WM_DESTROY:
|
||||
{
|
||||
HeapFree(ProcessHeap,
|
||||
0,
|
||||
Info);
|
||||
SetWindowLongPtr(hwnd,
|
||||
GWLP_USERDATA,
|
||||
0);
|
||||
|
||||
/* Break the message queue loop */
|
||||
PostQuitMessage(0);
|
||||
}
|
||||
break;
|
||||
|
||||
default:
|
||||
{
|
||||
HandleDefaultMessage:
|
||||
|
||||
Ret = DefWindowProc(hwnd,
|
||||
msg,
|
||||
wParam,
|
||||
lParam);
|
||||
}
|
||||
break;
|
||||
}
|
||||
return Ret;
|
||||
}
|
||||
|
||||
|
||||
|
||||
HWND
|
||||
CreateMainWindow(LPCTSTR lpCaption,
|
||||
int nCmdShow)
|
||||
{
|
||||
PMAIN_WND_INFO Info;
|
||||
HWND hMainWnd = NULL;
|
||||
|
||||
Info = HeapAlloc(ProcessHeap,
|
||||
HEAP_ZERO_MEMORY,
|
||||
sizeof(MAIN_WND_INFO));
|
||||
|
||||
if (Info != NULL)
|
||||
{
|
||||
Info->nCmdShow = nCmdShow;
|
||||
|
||||
hMainWnd = CreateWindowEx(WS_EX_WINDOWEDGE,
|
||||
szMainWndClass,
|
||||
lpCaption,
|
||||
WS_OVERLAPPEDWINDOW | WS_CLIPCHILDREN | WS_CLIPSIBLINGS,
|
||||
CW_USEDEFAULT,
|
||||
CW_USEDEFAULT,
|
||||
600,
|
||||
450,
|
||||
NULL,
|
||||
NULL,
|
||||
hInstance,
|
||||
Info);
|
||||
if (hMainWnd == NULL)
|
||||
{
|
||||
GetError();
|
||||
HeapFree(ProcessHeap,
|
||||
0,
|
||||
Info);
|
||||
}
|
||||
}
|
||||
|
||||
return hMainWnd;
|
||||
}
|
||||
|
||||
BOOL
|
||||
InitMainWindowImpl(VOID)
|
||||
{
|
||||
WNDCLASSEX wc = {0};
|
||||
|
||||
wc.cbSize = sizeof(WNDCLASSEX);
|
||||
wc.lpfnWndProc = MainWndProc;
|
||||
wc.hInstance = hInstance;
|
||||
wc.hIcon = LoadIcon(hInstance,
|
||||
MAKEINTRESOURCE(IDI_MAIN_ICON));
|
||||
wc.hCursor = LoadCursor(NULL,
|
||||
IDC_ARROW);
|
||||
wc.hbrBackground = (HBRUSH)(COLOR_BTNFACE + 1);
|
||||
wc.lpszMenuName = MAKEINTRESOURCE(IDR_MAINMENU);
|
||||
wc.lpszClassName = szMainWndClass;
|
||||
wc.hIconSm = (HICON)LoadImage(hInstance,
|
||||
MAKEINTRESOURCE(IDI_MAIN_ICON),
|
||||
IMAGE_ICON,
|
||||
16,
|
||||
16,
|
||||
LR_SHARED);
|
||||
|
||||
return RegisterClassEx(&wc) != (ATOM)0;
|
||||
}
|
||||
|
||||
|
||||
VOID
|
||||
UninitMainWindowImpl(VOID)
|
||||
{
|
||||
UnregisterClass(szMainWndClass,
|
||||
hInstance);
|
||||
}
|
||||
|
||||
@@ -0,0 +1,23 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||
<assembly
|
||||
xmlns="urn:schemas-microsoft-com:asm.v1"
|
||||
manifestVersion="1.0">
|
||||
<assemblyIdentity
|
||||
name="Win32 Application.default.App"
|
||||
processorArchitecture="x86"
|
||||
version="1.0.0.0"
|
||||
type="win32"/>
|
||||
<description>ReactOS Device Manager</description>
|
||||
<dependency>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity
|
||||
type="win32"
|
||||
name="Microsoft.Windows.Common-Controls"
|
||||
version="6.0.0.0"
|
||||
processorArchitecture="x86"
|
||||
publicKeyToken="6595b64144ccf1df"
|
||||
language="*"
|
||||
/>
|
||||
</dependentAssembly>
|
||||
</dependency>
|
||||
</assembly>
|
||||
@@ -0,0 +1,278 @@
|
||||
/*
|
||||
* PROJECT: ReactOS Device Managment
|
||||
* LICENSE: GPL - See COPYING in the top level directory
|
||||
* FILE: base/system/devmgmt/misc.c
|
||||
* PURPOSE: miscallanous functions
|
||||
* COPYRIGHT: Copyright 2006 Ged Murphy <gedmurphy@gmail.com>
|
||||
*
|
||||
*/
|
||||
|
||||
#include "precomp.h"
|
||||
|
||||
static INT
|
||||
LengthOfStrResource(IN HINSTANCE hInst,
|
||||
IN UINT uID)
|
||||
{
|
||||
HRSRC hrSrc;
|
||||
HGLOBAL hRes;
|
||||
LPWSTR lpName, lpStr;
|
||||
|
||||
if (hInst == NULL)
|
||||
{
|
||||
return -1;
|
||||
}
|
||||
|
||||
/* There are always blocks of 16 strings */
|
||||
lpName = (LPWSTR)MAKEINTRESOURCE((uID >> 4) + 1);
|
||||
|
||||
/* Find the string table block */
|
||||
if ((hrSrc = FindResourceW(hInst, lpName, (LPWSTR)RT_STRING)) &&
|
||||
(hRes = LoadResource(hInst, hrSrc)) &&
|
||||
(lpStr = LockResource(hRes)))
|
||||
{
|
||||
UINT x;
|
||||
|
||||
/* Find the string we're looking for */
|
||||
uID &= 0xF; /* position in the block, same as % 16 */
|
||||
for (x = 0; x < uID; x++)
|
||||
{
|
||||
lpStr += (*lpStr) + 1;
|
||||
}
|
||||
|
||||
/* Found the string */
|
||||
return (int)(*lpStr);
|
||||
}
|
||||
return -1;
|
||||
}
|
||||
|
||||
INT
|
||||
AllocAndLoadString(OUT LPTSTR *lpTarget,
|
||||
IN HINSTANCE hInst,
|
||||
IN UINT uID)
|
||||
{
|
||||
INT ln;
|
||||
|
||||
ln = LengthOfStrResource(hInst,
|
||||
uID);
|
||||
if (ln++ > 0)
|
||||
{
|
||||
(*lpTarget) = (LPTSTR)LocalAlloc(LMEM_FIXED,
|
||||
ln * sizeof(TCHAR));
|
||||
if ((*lpTarget) != NULL)
|
||||
{
|
||||
INT Ret;
|
||||
if (!(Ret = LoadString(hInst, uID, *lpTarget, ln)))
|
||||
{
|
||||
LocalFree((HLOCAL)(*lpTarget));
|
||||
}
|
||||
return Ret;
|
||||
}
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
DWORD
|
||||
LoadAndFormatString(IN HINSTANCE hInstance,
|
||||
IN UINT uID,
|
||||
OUT LPTSTR *lpTarget,
|
||||
...)
|
||||
{
|
||||
DWORD Ret = 0;
|
||||
LPTSTR lpFormat;
|
||||
va_list lArgs;
|
||||
|
||||
if (AllocAndLoadString(&lpFormat,
|
||||
hInstance,
|
||||
uID) > 0)
|
||||
{
|
||||
va_start(lArgs, lpTarget);
|
||||
/* let's use FormatMessage to format it because it has the ability to allocate
|
||||
memory automatically */
|
||||
Ret = FormatMessage(FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_STRING,
|
||||
lpFormat,
|
||||
0,
|
||||
0,
|
||||
(LPTSTR)lpTarget,
|
||||
0,
|
||||
&lArgs);
|
||||
va_end(lArgs);
|
||||
|
||||
LocalFree((HLOCAL)lpFormat);
|
||||
}
|
||||
|
||||
return Ret;
|
||||
}
|
||||
|
||||
BOOL
|
||||
StatusBarLoadAndFormatString(IN HWND hStatusBar,
|
||||
IN INT PartId,
|
||||
IN HINSTANCE hInstance,
|
||||
IN UINT uID,
|
||||
...)
|
||||
{
|
||||
BOOL Ret = FALSE;
|
||||
LPTSTR lpFormat, lpStr;
|
||||
va_list lArgs;
|
||||
|
||||
if (AllocAndLoadString(&lpFormat,
|
||||
hInstance,
|
||||
uID) > 0)
|
||||
{
|
||||
va_start(lArgs, uID);
|
||||
/* let's use FormatMessage to format it because it has the ability to allocate
|
||||
memory automatically */
|
||||
Ret = FormatMessage(FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_STRING,
|
||||
lpFormat,
|
||||
0,
|
||||
0,
|
||||
(LPTSTR)&lpStr,
|
||||
0,
|
||||
&lArgs);
|
||||
va_end(lArgs);
|
||||
|
||||
if (lpStr != NULL)
|
||||
{
|
||||
Ret = (BOOL)SendMessage(hStatusBar,
|
||||
SB_SETTEXT,
|
||||
(WPARAM)PartId,
|
||||
(LPARAM)lpStr);
|
||||
LocalFree((HLOCAL)lpStr);
|
||||
}
|
||||
|
||||
LocalFree((HLOCAL)lpFormat);
|
||||
}
|
||||
|
||||
return Ret;
|
||||
}
|
||||
|
||||
BOOL
|
||||
StatusBarLoadString(IN HWND hStatusBar,
|
||||
IN INT PartId,
|
||||
IN HINSTANCE hInstance,
|
||||
IN UINT uID)
|
||||
{
|
||||
BOOL Ret = FALSE;
|
||||
LPTSTR lpStr;
|
||||
|
||||
if (AllocAndLoadString(&lpStr,
|
||||
hInstance,
|
||||
uID) > 0)
|
||||
{
|
||||
Ret = (BOOL)SendMessage(hStatusBar,
|
||||
SB_SETTEXT,
|
||||
(WPARAM)PartId,
|
||||
(LPARAM)lpStr);
|
||||
LocalFree((HLOCAL)lpStr);
|
||||
}
|
||||
|
||||
return Ret;
|
||||
}
|
||||
|
||||
|
||||
INT
|
||||
GetTextFromEdit(OUT LPTSTR lpString,
|
||||
IN HWND hDlg,
|
||||
IN UINT Res)
|
||||
{
|
||||
INT len = GetWindowTextLength(GetDlgItem(hDlg, Res));
|
||||
if(len > 0)
|
||||
{
|
||||
GetDlgItemText(hDlg,
|
||||
Res,
|
||||
lpString,
|
||||
len + 1);
|
||||
}
|
||||
else
|
||||
lpString = NULL;
|
||||
|
||||
return len;
|
||||
}
|
||||
|
||||
|
||||
HIMAGELIST
|
||||
InitImageList(UINT StartResource,
|
||||
UINT EndResource,
|
||||
UINT Width,
|
||||
UINT Height)
|
||||
{
|
||||
HBITMAP hBitmap;
|
||||
HIMAGELIST hImageList;
|
||||
UINT i;
|
||||
INT Ret;
|
||||
|
||||
/* Create the toolbar icon image list */
|
||||
hImageList = ImageList_Create(Width,
|
||||
Height,
|
||||
ILC_MASK | ILC_COLOR24,
|
||||
EndResource - StartResource,
|
||||
0);
|
||||
if (hImageList == NULL)
|
||||
return NULL;
|
||||
|
||||
/* Add all icons to the image list */
|
||||
for (i = StartResource; i <= EndResource; i++)
|
||||
{
|
||||
hBitmap = LoadImage(hInstance,
|
||||
MAKEINTRESOURCE(i),
|
||||
IMAGE_BITMAP,
|
||||
Width,
|
||||
Height,
|
||||
LR_LOADTRANSPARENT);
|
||||
if (hBitmap == NULL)
|
||||
return NULL;
|
||||
|
||||
Ret = ImageList_AddMasked(hImageList,
|
||||
hBitmap,
|
||||
RGB(255, 0, 128));
|
||||
if (Ret == -1)
|
||||
return NULL;
|
||||
|
||||
DeleteObject(hBitmap);
|
||||
}
|
||||
|
||||
return hImageList;
|
||||
}
|
||||
|
||||
|
||||
VOID GetError(VOID)
|
||||
{
|
||||
LPVOID lpMsgBuf;
|
||||
|
||||
FormatMessage(FORMAT_MESSAGE_ALLOCATE_BUFFER |
|
||||
FORMAT_MESSAGE_FROM_SYSTEM |
|
||||
FORMAT_MESSAGE_IGNORE_INSERTS,
|
||||
NULL,
|
||||
GetLastError(),
|
||||
MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT),
|
||||
(LPTSTR) &lpMsgBuf,
|
||||
0,
|
||||
NULL );
|
||||
|
||||
MessageBox(NULL, lpMsgBuf, _T("Error!"), MB_OK | MB_ICONERROR);
|
||||
|
||||
LocalFree(lpMsgBuf);
|
||||
}
|
||||
|
||||
|
||||
VOID DisplayString(PTCHAR Msg)
|
||||
{
|
||||
MessageBox(NULL, Msg, _T("Note!"), MB_ICONEXCLAMATION|MB_OK);
|
||||
}
|
||||
|
||||
|
||||
VOID TimerInfo(LPTSTR text)
|
||||
{
|
||||
static HANDLE hOut = NULL;
|
||||
DWORD Count;
|
||||
TCHAR buf[256];
|
||||
static DWORD start = 0;
|
||||
|
||||
if (!start) start = GetTickCount();
|
||||
|
||||
if (!hOut) hOut = GetStdHandle(STD_ERROR_HANDLE);
|
||||
|
||||
if (text) _sntprintf(buf, 256, _T("%s\ttime : %d\n"), text, GetTickCount() - start);
|
||||
else _sntprintf(buf, 256, _T("time : %d\n"), GetTickCount() - start);
|
||||
|
||||
WriteConsole(hOut, buf, lstrlen(buf)+1, &Count, NULL);
|
||||
}
|
||||
@@ -0,0 +1,120 @@
|
||||
#ifndef __DEVMGMT_PRECOMP_H
|
||||
#define __DEVMGMT_PRECOMP_H
|
||||
|
||||
#define WIN32_LEAN_AND_MEAN
|
||||
#include <windows.h>
|
||||
#include <windowsx.h>
|
||||
#include <stdio.h>
|
||||
#include <tchar.h>
|
||||
#include <setupapi.h>
|
||||
#include <cfgmgr32.h>
|
||||
#include <commctrl.h>
|
||||
#include "resource.h"
|
||||
|
||||
#ifdef _MSC_VER
|
||||
#pragma warning(disable : 4100)
|
||||
#endif
|
||||
|
||||
#define MAX_DEV_LEN 256
|
||||
|
||||
typedef struct _MAIN_WND_INFO
|
||||
{
|
||||
HWND hMainWnd;
|
||||
HWND hTreeView;
|
||||
HWND hStatus;
|
||||
HWND hTool;
|
||||
HWND hProgDlg;
|
||||
HMENU hShortcutMenu;
|
||||
int nCmdShow;
|
||||
|
||||
/* status flags */
|
||||
UINT InMenuLoop : 1;
|
||||
|
||||
} MAIN_WND_INFO, *PMAIN_WND_INFO;
|
||||
|
||||
|
||||
BOOL CALLBACK AboutDialogProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam);
|
||||
|
||||
|
||||
/* devmgmt.c */
|
||||
extern HINSTANCE hInstance;
|
||||
extern HANDLE ProcessHeap;
|
||||
|
||||
/* mainwnd.c */
|
||||
typedef struct _MENU_HINT
|
||||
{
|
||||
WORD CmdId;
|
||||
UINT HintId;
|
||||
} MENU_HINT, *PMENU_HINT;
|
||||
|
||||
BOOL InitMainWindowImpl(VOID);
|
||||
VOID UninitMainWindowImpl(VOID);
|
||||
HWND CreateMainWindow(LPCTSTR lpCaption, int nCmdShow);
|
||||
|
||||
|
||||
/* enumdevices.c */
|
||||
// undocumented API's from devmgr
|
||||
#ifdef _UNICODE
|
||||
#define DevicePropertiesEx DevicePropertiesExW
|
||||
INT_PTR
|
||||
WINAPI
|
||||
DevicePropertiesExW(IN HWND hWndParent OPTIONAL,
|
||||
IN LPCWSTR lpMachineName OPTIONAL,
|
||||
IN LPCWSTR lpDeviceID OPTIONAL,
|
||||
IN DWORD dwFlags OPTIONAL,
|
||||
IN BOOL bShowDevMgr);
|
||||
#else
|
||||
#define DevicePropertiesEx DevicePropertiesExA
|
||||
INT_PTR
|
||||
WINAPI
|
||||
DevicePropertiesExA(IN HWND hWndParent OPTIONAL,
|
||||
IN LPCSTR lpMachineName OPTIONAL,
|
||||
IN LPCSTR lpDeviceID OPTIONAL,
|
||||
IN DWORD dwFlags OPTIONAL,
|
||||
IN BOOL bShowDevMgr);
|
||||
#endif
|
||||
|
||||
VOID FreeDeviceStrings(HWND hTV);
|
||||
VOID OpenPropSheet(HWND hTV, HTREEITEM hItem);
|
||||
HTREEITEM InitTreeView(PMAIN_WND_INFO Info);
|
||||
VOID ListDevicesByType(PMAIN_WND_INFO Info, HTREEITEM hRoot);
|
||||
|
||||
|
||||
/* misc.c */
|
||||
INT AllocAndLoadString(OUT LPTSTR *lpTarget,
|
||||
IN HINSTANCE hInst,
|
||||
IN UINT uID);
|
||||
|
||||
DWORD LoadAndFormatString(IN HINSTANCE hInstance,
|
||||
IN UINT uID,
|
||||
OUT LPTSTR *lpTarget,
|
||||
...);
|
||||
|
||||
BOOL StatusBarLoadAndFormatString(IN HWND hStatusBar,
|
||||
IN INT PartId,
|
||||
IN HINSTANCE hInstance,
|
||||
IN UINT uID,
|
||||
...);
|
||||
|
||||
BOOL StatusBarLoadString(IN HWND hStatusBar,
|
||||
IN INT PartId,
|
||||
IN HINSTANCE hInstance,
|
||||
IN UINT uID);
|
||||
|
||||
INT GetTextFromEdit(OUT LPTSTR lpString,
|
||||
IN HWND hDlg,
|
||||
IN UINT Res);
|
||||
|
||||
HIMAGELIST InitImageList(UINT NumButtons,
|
||||
UINT StartResource,
|
||||
UINT Width,
|
||||
UINT Height);
|
||||
|
||||
VOID GetError(VOID);
|
||||
|
||||
VOID DisplayString(PTCHAR);
|
||||
|
||||
VOID TimerInfo(LPTSTR);
|
||||
|
||||
|
||||
#endif /* __DEVMGMT_PRECOMP_H */
|
||||
|
After Width: | Height: | Size: 7.7 KiB |
|
After Width: | Height: | Size: 822 B |
|
After Width: | Height: | Size: 822 B |
|
After Width: | Height: | Size: 822 B |
|
After Width: | Height: | Size: 822 B |
|
After Width: | Height: | Size: 822 B |
@@ -0,0 +1,63 @@
|
||||
#define IDC_STATIC -1
|
||||
|
||||
#define IDI_MAIN_ICON 50
|
||||
#define IDB_ROOT_IMAGE 51
|
||||
|
||||
/* windows */
|
||||
#define IDC_TREEVIEW 1000
|
||||
#define IDC_TOOLBAR 1001
|
||||
#define IDC_STATUSBAR 1002
|
||||
|
||||
/* commands */
|
||||
#define IDC_PROP 2000
|
||||
#define IDC_REFRESH 2001
|
||||
#define IDC_PRINT 2002
|
||||
#define IDC_PROGHELP 2003
|
||||
#define IDC_EXIT 2004
|
||||
#define IDC_ABOUT 4031
|
||||
|
||||
/* menus */
|
||||
#define IDR_MAINMENU 102
|
||||
#define IDR_POPUP 103
|
||||
#define IDC_DEVBYTYPE 104
|
||||
|
||||
/* tooltips */
|
||||
#define IDS_TOOLTIP_PROP 6000
|
||||
#define IDS_TOOLTIP_REFRESH 6001
|
||||
#define IDS_TOOLTIP_HELP 6002
|
||||
#define IDS_TOOLTIP_EXIT 6003
|
||||
|
||||
/* button bitmaps */
|
||||
#define IDB_PROP 10000
|
||||
#define IDB_REFRESH 10001
|
||||
#define IDB_HELP 10002
|
||||
#define IDB_EXIT 10003
|
||||
|
||||
/* toolbar buttons */
|
||||
#define TBICON_PROP 0
|
||||
#define TBICON_REFRESH 1
|
||||
#define TBICON_HELP 2
|
||||
#define TBICON_EXIT 3
|
||||
|
||||
/* about box info */
|
||||
#define IDD_ABOUTBOX 200
|
||||
#define IDC_LICENSE_EDIT 201
|
||||
#define IDS_APPNAME 202
|
||||
#define IDS_LICENSE 203
|
||||
|
||||
|
||||
/* menu hints */
|
||||
#define IDS_HINT_BLANK 20000
|
||||
#define IDS_HINT_REFRESH 20002
|
||||
#define IDS_HINT_PROP 20003
|
||||
#define IDS_HINT_HELP 20004
|
||||
#define IDS_HINT_ABOUT 20005
|
||||
#define IDS_HINT_EXIT 20006
|
||||
|
||||
/* system menu hints */
|
||||
#define IDS_HINT_SYS_RESTORE 21001
|
||||
#define IDS_HINT_SYS_MOVE 21002
|
||||
#define IDS_HINT_SYS_SIZE 21003
|
||||
#define IDS_HINT_SYS_MINIMIZE 21004
|
||||
#define IDS_HINT_SYS_MAXIMIZE 21005
|
||||
#define IDS_HINT_SYS_CLOSE 21006
|
||||
@@ -131,8 +131,8 @@ void ListByClass()
|
||||
if (rc == ERROR_SUCCESS)
|
||||
{
|
||||
InsertIntoListView(i,ClassDescription,ClassName);
|
||||
TextOut(hDC, 200, 40, empty, strlen(empty));
|
||||
TextOut(hDC, 200, 40, ClassDescription, strlen(ClassDescription));
|
||||
TextOut(hDC, 200, 40, empty, (int) strlen(empty));
|
||||
TextOut(hDC, 200, 40, ClassDescription, (int) strlen(ClassDescription));
|
||||
_tprintf(_T("%d %s (%s)\n"), i, ClassName, ClassDescription);
|
||||
}
|
||||
else
|
||||
@@ -183,8 +183,8 @@ void ListByClass()
|
||||
{
|
||||
_tprintf(_T("- %s\n"), PropertyBuffer);
|
||||
InsertIntoListView(0,PropertyBuffer," ");
|
||||
TextOut(hDC, 200, 40, empty, strlen(empty));
|
||||
TextOut(hDC, 200, 40, PropertyBuffer, strlen(PropertyBuffer));
|
||||
TextOut(hDC, 200, 40, empty, (int) strlen(empty));
|
||||
TextOut(hDC, 200, 40, PropertyBuffer, (int) strlen(PropertyBuffer));
|
||||
}
|
||||
else
|
||||
_tprintf(_T("SetupDiGetDeviceRegistryProperty() failed with status 0x%lx\n"), GetLastError());
|
||||
@@ -239,16 +239,16 @@ CONFIGRET ListSubNodes(DEVINST parent, DWORD Level)
|
||||
_tprintf(_T("%s\n"), DisplayName);
|
||||
sprintf(temp,"%s%s",LevelSpaces,DisplayName);
|
||||
InsertIntoListView(0,temp," ");
|
||||
TextOut(hDC, 200, 40, empty, strlen(empty));
|
||||
TextOut(hDC, 200, 40, DisplayName, strlen(DisplayName));
|
||||
TextOut(hDC, 200, 40, empty, (int) strlen(empty));
|
||||
TextOut(hDC, 200, 40, DisplayName, (int) strlen(DisplayName));
|
||||
}
|
||||
else
|
||||
{
|
||||
_tprintf(_T("(unknown device)\n"));
|
||||
sprintf(temp,"%s%s",LevelSpaces,"(unknown device)");
|
||||
InsertIntoListView(0,temp," ");
|
||||
TextOut(hDC, 200, 40, empty, strlen(empty));
|
||||
TextOut(hDC, 200, 40, "(unknown device)", strlen("(unknown device)"));
|
||||
TextOut(hDC, 200, 40, empty, (int) strlen(empty));
|
||||
TextOut(hDC, 200, 40, "(unknown device)", (int) strlen("(unknown device)"));
|
||||
}
|
||||
cr = ListSubNodes(child, Level + 1);
|
||||
if (cr != CR_SUCCESS)
|
||||
@@ -328,8 +328,8 @@ int ListByInterface(const GUID* guid)
|
||||
if (SetupDiGetDeviceInterfaceDetail(hDevInfo, &DeviceInterfaceData, DeviceInterfaceDetailData, sizeof(Buffer), NULL, NULL))
|
||||
{
|
||||
_tprintf(_T("- device %-2ld: %s\n"), i, DeviceInterfaceDetailData->DevicePath);
|
||||
TextOut(hDC, 200, 40, empty, strlen(empty));
|
||||
TextOut(hDC, 200, 40, DeviceInterfaceDetailData->DevicePath, strlen(DeviceInterfaceDetailData->DevicePath));
|
||||
TextOut(hDC, 200, 40, empty, (int) strlen(empty));
|
||||
TextOut(hDC, 200, 40, DeviceInterfaceDetailData->DevicePath, (int) strlen(DeviceInterfaceDetailData->DevicePath));
|
||||
InsertIntoListView(i,DeviceInterfaceDetailData->DevicePath," ");
|
||||
}
|
||||
else
|
||||
@@ -362,6 +362,9 @@ int WINAPI WinMain( HINSTANCE hInstance,
|
||||
{
|
||||
MSG msg;
|
||||
|
||||
UNREFERENCED_PARAMETER(lpCmdLine);
|
||||
UNREFERENCED_PARAMETER(hInstance);
|
||||
|
||||
g_hInst = hInstance;
|
||||
|
||||
if(!hPrevInstance)
|
||||
@@ -481,7 +484,7 @@ switch (uMessage)
|
||||
InitListView();
|
||||
|
||||
CreateButtons(g_hInst, hWnd);
|
||||
TextOut(hDC, 200, 40, empty, strlen(empty));
|
||||
TextOut(hDC, 200, 40, empty, (int) strlen(empty));
|
||||
break;
|
||||
|
||||
|
||||
@@ -525,6 +528,8 @@ void CreateListView(HINSTANCE hInstance, HWND hwndParent)
|
||||
{
|
||||
DWORD dwStyle;
|
||||
|
||||
UNREFERENCED_PARAMETER(hInstance);
|
||||
|
||||
dwStyle = WS_TABSTOP |
|
||||
WS_CHILD |
|
||||
WS_BORDER |
|
||||
@@ -657,7 +662,7 @@ void InsertIntoListView(int typ, LPTSTR name, LPTSTR intern_name)
|
||||
}
|
||||
else
|
||||
item.pszText = "";
|
||||
item.cchTextMax = _tcslen(item.pszText);
|
||||
item.cchTextMax = (int) _tcslen(item.pszText);
|
||||
if (item.cchTextMax == 0)
|
||||
item.pszText = LPSTR_TEXTCALLBACK;
|
||||
item.iImage = 0;
|
||||
@@ -676,6 +681,8 @@ void InsertIntoListView(int typ, LPTSTR name, LPTSTR intern_name)
|
||||
void CreateButtons(HINSTANCE hInstance, HWND hwndParent)
|
||||
{
|
||||
|
||||
UNREFERENCED_PARAMETER(hInstance);
|
||||
|
||||
hwndButtonListByClass = CreateWindowEx (
|
||||
0,
|
||||
"button", /* Builtin button class */
|
||||
|
||||
@@ -9,6 +9,7 @@
|
||||
<library>kernel32</library>
|
||||
<library>user32</library>
|
||||
<library>comctl32</library>
|
||||
<library>advapi32</library>
|
||||
<file>devmgr.c</file>
|
||||
<efile>devmgr.rc</efile>
|
||||
</module>
|
||||
|
||||
@@ -5,6 +5,7 @@
|
||||
// Copyright J Brown 2001
|
||||
//
|
||||
#include <windows.h>
|
||||
#include <stdlib.h>
|
||||
#include "cardlib.h"
|
||||
#include "cardregion.h"
|
||||
#include "cardcolor.h"
|
||||
|
||||
@@ -6,6 +6,7 @@
|
||||
//
|
||||
#include <windows.h>
|
||||
#include <tchar.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
#include "globals.h"
|
||||
#include "cardlib.h"
|
||||
|
||||
@@ -0,0 +1,128 @@
|
||||
/*
|
||||
* PROJECT: Solitaire
|
||||
* LICENSE: Freeware, permission to use under Public Domain
|
||||
* FILE: base/applications/games/solitaire/de.rc
|
||||
* PURPOSE: German Language File for Solitaire
|
||||
* PROGRAMMERS: Daniel "EmuandCo" Reimer ([email protected])
|
||||
*/
|
||||
#include "resource.h"
|
||||
|
||||
#define APSTUDIO_READONLY_SYMBOLS
|
||||
|
||||
/* winemaker: #include "afxres.h" */
|
||||
/* winemaker:warning: 'afxres.h' is an MFC specific header. Replacing it with 'winres.h' */
|
||||
#include "winres.h"
|
||||
|
||||
/////
|
||||
|
||||
#undef APSTUDIO_READONLY_SYMBOLS
|
||||
|
||||
/////
|
||||
// German resources
|
||||
|
||||
#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENG)
|
||||
#ifdef _WIN32
|
||||
LANGUAGE LANG_GERMAN, SUBLANG_GERMAN
|
||||
#pragma code_page(1252)
|
||||
#endif //_WIN32
|
||||
|
||||
/////
|
||||
// Dialog
|
||||
|
||||
IDD_DIALOG1 DIALOGEX DISCARDABLE 0, 0, 186, 95
|
||||
STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
|
||||
CAPTION "Dialog"
|
||||
FONT 8, "MS Shell Dlg"
|
||||
EXSTYLE DS_SHELLFONT
|
||||
BEGIN
|
||||
DEFPUSHBUTTON "OK",IDOK,129,7,50,14
|
||||
PUSHBUTTON "Abbrechen",IDCANCEL,129,24,50,14
|
||||
END
|
||||
|
||||
|
||||
/////
|
||||
// DESIGNINFO
|
||||
|
||||
#ifdef APSTUDIO_INVOKED
|
||||
GUIDELINES DESIGNINFO DISCARDABLE
|
||||
BEGIN
|
||||
IDD_DIALOG1, DIALOGEX
|
||||
BEGIN
|
||||
LEFTMARGIN, 7
|
||||
RIGHTMARGIN, 179
|
||||
TOPMARGIN, 7
|
||||
BOTTOMMARGIN, 88
|
||||
END
|
||||
END
|
||||
#endif // APSTUDIO_INVOKED
|
||||
|
||||
|
||||
#ifdef APSTUDIO_INVOKED
|
||||
|
||||
/////
|
||||
// TEXTINCLUDE
|
||||
|
||||
1 TEXTINCLUDE DISCARDABLE
|
||||
BEGIN
|
||||
"resource.h\0"
|
||||
END
|
||||
|
||||
2 TEXTINCLUDE DISCARDABLE
|
||||
BEGIN
|
||||
"#include ""winres.h""\r\n"
|
||||
"\0"
|
||||
END
|
||||
|
||||
3 TEXTINCLUDE DISCARDABLE
|
||||
BEGIN
|
||||
"\r\n"
|
||||
"\0"
|
||||
END
|
||||
|
||||
#endif // APSTUDIO_INVOKED
|
||||
|
||||
|
||||
/////
|
||||
// Menu
|
||||
|
||||
IDR_MENU1 MENU DISCARDABLE
|
||||
BEGIN
|
||||
POPUP "&Spiel"
|
||||
BEGIN
|
||||
MENUITEM "&Karten geben\t F2", IDM_GAME_NEW
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "&Deckblatt...", IDM_GAME_DECK
|
||||
MENUITEM "&Optionen...", IDM_GAME_OPTIONS
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "&Beenden", IDM_GAME_EXIT
|
||||
END
|
||||
POPUP "&?"
|
||||
BEGIN
|
||||
MENUITEM "&Inhalt\tF1", IDM_HELP_CONTENTS
|
||||
MENUITEM "Inf&o", IDM_HELP_ABOUT
|
||||
END
|
||||
END
|
||||
|
||||
/////
|
||||
// Accelerator
|
||||
|
||||
IDR_ACCELERATOR1 ACCELERATORS DISCARDABLE
|
||||
BEGIN
|
||||
VK_F1, IDM_HELP_CONTENTS, VIRTKEY, NOINVERT
|
||||
VK_F2, IDM_GAME_NEW, VIRTKEY, NOINVERT
|
||||
END
|
||||
|
||||
|
||||
/////
|
||||
// Icon
|
||||
|
||||
IDI_ICON1 ICON DISCARDABLE "solitaire.ico"
|
||||
#endif // German resources
|
||||
|
||||
/////
|
||||
|
||||
|
||||
#ifndef APSTUDIO_INVOKED
|
||||
|
||||
/////
|
||||
#endif // not APSTUDIO_INVOKED
|
||||
@@ -0,0 +1,128 @@
|
||||
/*
|
||||
* PROJECT: Solitaire
|
||||
* LICENSE: Freeware, permission to use under Public Domain
|
||||
* FILE: base/applications/games/solitaire/en.rc
|
||||
* PURPOSE: English Language File for Solitaire
|
||||
* PROGRAMMERS: Daniel "EmuandCo" Reimer ([email protected])
|
||||
*/
|
||||
#include "resource.h"
|
||||
|
||||
#define APSTUDIO_READONLY_SYMBOLS
|
||||
|
||||
/* winemaker: #include "afxres.h" */
|
||||
/* winemaker:warning: 'afxres.h' is an MFC specific header. Replacing it with 'winres.h' */
|
||||
#include "winres.h"
|
||||
|
||||
/////
|
||||
|
||||
#undef APSTUDIO_READONLY_SYMBOLS
|
||||
|
||||
/////
|
||||
// English (U.K.) resources
|
||||
|
||||
#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENG)
|
||||
#ifdef _WIN32
|
||||
LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US
|
||||
#pragma code_page(1252)
|
||||
#endif //_WIN32
|
||||
|
||||
/////
|
||||
// Dialog
|
||||
|
||||
IDD_DIALOG1 DIALOGEX DISCARDABLE 0, 0, 186, 95
|
||||
STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
|
||||
CAPTION "Dialog"
|
||||
FONT 8, "MS Shell Dlg"
|
||||
EXSTYLE DS_SHELLFONT
|
||||
BEGIN
|
||||
DEFPUSHBUTTON "OK",IDOK,129,7,50,14
|
||||
PUSHBUTTON "Cancel",IDCANCEL,129,24,50,14
|
||||
END
|
||||
|
||||
|
||||
/////
|
||||
// DESIGNINFO
|
||||
|
||||
#ifdef APSTUDIO_INVOKED
|
||||
GUIDELINES DESIGNINFO DISCARDABLE
|
||||
BEGIN
|
||||
IDD_DIALOG1, DIALOGEX
|
||||
BEGIN
|
||||
LEFTMARGIN, 7
|
||||
RIGHTMARGIN, 179
|
||||
TOPMARGIN, 7
|
||||
BOTTOMMARGIN, 88
|
||||
END
|
||||
END
|
||||
#endif // APSTUDIO_INVOKED
|
||||
|
||||
|
||||
#ifdef APSTUDIO_INVOKED
|
||||
|
||||
/////
|
||||
// TEXTINCLUDE
|
||||
|
||||
1 TEXTINCLUDE DISCARDABLE
|
||||
BEGIN
|
||||
"resource.h\0"
|
||||
END
|
||||
|
||||
2 TEXTINCLUDE DISCARDABLE
|
||||
BEGIN
|
||||
"#include ""winres.h""\r\n"
|
||||
"\0"
|
||||
END
|
||||
|
||||
3 TEXTINCLUDE DISCARDABLE
|
||||
BEGIN
|
||||
"\r\n"
|
||||
"\0"
|
||||
END
|
||||
|
||||
#endif // APSTUDIO_INVOKED
|
||||
|
||||
|
||||
/////
|
||||
// Menu
|
||||
|
||||
IDR_MENU1 MENU DISCARDABLE
|
||||
BEGIN
|
||||
POPUP "&Game"
|
||||
BEGIN
|
||||
MENUITEM "&Deal\tF2", IDM_GAME_NEW
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "De&ck...", IDM_GAME_DECK
|
||||
MENUITEM "&Options...", IDM_GAME_OPTIONS
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "&Exit", IDM_GAME_EXIT
|
||||
END
|
||||
POPUP "&Help"
|
||||
BEGIN
|
||||
MENUITEM "&Contents\tF1", IDM_HELP_CONTENTS
|
||||
MENUITEM "&About", IDM_HELP_ABOUT
|
||||
END
|
||||
END
|
||||
|
||||
/////
|
||||
// Accelerator
|
||||
|
||||
IDR_ACCELERATOR1 ACCELERATORS DISCARDABLE
|
||||
BEGIN
|
||||
VK_F1, IDM_HELP_CONTENTS, VIRTKEY, NOINVERT
|
||||
VK_F2, IDM_GAME_NEW, VIRTKEY, NOINVERT
|
||||
END
|
||||
|
||||
|
||||
/////
|
||||
// Icon
|
||||
|
||||
IDI_ICON1 ICON DISCARDABLE "solitaire.ico"
|
||||
#endif // English (U.K.) resources
|
||||
|
||||
/////
|
||||
|
||||
|
||||
#ifndef APSTUDIO_INVOKED
|
||||
|
||||
/////
|
||||
#endif // not APSTUDIO_INVOKED
|
||||
@@ -1,144 +1,5 @@
|
||||
//Microsoft Developer Studio generated resource script.
|
||||
//
|
||||
#include "resource.h"
|
||||
|
||||
#define APSTUDIO_READONLY_SYMBOLS
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// Generated from the TEXTINCLUDE 2 resource.
|
||||
//
|
||||
/* winemaker: #include "afxres.h" */
|
||||
/* winemaker:warning: 'afxres.h' is an MFC specific header. Replacing it with 'winres.h' */
|
||||
#include "winres.h"
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
#undef APSTUDIO_READONLY_SYMBOLS
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// English (U.K.) resources
|
||||
|
||||
#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENG)
|
||||
#ifdef _WIN32
|
||||
LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_UK
|
||||
#pragma code_page(1252)
|
||||
#endif //_WIN32
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// Dialog
|
||||
//
|
||||
|
||||
IDD_DIALOG1 DIALOG DISCARDABLE 0, 0, 186, 95
|
||||
STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
|
||||
CAPTION "Dialog"
|
||||
FONT 8, "MS Sans Serif"
|
||||
BEGIN
|
||||
DEFPUSHBUTTON "OK",IDOK,129,7,50,14
|
||||
PUSHBUTTON "Cancel",IDCANCEL,129,24,50,14
|
||||
END
|
||||
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// DESIGNINFO
|
||||
//
|
||||
|
||||
#ifdef APSTUDIO_INVOKED
|
||||
GUIDELINES DESIGNINFO DISCARDABLE
|
||||
BEGIN
|
||||
IDD_DIALOG1, DIALOG
|
||||
BEGIN
|
||||
LEFTMARGIN, 7
|
||||
RIGHTMARGIN, 179
|
||||
TOPMARGIN, 7
|
||||
BOTTOMMARGIN, 88
|
||||
END
|
||||
END
|
||||
#endif // APSTUDIO_INVOKED
|
||||
|
||||
|
||||
#ifdef APSTUDIO_INVOKED
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// TEXTINCLUDE
|
||||
//
|
||||
|
||||
1 TEXTINCLUDE DISCARDABLE
|
||||
BEGIN
|
||||
"resource.h\0"
|
||||
END
|
||||
|
||||
2 TEXTINCLUDE DISCARDABLE
|
||||
BEGIN
|
||||
"#include ""winres.h""\r\n"
|
||||
"\0"
|
||||
END
|
||||
|
||||
3 TEXTINCLUDE DISCARDABLE
|
||||
BEGIN
|
||||
"\r\n"
|
||||
"\0"
|
||||
END
|
||||
|
||||
#endif // APSTUDIO_INVOKED
|
||||
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// Menu
|
||||
//
|
||||
|
||||
IDR_MENU1 MENU DISCARDABLE
|
||||
BEGIN
|
||||
POPUP "&Game"
|
||||
BEGIN
|
||||
MENUITEM "&Deal\tF2", IDM_GAME_NEW
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "De&ck...", IDM_GAME_DECK
|
||||
MENUITEM "&Options...", IDM_GAME_OPTIONS
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "&Exit", IDM_GAME_EXIT
|
||||
END
|
||||
POPUP "&Help"
|
||||
BEGIN
|
||||
MENUITEM "&Contents\tF1", IDM_HELP_CONTENTS
|
||||
MENUITEM "&About", IDM_HELP_ABOUT
|
||||
END
|
||||
END
|
||||
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// Accelerator
|
||||
//
|
||||
|
||||
IDR_ACCELERATOR1 ACCELERATORS DISCARDABLE
|
||||
BEGIN
|
||||
VK_F1, IDM_HELP_CONTENTS, VIRTKEY, NOINVERT
|
||||
VK_F2, IDM_GAME_NEW, VIRTKEY, NOINVERT
|
||||
END
|
||||
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// Icon
|
||||
//
|
||||
|
||||
// Icon with lowest ID value placed first to ensure application icon
|
||||
// remains consistent on all systems.
|
||||
IDI_ICON1 ICON DISCARDABLE "solitaire.ico"
|
||||
#endif // English (U.K.) resources
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
|
||||
|
||||
#ifndef APSTUDIO_INVOKED
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// Generated from the TEXTINCLUDE 3 resource.
|
||||
//
|
||||
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
#endif // not APSTUDIO_INVOKED
|
||||
|
||||
#include "de.rc"
|
||||
#include "en.rc"
|
||||
#include "uk.rc"
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
#include <windows.h>
|
||||
#include <commctrl.h>
|
||||
#include <tchar.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
#include "resource.h"
|
||||
#include "cardlib/cardlib.h"
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version="1.0"?>
|
||||
<!DOCTYPE project SYSTEM "tools/rbuild/project.dtd">
|
||||
<module name="sol" type="win32gui" installbase="system32" installname="solitaire.exe" allowwarnings="true">
|
||||
<module name="sol" type="win32gui" installbase="system32" installname="solitaire.exe" allowwarnings="true" stdlib="host">
|
||||
<include base="sol">.</include>
|
||||
<include base="sol">cardlib</include>
|
||||
<linkerflag>-lstdc++</linkerflag>
|
||||
|
||||
@@ -0,0 +1,128 @@
|
||||
/*
|
||||
* PROJECT: Solitaire
|
||||
* LICENSE: Freeware, permission to use under Public Domain
|
||||
* FILE: base/applications/games/solitaire/uk.rc
|
||||
* PURPOSE: Ukraianian Language File for Solitaire
|
||||
* TRANSLATOR: Artem Reznikov
|
||||
*/
|
||||
#include "resource.h"
|
||||
|
||||
#define APSTUDIO_READONLY_SYMBOLS
|
||||
|
||||
/* winemaker: #include "afxres.h" */
|
||||
/* winemaker:warning: 'afxres.h' is an MFC specific header. Replacing it with 'winres.h' */
|
||||
#include "winres.h"
|
||||
|
||||
/////
|
||||
|
||||
#undef APSTUDIO_READONLY_SYMBOLS
|
||||
|
||||
/////
|
||||
// Ukraianian resources
|
||||
|
||||
#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENG)
|
||||
#ifdef _WIN32
|
||||
LANGUAGE LANG_UKRAINIAN, SUBLANG_DEFAULT
|
||||
#pragma code_page(1251)
|
||||
#endif //_WIN32
|
||||
|
||||
/////
|
||||
// Dialog
|
||||
|
||||
IDD_DIALOG1 DIALOGEX DISCARDABLE 0, 0, 186, 95
|
||||
STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
|
||||
CAPTION "Dialog"
|
||||
FONT 8, "MS Shell Dlg"
|
||||
EXSTYLE DS_SHELLFONT
|
||||
BEGIN
|
||||
DEFPUSHBUTTON "OK",IDOK,129,7,50,14
|
||||
PUSHBUTTON "Ñêàñóâàòè",IDCANCEL,129,24,50,14
|
||||
END
|
||||
|
||||
|
||||
/////
|
||||
// DESIGNINFO
|
||||
|
||||
#ifdef APSTUDIO_INVOKED
|
||||
GUIDELINES DESIGNINFO DISCARDABLE
|
||||
BEGIN
|
||||
IDD_DIALOG1, DIALOGEX
|
||||
BEGIN
|
||||
LEFTMARGIN, 7
|
||||
RIGHTMARGIN, 179
|
||||
TOPMARGIN, 7
|
||||
BOTTOMMARGIN, 88
|
||||
END
|
||||
END
|
||||
#endif // APSTUDIO_INVOKED
|
||||
|
||||
|
||||
#ifdef APSTUDIO_INVOKED
|
||||
|
||||
/////
|
||||
// TEXTINCLUDE
|
||||
|
||||
1 TEXTINCLUDE DISCARDABLE
|
||||
BEGIN
|
||||
"resource.h\0"
|
||||
END
|
||||
|
||||
2 TEXTINCLUDE DISCARDABLE
|
||||
BEGIN
|
||||
"#include ""winres.h""\r\n"
|
||||
"\0"
|
||||
END
|
||||
|
||||
3 TEXTINCLUDE DISCARDABLE
|
||||
BEGIN
|
||||
"\r\n"
|
||||
"\0"
|
||||
END
|
||||
|
||||
#endif // APSTUDIO_INVOKED
|
||||
|
||||
|
||||
/////
|
||||
// Menu
|
||||
|
||||
IDR_MENU1 MENU DISCARDABLE
|
||||
BEGIN
|
||||
POPUP "&Ãðà"
|
||||
BEGIN
|
||||
MENUITEM "&Ðîçäàòè êàðòè\tF2", IDM_GAME_NEW
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "&Êîëîäà...", IDM_GAME_DECK
|
||||
MENUITEM "&Ïàðàìåòðè...", IDM_GAME_OPTIONS
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "Â&èõ³ä", IDM_GAME_EXIT
|
||||
END
|
||||
POPUP "&Äîâ³äêà"
|
||||
BEGIN
|
||||
MENUITEM "&Çì³ñò\tF1", IDM_HELP_CONTENTS
|
||||
MENUITEM "&Ïðî", IDM_HELP_ABOUT
|
||||
END
|
||||
END
|
||||
|
||||
/////
|
||||
// Accelerator
|
||||
|
||||
IDR_ACCELERATOR1 ACCELERATORS DISCARDABLE
|
||||
BEGIN
|
||||
VK_F1, IDM_HELP_CONTENTS, VIRTKEY, NOINVERT
|
||||
VK_F2, IDM_GAME_NEW, VIRTKEY, NOINVERT
|
||||
END
|
||||
|
||||
|
||||
/////
|
||||
// Icon
|
||||
|
||||
IDI_ICON1 ICON DISCARDABLE "solitaire.ico"
|
||||
#endif // Ukraianian resources
|
||||
|
||||
/////
|
||||
|
||||
|
||||
#ifndef APSTUDIO_INVOKED
|
||||
|
||||
/////
|
||||
#endif // not APSTUDIO_INVOKED
|
||||
@@ -0,0 +1,83 @@
|
||||
#include "resource.h"
|
||||
|
||||
LANGUAGE LANG_NORWEGIAN, SUBLANG_NEUTRAL
|
||||
|
||||
STRINGTABLE {
|
||||
IDS_APPNAME, "Minesveiper"
|
||||
|
||||
}
|
||||
|
||||
MENU_WINEMINE MENU DISCARDABLE
|
||||
{
|
||||
POPUP "&Valg" {
|
||||
MENUITEM "&Nytt", IDM_NEW
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "&Merk spørsmål", IDM_MARKQ
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "&Nybegynner", IDM_BEGINNER
|
||||
MENUITEM "&Anvansert", IDM_ADVANCED
|
||||
MENUITEM "&Ekspert", IDM_EXPERT
|
||||
MENUITEM "&Egendefinert", IDM_CUSTOM
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "A&vslutt", IDM_EXIT
|
||||
}
|
||||
POPUP "&Informasjon" {
|
||||
MENUITEM "&Beste tider", IDM_TIMES
|
||||
MENUITEM "&Om", IDM_ABOUT
|
||||
}
|
||||
}
|
||||
|
||||
DLG_TIMES DIALOG DISCARDABLE 0, 0, 160, 80
|
||||
STYLE DS_MODALFRAME | DS_3DLOOK |
|
||||
WS_VISIBLE | WS_CAPTION | WS_SYSMENU | WS_POPUP
|
||||
CAPTION "Beste tider"
|
||||
{
|
||||
GROUPBOX "Beste tider", IDNONE, 10, 10, 140, 45
|
||||
LTEXT "Nybegynner", IDNONE, 20, 20, 40, 8
|
||||
LTEXT "Anvansert", IDNONE, 20, 30, 40, 8
|
||||
LTEXT "Ekspert", IDNONE, 20, 40, 40, 8
|
||||
LTEXT "999", IDC_TIME1, 70, 20, 15, 8
|
||||
LTEXT "999", IDC_TIME2, 70, 30, 15, 8
|
||||
LTEXT "999", IDC_TIME3, 70, 40, 15, 8
|
||||
LTEXT "", IDC_NAME1, 90, 20, 55, 8
|
||||
LTEXT "", IDC_NAME2, 90, 30, 55, 8
|
||||
LTEXT "", IDC_NAME3, 90, 40, 55, 8
|
||||
DEFPUSHBUTTON "OK", IDOK, 55, 60, 50, 15
|
||||
}
|
||||
|
||||
DLG_CONGRATS DIALOG DISCARDABLE 0, 0, 160, 60
|
||||
STYLE DS_MODALFRAME | DS_3DLOOK |
|
||||
WS_VISIBLE | WS_CAPTION | WS_SYSMENU | WS_POPUP
|
||||
CAPTION "Congratulations!"
|
||||
{
|
||||
LTEXT "Skriv inn navnet ditt", IDIGNORE, 10, 10, 150, 10
|
||||
EDITTEXT IDC_EDITNAME, 25, 20, 110, 12
|
||||
DEFPUSHBUTTON "Ok", IDOK, 60, 40, 40, 15
|
||||
}
|
||||
|
||||
DLG_CUSTOM DIALOG DISCARDABLE 0, 0, 100, 100
|
||||
STYLE DS_MODALFRAME | DS_3DLOOK |
|
||||
WS_VISIBLE | WS_CAPTION | WS_SYSMENU | WS_POPUP
|
||||
CAPTION "Egendefinert spill"
|
||||
{
|
||||
LTEXT "Høyde", IDNONE, 5, 5, 30, 10
|
||||
LTEXT "Bredde", IDNONE, 5, 35, 30, 10
|
||||
LTEXT "Miner", IDNONE, 5, 65, 30, 10
|
||||
EDITTEXT IDC_EDITROWS, 5, 15, 20, 12, ES_NUMBER
|
||||
EDITTEXT IDC_EDITCOLS, 5, 45, 20, 12, ES_NUMBER
|
||||
EDITTEXT IDC_EDITMINES, 5, 75, 20, 12, ES_NUMBER
|
||||
DEFPUSHBUTTON "Ok", IDOK, 40, 30, 50, 15
|
||||
PUSHBUTTON "Avbryt", IDCANCEL, 40, 50, 50, 15
|
||||
}
|
||||
|
||||
DLG_ABOUT DIALOG DISCARDABLE 0, 0, 145, 80
|
||||
STYLE DS_MODALFRAME | DS_3DLOOK |
|
||||
WS_VISIBLE | WS_CAPTION | WS_SYSMENU | WS_POPUP
|
||||
CAPTION "Om"
|
||||
{
|
||||
LTEXT "Minesveiper", IDNONE, 10, 10, 35, 10
|
||||
LTEXT "Copyright 2000, Joshua Thielen", IDNONE, 35, 25, 100, 10
|
||||
LTEXT "under Wine lisensen", IDNONE, 35, 35, 100, 10
|
||||
ICON "Minesveiper", IDNONE, 10, 25, 20, 20
|
||||
DEFPUSHBUTTON "Ok", IDOK, 50, 60, 55, 15
|
||||
}
|
||||
@@ -0,0 +1,91 @@
|
||||
/*
|
||||
* PROJECT: WineMine
|
||||
* LICENSE: GPL - See COPYING in the top level directory
|
||||
* FILE: base/applications/games/winemine/Uk.rc
|
||||
* PURPOSE: Ukraianian Language File for WineMine
|
||||
* TRANSLATOR: Artem Reznikov
|
||||
*/
|
||||
|
||||
#include "resource.h"
|
||||
|
||||
LANGUAGE LANG_UKRAINIAN, SUBLANG_DEFAULT
|
||||
|
||||
STRINGTABLE {
|
||||
IDS_APPNAME, "Ñàïåð"
|
||||
|
||||
}
|
||||
|
||||
MENU_WINEMINE MENU DISCARDABLE
|
||||
{
|
||||
POPUP "&Îïö³¿" {
|
||||
MENUITEM "&Íîâà", IDM_NEW
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "&̳òêè (?)", IDM_MARKQ
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "&Ïî÷àòê³âåöü", IDM_BEGINNER
|
||||
MENUITEM "&Ëþáèòåëü", IDM_ADVANCED
|
||||
MENUITEM "&Åêñïåðò", IDM_EXPERT
|
||||
MENUITEM "&Îñîáëèâà", IDM_CUSTOM
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "Â&èõ³ä", IDM_EXIT
|
||||
}
|
||||
POPUP "&²íôîðìàö³ÿ" {
|
||||
MENUITEM "&Êðàù³ ÷àñè", IDM_TIMES
|
||||
MENUITEM "&Ïðî", IDM_ABOUT
|
||||
}
|
||||
}
|
||||
|
||||
DLG_TIMES DIALOG DISCARDABLE 0, 0, 160, 80
|
||||
STYLE DS_MODALFRAME | DS_3DLOOK |
|
||||
WS_VISIBLE | WS_CAPTION | WS_SYSMENU | WS_POPUP
|
||||
CAPTION "Êðàù³ ÷àñè"
|
||||
{
|
||||
GROUPBOX "Êðàù³ ÷àñè", IDNONE, 10, 10, 140, 45
|
||||
LTEXT "Ïî÷àòê³âåöü", IDNONE, 20, 20, 40, 8
|
||||
LTEXT "Ëþáèòåëü", IDNONE, 20, 30, 40, 8
|
||||
LTEXT "Åêñïåðò", IDNONE, 20, 40, 40, 8
|
||||
LTEXT "999", IDC_TIME1, 70, 20, 15, 8
|
||||
LTEXT "999", IDC_TIME2, 70, 30, 15, 8
|
||||
LTEXT "999", IDC_TIME3, 70, 40, 15, 8
|
||||
LTEXT "", IDC_NAME1, 90, 20, 55, 8
|
||||
LTEXT "", IDC_NAME2, 90, 30, 55, 8
|
||||
LTEXT "", IDC_NAME3, 90, 40, 55, 8
|
||||
DEFPUSHBUTTON "OK", IDOK, 55, 60, 50, 15
|
||||
}
|
||||
|
||||
DLG_CONGRATS DIALOG DISCARDABLE 0, 0, 160, 60
|
||||
STYLE DS_MODALFRAME | DS_3DLOOK |
|
||||
WS_VISIBLE | WS_CAPTION | WS_SYSMENU | WS_POPUP
|
||||
CAPTION "³òàííÿ!"
|
||||
{
|
||||
LTEXT "Ââåä³òü Âàøå ³ì'ÿ", IDIGNORE, 10, 10, 150, 10
|
||||
EDITTEXT IDC_EDITNAME, 25, 20, 110, 12
|
||||
DEFPUSHBUTTON "OK", IDOK, 60, 40, 40, 15
|
||||
}
|
||||
|
||||
DLG_CUSTOM DIALOG DISCARDABLE 0, 0, 100, 100
|
||||
STYLE DS_MODALFRAME | DS_3DLOOK |
|
||||
WS_VISIBLE | WS_CAPTION | WS_SYSMENU | WS_POPUP
|
||||
CAPTION "Îñîáëèâà ãðà"
|
||||
{
|
||||
LTEXT "Âèñîòà", IDNONE, 5, 5, 30, 10
|
||||
LTEXT "Øèðèíà", IDNONE, 5, 35, 30, 10
|
||||
LTEXT "̳í", IDNONE, 5, 65, 30, 10
|
||||
EDITTEXT IDC_EDITROWS, 5, 15, 20, 12, ES_NUMBER
|
||||
EDITTEXT IDC_EDITCOLS, 5, 45, 20, 12, ES_NUMBER
|
||||
EDITTEXT IDC_EDITMINES, 5, 75, 20, 12, ES_NUMBER
|
||||
DEFPUSHBUTTON "OK", IDOK, 40, 30, 50, 15
|
||||
PUSHBUTTON "Ñêàñóâàòè", IDCANCEL, 40, 50, 50, 15
|
||||
}
|
||||
|
||||
DLG_ABOUT DIALOG DISCARDABLE 0, 0, 145, 80
|
||||
STYLE DS_MODALFRAME | DS_3DLOOK |
|
||||
WS_VISIBLE | WS_CAPTION | WS_SYSMENU | WS_POPUP
|
||||
CAPTION "About"
|
||||
{
|
||||
LTEXT "Ñàïåð", IDNONE, 10, 10, 35, 10
|
||||
LTEXT "Copyright 2000, Joshua Thielen", IDNONE, 35, 25, 100, 10
|
||||
LTEXT "ïî ë³öåí糿 Wine", IDNONE, 35, 35, 100, 10
|
||||
ICON "WINEMINE", IDNONE, 10, 25, 20, 20
|
||||
DEFPUSHBUTTON "OK", IDOK, 50, 60, 55, 15
|
||||
}
|
||||
@@ -58,7 +58,7 @@ int WINAPI WinMain( HINSTANCE hInst, HINSTANCE hPrevInst, LPSTR cmdline, int cmd
|
||||
wc.hInstance = hInst;
|
||||
wc.hIcon = LoadIcon( hInst, appname );
|
||||
wc.hCursor = LoadCursor( NULL_HANDLE, (LPCTSTR)IDI_APPLICATION );
|
||||
wc.hbrBackground = (HBRUSH) GetStockObject( BLACK_BRUSH );
|
||||
wc.hbrBackground = (HBRUSH) GetStockObject( LTGRAY_BRUSH );
|
||||
wc.lpszMenuName = "MENU_WINEMINE";
|
||||
wc.lpszClassName = appname;
|
||||
|
||||
@@ -519,14 +519,14 @@ void CreateBoard( BOARD *p_board )
|
||||
top = BOARD_HMARGIN;
|
||||
right = left + LED_WIDTH * 3;
|
||||
bottom = top + LED_HEIGHT;
|
||||
SetRect( &p_board->timer_rect, left, top, right, bottom );
|
||||
SetRect( &p_board->counter_rect, left, top, right, bottom );
|
||||
|
||||
/* setting the counter rectangle boundary */
|
||||
left = p_board->width - BOARD_WMARGIN - LED_WIDTH * 3;
|
||||
top = BOARD_HMARGIN;
|
||||
right = p_board->width - BOARD_WMARGIN;
|
||||
bottom = top + LED_HEIGHT;
|
||||
SetRect( &p_board->counter_rect, left, top, right, bottom );
|
||||
SetRect( &p_board->timer_rect, left, top, right, bottom );
|
||||
|
||||
p_board->status = WAITING;
|
||||
p_board->face_bmp = SMILE_BMP;
|
||||
@@ -723,9 +723,9 @@ void DrawLeds( HDC hdc, HDC hMemDC, BOARD *p_board, int number, int x, int y )
|
||||
}
|
||||
|
||||
/* use unlit led if not playing */
|
||||
if( p_board->status == WAITING )
|
||||
/* if( p_board->status == WAITING )
|
||||
for( i = 0; i < 3; i++ )
|
||||
led[i] = 11;
|
||||
led[i] = 11;*/
|
||||
|
||||
hOldObj = SelectObject (hMemDC, p_board->hLedsBMP);
|
||||
|
||||
@@ -766,7 +766,7 @@ void DrawBoard( HDC hdc, HDC hMemDC, PAINTSTRUCT *ps, BOARD *p_board )
|
||||
{
|
||||
RECT tmp_rect;
|
||||
|
||||
if( IntersectRect( &tmp_rect, &ps->rcPaint, &p_board->counter_rect ) )
|
||||
if( IntersectRect( &tmp_rect, &ps->rcPaint, &p_board->counter_rect) )
|
||||
DrawLeds( hdc, hMemDC, p_board, p_board->mines - p_board->num_flags,
|
||||
p_board->counter_rect.left,
|
||||
p_board->counter_rect.top );
|
||||
@@ -774,7 +774,7 @@ void DrawBoard( HDC hdc, HDC hMemDC, PAINTSTRUCT *ps, BOARD *p_board )
|
||||
if( IntersectRect( &tmp_rect, &ps->rcPaint, &p_board->timer_rect ) )
|
||||
DrawLeds( hdc, hMemDC, p_board, p_board->time,
|
||||
p_board->timer_rect.left,
|
||||
p_board->timer_rect.top );
|
||||
p_board->timer_rect.top);
|
||||
|
||||
if( IntersectRect( &tmp_rect, &ps->rcPaint, &p_board->face_rect ) )
|
||||
DrawFace( hdc, hMemDC, p_board );
|
||||
|
||||
|
Before Width: | Height: | Size: 1.5 KiB After Width: | Height: | Size: 1.5 KiB |
|
Before Width: | Height: | Size: 2.3 KiB After Width: | Height: | Size: 2.3 KiB |
|
Before Width: | Height: | Size: 2.1 KiB After Width: | Height: | Size: 2.1 KiB |
@@ -6,7 +6,9 @@
|
||||
<define name="_WIN32_IE">0x0501</define>
|
||||
<define name="_WIN32_WINNT">0x0501</define>
|
||||
<library>kernel32</library>
|
||||
<library>gdi32</library>
|
||||
<library>gdi32</library>
|
||||
<library>user32</library>
|
||||
<library>advapi32</library>
|
||||
<file>main.c</file>
|
||||
<file>dialog.c</file>
|
||||
<file>winemine.rc</file>
|
||||
|
||||
@@ -26,7 +26,8 @@
|
||||
#include "Fr.rc"
|
||||
#include "Pl.rc"
|
||||
#include "Nl.rc"
|
||||
|
||||
#include "Uk.rc"
|
||||
#include "No.rc"
|
||||
|
||||
IDI_WINEMINE ICON MOVEABLE "rc/winemine.ico"
|
||||
|
||||
|
||||
@@ -1,19 +1,21 @@
|
||||
<?xml version="1.0"?>
|
||||
<!DOCTYPE project SYSTEM "tools/rbuild/project.dtd">
|
||||
<module name="getfirefox" type="win32gui" installbase="system32" installname="getfirefox.exe">
|
||||
<include base="getfirefox">.</include>
|
||||
<define name="UNICODE" />
|
||||
<define name="_UNICODE" />
|
||||
<define name="__USE_W32API" />
|
||||
<define name="WINVER">0x0501</define>
|
||||
<define name="_WIN32_IE>0x0600</define>
|
||||
<library>comctl32</library>
|
||||
<library>ntdll</library>
|
||||
<library>shell32</library>
|
||||
<library>shlwapi</library>
|
||||
<library>urlmon</library>
|
||||
<library>uuid</library>
|
||||
<pch>precomp.h</pch>
|
||||
<file>getfirefox.c</file>
|
||||
<file>getfirefox.rc</file>
|
||||
<include base="getfirefox">.</include>
|
||||
<define name="UNICODE" />
|
||||
<define name="_UNICODE" />
|
||||
<define name="__USE_W32API" />
|
||||
<define name="WINVER">0x0501</define>
|
||||
<define name="_WIN32_IE>0x0600</define>
|
||||
<library>comctl32</library>
|
||||
<library>ntdll</library>
|
||||
<library>shell32</library>
|
||||
<library>shlwapi</library>
|
||||
<library>urlmon</library>
|
||||
<library>user32</library>
|
||||
<library>kernel32</library>
|
||||
<library>uuid</library>
|
||||
<pch>precomp.h</pch>
|
||||
<file>getfirefox.c</file>
|
||||
<file>getfirefox.rc</file>
|
||||
</module>
|
||||
|
||||
@@ -14,21 +14,9 @@
|
||||
#define REACTOS_STR_ORIGINAL_FILENAME "getfirefox.exe\0"
|
||||
#include <reactos/version.rc>
|
||||
|
||||
/*
|
||||
* Note: this icon is the "default logo" referenced here:
|
||||
* http://www.mozilla.org/foundation/trademarks/faq.html (under "What are the
|
||||
* Mozilla Trademarks and Logos?"). Don't use the official Firefox logo as it
|
||||
* is trademarked.
|
||||
*/
|
||||
1 ICON "firefox.ico"
|
||||
|
||||
#include "De.rc"
|
||||
#include "En.rc"
|
||||
#include "Fr.rc"
|
||||
#include "Hu.rc"
|
||||
#include "Nl.rc"
|
||||
#include "Ru.rc"
|
||||
#include "Sv.rc"
|
||||
#include "Uk.rc"
|
||||
#include "rsrc.rc"
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
*/
|
||||
|
||||
LANGUAGE LANG_HUNGARIAN, SUBLANG_NEUTRAL
|
||||
LANGUAGE LANG_HUNGARIAN, SUBLANG_DEFAULT
|
||||
|
||||
IDD_GETFIREFOX DIALOG LOADONCALL MOVEABLE DISCARDABLE 0, 0, 220, 76
|
||||
STYLE DS_MODALFRAME | DS_CENTER | WS_VISIBLE | WS_POPUP | WS_CAPTION | WS_SYSMENU
|
||||
@@ -0,0 +1,44 @@
|
||||
/*
|
||||
* PROJECT: ReactOS utilities
|
||||
* LICENSE: GPL - See COPYING in the top level directory
|
||||
* FILE: apps/utils/getfirefox/En.rc
|
||||
* PURPOSE: Norwegian resources
|
||||
* COPYRIGHT: Copyright 2004 Mike McCormack for CodeWeavers
|
||||
* Copyright 2005 Ge van Geldorp ([email protected])
|
||||
*/
|
||||
/*
|
||||
* Based on Wine dlls/shdocvw/En.rc
|
||||
*
|
||||
* 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
|
||||
*/
|
||||
|
||||
LANGUAGE LANG_NORWEGIAN, SUBLANG_NEUTRAL
|
||||
|
||||
IDD_GETFIREFOX DIALOG LOADONCALL MOVEABLE DISCARDABLE 0, 0, 220, 76
|
||||
STYLE DS_MODALFRAME | DS_CENTER | WS_VISIBLE | WS_POPUP | WS_CAPTION | WS_SYSMENU
|
||||
CAPTION "laster ned Firefox"
|
||||
FONT 8, "MS Shell Dlg"
|
||||
{
|
||||
CONTROL "Progress1",IDC_PROGRESS,"msctls_progress32",WS_BORDER|PBS_SMOOTH,10,10,200,12
|
||||
LTEXT "", IDC_STATUS, 10, 30, 200, 10, SS_CENTER
|
||||
CHECKBOX "Fjern 'Last Ned Firefox' fra startmenyen", IDC_REMOVE,
|
||||
10, 44, 200, 10, BS_AUTOCHECKBOX | WS_GROUP | WS_TABSTOP
|
||||
PUSHBUTTON "Avbryt", IDCANCEL, 85, 58, 50, 15, WS_GROUP | WS_TABSTOP
|
||||
}
|
||||
|
||||
STRINGTABLE
|
||||
BEGIN
|
||||
IDS_START_MENU_NAME "Få Firefox"
|
||||
END
|
||||
@@ -1,4 +1,4 @@
|
||||
LANGUAGE LANG_RUSSIAN, SUBLANG_NEUTRAL
|
||||
LANGUAGE LANG_RUSSIAN, SUBLANG_DEFAULT
|
||||
|
||||
IDD_GETFIREFOX DIALOG LOADONCALL MOVEABLE DISCARDABLE 0, 0, 220, 76
|
||||
STYLE DS_MODALFRAME | DS_CENTER | WS_VISIBLE | WS_POPUP | WS_CAPTION | WS_SYSMENU
|
||||
@@ -0,0 +1,30 @@
|
||||
|
||||
|
||||
#include <windows.h>
|
||||
#include "resource.h"
|
||||
|
||||
/*
|
||||
* Note: this icon is the "default logo" referenced here:
|
||||
* http://www.mozilla.org/foundation/trademarks/faq.html (under "What are the
|
||||
* Mozilla Trademarks and Logos?"). Don't use the official Firefox logo as it
|
||||
* is trademarked.
|
||||
*/
|
||||
1 ICON "firefox.ico"
|
||||
|
||||
|
||||
/* define language neutral resources */
|
||||
|
||||
LANGUAGE LANG_NEUTRAL, SUBLANG_NEUTRAL
|
||||
|
||||
/* include localised resources */
|
||||
#include "lang/De.rc"
|
||||
#include "lang/En.rc"
|
||||
#include "lang/Fr.rc"
|
||||
#include "lang/Hu.rc"
|
||||
#include "lang/Nl.rc"
|
||||
#include "lang/No.rc"
|
||||
#include "lang/Ru.rc"
|
||||
#include "lang/Sv.rc"
|
||||
#include "lang/Uk.rc"
|
||||
|
||||
|
||||
@@ -50,13 +50,14 @@ OBJECTS = \
|
||||
webchild.o \
|
||||
mainframe.o \
|
||||
favorites.o \
|
||||
xs-native.o \
|
||||
xmlstorage.o
|
||||
|
||||
LIBS = gdi32 comctl32 shell32 ole32 uuid oleaut32
|
||||
|
||||
all: $(TARGET)
|
||||
|
||||
$(TARGET): $(OBJECTS) $(PROGRAM)$(RES_SUFFIX) libexpat.dll
|
||||
$(TARGET): $(OBJECTS) $(PROGRAM)$(RES_SUFFIX)
|
||||
$(LINK) $(LFLAGS) -o $@ $^ $(addprefix -l,$(LIBS)) $(addprefix -l,$(DELAYIMPORTS))
|
||||
|
||||
ibrowser$(RES_SUFFIX): $(PROGRAM)_intres.rc res/*.bmp res/*.ico
|
||||
|
||||
@@ -52,6 +52,7 @@ OBJECTS = \
|
||||
webchild.o \
|
||||
mainframe.o \
|
||||
favorites.o \
|
||||
xs-native.o \
|
||||
xmlstorage.o
|
||||
|
||||
LIBS = gdi32 comctl32 shell32 ole32 oleaut32 uuid
|
||||
@@ -61,7 +62,7 @@ all: precomp.h.gch $(TARGET)
|
||||
precomp.h.gch: *.h utility/*.h
|
||||
$(CXX) $(CFLAGS) precomp.h
|
||||
|
||||
$(TARGET): $(OBJECTS) $(PROGRAM)$(RES_SUFFIX) libexpat.dll
|
||||
$(TARGET): $(OBJECTS) $(PROGRAM)$(RES_SUFFIX)
|
||||
$(LINK) $(LFLAGS) -o $@ $^ $(addprefix -l,$(LIBS)) $(addprefix -l,$(DELAYIMPORTS))
|
||||
|
||||
ibrowser$(RES_SUFFIX): $(PROGRAM)_intres.rc res/*.bmp res/*.ico
|
||||
|
||||
@@ -0,0 +1,161 @@
|
||||
//Microsoft Developer Studio generated resource script.
|
||||
//
|
||||
#include "ibrowser_intres.h"
|
||||
|
||||
#define APSTUDIO_READONLY_SYMBOLS
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// Generated from the TEXTINCLUDE 2 resource.
|
||||
//
|
||||
#include <windows.h>
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
#undef APSTUDIO_READONLY_SYMBOLS
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// German (Germany) resources
|
||||
|
||||
#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_DEU)
|
||||
#ifdef _WIN32
|
||||
LANGUAGE LANG_GERMAN, SUBLANG_GERMAN
|
||||
#pragma code_page(1252)
|
||||
#endif //_WIN32
|
||||
|
||||
#ifdef APSTUDIO_INVOKED
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// TEXTINCLUDE
|
||||
//
|
||||
|
||||
1 TEXTINCLUDE DISCARDABLE
|
||||
BEGIN
|
||||
"ibrowser_intres.h\0"
|
||||
END
|
||||
|
||||
2 TEXTINCLUDE DISCARDABLE
|
||||
BEGIN
|
||||
"#include <windows.h>\0"
|
||||
END
|
||||
|
||||
3 TEXTINCLUDE DISCARDABLE
|
||||
BEGIN
|
||||
"#ifndef _ROS_\r\n"
|
||||
"LANGUAGE LANG_NORWEGIAN, SUBLANG_NORWEGIAN_NO\r\n"
|
||||
"STRINGTABLE DISCARDABLE \r\n"
|
||||
"BEGIN\r\n"
|
||||
"#ifdef UNICODE\r\n"
|
||||
"IDS_IBROWSER_VERSION_STR ""ROS IBrowser%0s""\r\n"
|
||||
"#else\r\n"
|
||||
"IDS_IBROWSER_VERSION_STR ""ROS IBrowser Ansi%0s""\r\n"
|
||||
"#endif\r\n"
|
||||
"END\r\n"
|
||||
"#endif\r\n"
|
||||
"\0"
|
||||
END
|
||||
|
||||
#endif // APSTUDIO_INVOKED
|
||||
|
||||
#endif // German (Germany) resources
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// Norwegian (N.O.) resources
|
||||
|
||||
#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENU)
|
||||
#ifdef _WIN32
|
||||
LANGUAGE LANG_NORWEGIAN, SUBLANG_NEUTRAL
|
||||
#pragma code_page(1252)
|
||||
#endif //_WIN32
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// Menu
|
||||
//
|
||||
|
||||
IDM_SDIFRAME MENU PRELOAD DISCARDABLE
|
||||
BEGIN
|
||||
POPUP "&Fil"
|
||||
BEGIN
|
||||
MENUITEM "&Åpne", ID_FILE_OPEN
|
||||
MENUITEM "A&vslutt", ID_FILE_EXIT
|
||||
END
|
||||
POPUP "&Vis"
|
||||
BEGIN
|
||||
MENUITEM "&Verktøylinje", ID_VIEW_TOOL_BAR
|
||||
MENUITEM "S&idelinje", ID_VIEW_SIDE_BAR, GRAYED
|
||||
MENUITEM "&Statuslinje", ID_VIEW_STATUSBAR
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "&Oppdater\tF5", ID_REFRESH
|
||||
MENUITEM "&Fullskjerm\tCtrl+Shift+S", ID_VIEW_FULLSCREEN
|
||||
END
|
||||
POPUP "&Hjelp"
|
||||
BEGIN
|
||||
MENUITEM "IBrowser &FAQ...", ID_IBROWSER_FAQ
|
||||
MENUITEM "&Om IBrowser...", ID_ABOUT_IBROWSER
|
||||
MENUITEM "Om &OS...", ID_ABOUT_WINDOWS
|
||||
END
|
||||
END
|
||||
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// Dialog
|
||||
//
|
||||
|
||||
IDD_ABOUT_IBROWSER DIALOG DISCARDABLE 0, 0, 199, 106
|
||||
STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
|
||||
CAPTION "Om ReactOS Internett nettleser"
|
||||
FONT 10, "MS Sans Serif"
|
||||
BEGIN
|
||||
LTEXT "ReactOS Internett nettleser",IDC_ROS_IBROWSER,91,13,104,11
|
||||
LTEXT "V 0.9",IDC_VERSION_TXT,91,27,104,8
|
||||
LTEXT "(c) 2005 Martin Fuchs",IDC_STATIC,91,42,104,8
|
||||
LTEXT "",IDC_WIN_VERSION,91,58,98,22
|
||||
LTEXT "http://www.sky.franken.de/explorer/",IDC_WWW,17,84,129,
|
||||
8
|
||||
CONTROL "&OK",IDOK,"Button",BS_OWNERDRAW | BS_FLAT | WS_GROUP,
|
||||
154,90,38,12
|
||||
END
|
||||
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// String Table
|
||||
//
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
BEGIN
|
||||
IDS_TITLE "Reactos Internett nettleser"
|
||||
IDS_EMPTY "(TOM)"
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
BEGIN
|
||||
IDS_ABOUT_IBROWSER "&Om..."
|
||||
END
|
||||
|
||||
#endif // NORWEGIAN (N.O.) resources
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
|
||||
|
||||
#ifndef APSTUDIO_INVOKED
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// Generated from the TEXTINCLUDE 3 resource.
|
||||
//
|
||||
#ifndef _ROS_
|
||||
LANGUAGE LANG_NORWEGIAN, SUBLANG_NORWEGIAN_BOKMAL
|
||||
STRINGTABLE DISCARDABLE
|
||||
BEGIN
|
||||
#ifdef UNICODE
|
||||
IDS_IBROWSER_VERSION_STR "ROS IBrowser%0s"
|
||||
#else
|
||||
IDS_IBROWSER_VERSION_STR "ROS IBrowser Ansi%0s"
|
||||
#endif
|
||||
END
|
||||
#endif
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
#endif // not APSTUDIO_INVOKED
|
||||
|
||||