Commit graph

120 commits

Author SHA1 Message Date
Hermès Bélusca-Maïto
3dffe964a3
[USETUP] Reshuffle a bit the main-function of USetup.
svn path=/branches/setup_improvements/; revision=74975
2018-10-24 00:55:16 +02:00
Hermès Bélusca-Maïto
3fd27d34a5
[USETUP] The 'DestinationDriveLetter' variable (that is just used for SetDefaultPagefile()...) just needs to be initialized at one place only.
svn path=/branches/setup_improvements/; revision=74951
2018-10-24 00:55:13 +02:00
Hermès Bélusca-Maïto
0b714cbe6a
[USETUP] Whitespace fixes only.
svn path=/branches/setup_improvements/; revision=74636
svn path=/branches/setup_improvements/; revision=74639
2018-10-24 00:35:54 +02:00
Hermès Bélusca-Maïto
043a024d61
[USETUP] Small formatting changes + two functions turned into FORCEINLINE.
Based on:
svn path=/branches/setup_improvements/; revision=74616
2018-10-24 00:35:54 +02:00
Hermès Bélusca-Maïto
3c616b625d
[USETUP] Rename some of the uninformative "STRING_HDDINFOUNKx" string labels into more informative ones.
- Also, reserve a new field to display whether the disk is MBR or GPT-initialized.
- Adjust the code that used the "STRING_HDDINFOUNKx" string labels.
  The extra slot added to some of the strings is to indicate whether the disk is MBR or GPT.

As attentive readers will notice, the code that "determines" whether the disk is either MBR or GPT
is of course just temporary: it's just a placeholder code that should currently just show "MBR".

Having the NoMbr flag mostly signifies that the disk is uninitialized. A GPT disk also has a MBR
but it's for "backcompatibility" / "protective" reasons (so that MBR-only tools would see the disk
as just a big 1-partitioned only disk with which they could barely do anything). A real involved test
for the nature of the disk should involve calling the correct IOCTLs in the disk detection code in partlist.c .
This is for the future (and when ReactOS will better support GPT disks).

svn path=/branches/setup_improvements/; revision=74614
svn path=/branches/setup_improvements/; revision=74615
2018-10-24 00:35:53 +02:00
Hermès Bélusca-Maïto
38e20b638f
[USETUP] Massage the USETUP interface code.
- The "intro" page is renamed into the "Welcome" page, because its corresponding resource indeed is the welcome screen;
- Because the "setup start" page can only be displayed once, move it out of the while-loop, and use its result as the initial value of the 'Page' variable.
- Remove unneeded _PAGE_NUMBER_DEFINED guards;
- Add a DPRINT in the RepairUpdateFlag case of RegistryPage() (because we don't implement yet a correct upgrading or repairing of the registry).
- In InstallIntroPage(), display the page itself only if needed (i.e. after all the validation checks & repair/update or unattended checks are done). Similar modifications are done also in DeviceSettingsPage(), SelectPartitionPage()
- Turn both CheckUnattendedSetup() and UpdateKBLayout() into static functions.
- Fix the code of ScsiControllerPage() so that it can be compiled if needed, and add a dummy OemDriverPage().

svn path=/branches/setup_improvements/; revision=74575
2018-10-24 00:35:52 +02:00
Bișoc George
0e41230dac [USETUP] Fix a broken character in Italian resource (#968)
Also add two spaces at the beginning of the "deleting cache" string.
2018-10-23 17:41:38 +02:00
Arnav Bhatt
05c2e3e89e [USETUP][EXPLORER] ReactOS explorer translation and hindi font substitution. (#954) 2018-10-19 17:03:17 +02:00
Hermès Bélusca-Maïto
bd9fa3d701
[USETUP] Add a couple of missing TrimTrailingPathSeparators_UStr() calls.
Fixes in particular a regression brought by 57402ee (thanks George Bisoc
for having noticed this), where the BTRFS bootsector code could not be
installed anymore.

CORE-15192
2018-10-18 23:11:58 +02:00
Hermès Bélusca-Maïto
a28461124b
[SETUPLIB][USETUP] Minor code refactoring, consisting in renaming the "ntos boot loader" stuff into "boot store", since this happens to be functionality that is a bit more general than previously thought.
- Fix the usage of the BootEntry's "Version" member.
- Don't surround with too many quotation marks the "friendly" boot entry name in AddBootStoreEntry().

svn path=/branches/setup_improvements/; revision=74964
2018-10-14 23:46:52 +02:00
Hermès Bélusca-Maïto
e589513b46
[USETUP] As evoked in 27603a10 (r74943), adapt the code in bootsup.c to abstract the manipulation of freeldr.ini and boot.ini, and make it use the new features of bldrsup.c committed in 27603a10 (r74952).
In particular the helper functions CreateCommonFreeLdrSections() and (Un)protectBootIni() are now removed from there (they are used in bldrsup.c only).
This should pave the way for future integration with other sorts of NT boot loaders (BootMgr and (u)EFI boot loader).

svn path=/branches/setup_improvements/; revision=74954
2018-10-14 23:45:45 +02:00
Hermès Bélusca-Maïto
c2f7758e96
[SETUPLIB] Adapt the code in osdetect.c to make it use the new features of bldrsup.c committed in 27603a10 (r74952).
svn path=/branches/setup_improvements/; revision=74953
2018-10-14 23:37:44 +02:00
Hermès Bélusca-Maïto
27603a101c
[SETUPLIB] Introduce a lot of (Work in progress) functions to manipulate boot entries from different boot "stores".
This concerns so far, only freeldr.ini and to an extent, boot.ini, but planning in the future to add support for registry-oriented BCD
as well as possibly direct (u)EFI entries, using the corresponding NT functions.
This code is so far only used in osdetect.c, but will be soon used by usetup's bootsup.c (note that some helper functions: CreateCommonFreeLdrSections()
and (Un)protectBootIni() are already taken from it and used in bldrsup.c).
- In EnumerateNTOSBootEntries(), continue enumerating the boot entries until the user callback returns an status code that is not successful.
- Remove some old code from osdetect.c; use directly BootEntry->FriendlyName when building the display names of the available installations, since now
  BootEntry->FriendlyName is a PCWSTR (and not a UNICODE_STRING anymore).

svn path=/branches/setup_improvements/; revision=74943

[SETUPLIB] Make the NTOS_BOOT_ENTRY structure more generic, so that it can wrap around either actual NTOS boot entry options, or FreeLdr-like boot-sector options.

In a sense, the NTOS_BOOT_ENTRY structure now looks much more like the NT structure "BOOT_ENTRY".
- Adapt the code in bldrsup.c to these modifications, and re-enable FreeLdr-like boot-sector-file support code that was commented out.
More code cleanup will follow later.

svn path=/branches/setup_improvements/; revision=74952
2018-10-14 23:27:17 +02:00
Hermès Bélusca-Maïto
57402ee91e
[USETUP] Diverse fixes for path handling.
- Convert almost all swprintf() into StringCchPrintfW() and wcscpy() into StringCchCopyW();
- Explicitly add a trailing path separator to the "\Device\HarddiskX\PartitionY(\)" paths
  when they refer to FS directories (and not to partition objects);
- Remove useless (and half-buggy) "Remove trailing backslash" code.

With that, it is possible to install ReactOS in e.g. C:\ReactOS (as usual), C:\ReactOS\dir1\dir2 (as many dirs as you wish), and also in C:\ (yes yes!).
But in that latter case, a strange bug related to the registry arises...

Additionally:
- Adjust some comments;
- Add some debugging DPRINTs;
- The SetInstallPathValue() is part of the big hack I've mentioned in f51faa4a (r74709).

svn path=/branches/setup_improvements/; revision=74717
2018-10-14 23:22:55 +02:00
Hermès Bélusca-Maïto
3cb1392eff
[USETUP] When installing new FreeLDR entries for recognized DOS/OS-2 boot loaders, use distinct OS section names. Also, add detection for the Dell Real-Mode Kernel OS (DRMK).
svn path=/branches/setup_improvements/; revision=74932
2018-10-14 21:15:55 +02:00
Hermès Bélusca-Maïto
387e79c92e
[USETUP] Condense the different InstallFatXYBootSectorToDisk & ToFile functions into a InstallFatXYBootSector() function that is called by both the ToDisk and ToFile flavours.
Also, trim any potential trailing path separator from the NT disk partition path before opening the partition object itself for read/write access.

svn path=/branches/setup_improvements/; revision=74715
2018-10-14 21:15:34 +02:00
Hermès Bélusca-Maïto
f13a379153
[USETUP] Move some functions around, but no functional code changes otherwise.
svn path=/branches/setup_improvements/; revision=74714
2018-10-14 21:14:31 +02:00
Hermès Bélusca-Maïto
5b14b6f581
[WELCOME] Minor usage improvements.
- Don't hardcode the installer file name in ExpandInstallerPath() but
  provide it from a parameter. Return TRUE/FALSE if the installer file
  is/is not found.

- Expand any environment string present in the items command line.

- Enable/disable the menu buttons depending on whether or not an
  associated command is present.

- Enable mirroring from resources.
2018-10-08 21:00:14 +02:00
Hermès Bélusca-Maïto
a0dae6094e
[WELCOME] Reduce Welcome's SUBSYSTEM requirements to WinNT 4 for x86 builds only, so that we can still show something in old NT OSes. 2018-10-08 21:00:14 +02:00
Hermès Bélusca-Maïto
55f9fee412
[WELCOME] Automatically expands the path to the ReactOS installer executable found on the installation media, depending on the ambient CPU architecture.
svn path=/branches/setup_improvements/; revision=75330
2018-10-08 21:00:10 +02:00
Pierre Schweitzer
6a2e979f55
[USETUP] Add missing line jump 2018-10-02 13:34:59 +02:00
Hermès Bélusca-Maïto
e29457aadd
[USETUP] Remove a hardcoded value. 2018-09-29 21:54:48 +02:00
Stanislav Motylkov
13310b3acf [USETUP] Make countdown progress bar smoother 2018-09-14 11:33:50 +02:00
Stanislav Motylkov
b0ecee7b6e [USETUP] Update Russian translation 2018-09-14 11:33:50 +02:00
Katayama Hirofumi MZ
31019e8c0c [TRANSLATION] Update Romanian translation (#851)
Translation from Stefan Fulea.
CORE-15023
2018-09-14 11:04:36 +02:00
Paweł Cholewa
8b37182613 [TRANSLATION] Updated Polish translation in USETUP (#848) 2018-09-09 22:28:02 +02:00
Bișoc George
402ea59af6 [USETUP] Italian translation update 2018-09-09 22:26:39 +02:00
Bișoc George
c1bf18bada [USETUP] Romanian translation update 2018-09-09 22:26:39 +02:00
Nguyễn Thanh Sơn
f47d0023b7 [SETUP][REACTOS] Added Vietnamese translation. (#716) 2018-09-09 17:34:21 +02:00
Hermès Bélusca-Maïto
320e0d01ae
[USETUP] Update French translation. 2018-09-09 17:24:38 +02:00
Bișoc George
e5c0bfacf1
[USETUP] Implement the shutdown timeout progress bar. (#833)
- Add the MUI ID resource.
- Implement the shutdown timeout progress bar function and the TimeOut string handler.
- Add the resource string to other resource languages.
2018-09-09 17:17:16 +02:00
Katayama Hirofumi MZ
56583f3069 [FONT][SETUP] Add 'Tms Rmn' and 'Times' font substitutes (#830)
Add "Tms Rmn" and "Times" font substitutes (same as "Times New Roman"). Windows has these substitutes, hence we also need those to remain compatible.
2018-08-30 13:07:22 +02:00
Katayama Hirofumi MZ
b0a1cb52be [TCPSVCS] Remove hardcoded C drive letter (#800)
CORE-13228, CORE-13235

For USETUP, add a comment about why the code uses it when adding a boot-sector boot entry to NTLDR. CORE-13226
2018-08-28 12:45:03 +02:00
Hermès Bélusca-Maïto
cdb9f03236
[USETUP] Progress-bar: minor improvements.
- Simplify the usage of the PUPDATE_PROGRESS callback.

- Add the possibility of specifying an initial non-zero StepCount when
  creating the progress-bar (using the -Ex version), so that it can be
  initially drawn with the expected initial count.
  Of course ProgressSetStepCount() can continue to be used.
2018-08-27 23:55:58 +02:00
Hermès Bélusca-Maïto
6241a16f41
[USETUP] Implement a basic console 'input queue' and implement PeekConsoleInput() and CONSOLE_ConInKeyPeek() around it. 2018-08-27 00:28:08 +02:00
Hermès Bélusca-Maïto
e9ba3a8ebc
[USETUP] Progress-bar: Add support for displaying a custom progress text. 2018-08-26 20:41:57 +02:00
Hermès Bélusca-Maïto
3a33de0fb1
[USETUP] Progress-bar: Code formatting, add annotations, don't use floats. 2018-08-26 20:41:56 +02:00
Hermès Bélusca-Maïto
914769a14a
[USETUP] DrawProgressBar(): Draw the progress bar borders first, then draw its contents. 2018-08-26 20:41:49 +02:00
Baruch Rutman
8a407b5c60 [FONTS] Update Hebrew font subtitutions (#795)
Updated the font substitutions to use the new Hebrew glyphs in the updated Tahoma font.
Also added substitution for the Ubuntu font to make the Lautus and Modern themes legible with Hebrew UI elements.

Follow up to PR #789 and #790 ; CORE-14880, CORE-14943
2018-08-21 17:21:21 +02:00
Bișoc George
ee6bc66318 [USETUP] Implement CreateProgressBarEx() (#791)
Improve the progress bar functions:
- Add a member in the struct, which will be used as a bar colour parameter for the new CreateProgressBarEx().
- CreateProgressBar() which will now invoke the Ex variant without the additional parameter.
2018-08-21 15:49:54 +02:00
Victor Perevertkin
07bc92f740 [USETUP][SETUPLIB] Added support for formatting partition in BTRFS and installing ReactOS on it.
Removed code related to EXT2 boot sector for now.
CORE-13769
2018-08-20 08:26:56 +02:00
Julio Carchi
d7559e2354 [TRANSLATIONS] Fix spanish translations for some resources (#725)
Setup wizard
Network settings wizard
Input CPL
Open file dialogs
Devmgr
Explorer
2018-08-03 15:08:13 +02:00
Arnav Bhatt
c771a6d339 [WELCOME] Add Hindi translation (#620) 2018-06-21 14:07:03 +02:00
Andrea Crescentini
d303b70b7a [TRANSLATION] Improving italian translation (#623)
- Improved Italian translation for USETUP, WELCOME, REACTOS, EXPLORER.
- Completed translation in SYSSETUP.
- Correct some characters encoding and text alignment in USETUP.
2018-06-21 14:03:35 +02:00
Bișoc George
b8036ea176 [USETUP] Some changes to address the recent review 2018-06-16 22:28:53 +02:00
Bișoc George
682ac75ecd [USETUP] Italian translation update 2018-06-16 22:28:53 +02:00
Adam Słaboń
565ce5e827 [TRANSLATION] Polish translation update (#611)
Polish translation update for MODE, USETUP and SHELL32.
2018-06-12 15:51:37 +02:00
Bișoc George
03b7e13df5 [USETUP] Display the ReactOS release status (#608)
Update the introduction page with a more up-to-date exposition of the current status of ReactOS.
2018-06-11 22:53:57 +02:00
Hermès Bélusca-Maïto
b2606fd07a
[SETUPLIB] Silence annoying DPRINT1s. 2018-06-03 23:23:24 +02:00
Hermès Bélusca-Maïto
6f185c5fe2
[USETUP] Use correct flags for the NtCreateFile call that creates new file directories.
DIRECTORY_ALL_ACCESS is not the correct flag, because it is used with the NtCreateDirectoryObject API
that creates virtual "directories" in the NT object namespace; that's not our purpose here.

svn path=/branches/setup_improvements/; revision=74716
2018-06-03 22:12:46 +02:00