diff options
| author | Felix Geyer <debfx-pkg@fobos.de> | 2010-05-19 18:20:38 +0200 |
|---|---|---|
| committer | Felix Geyer <debfx-pkg@fobos.de> | 2010-05-19 18:20:38 +0200 |
| commit | abd0051802e55207e88435a185ff8d6e6b8d17d5 (patch) | |
| tree | c827a6fc0893ec4f74067aac529b5a52875a036b /src/VBox/Frontends | |
| parent | 1ea6626f22e9895b90f8795f794aa229a233a545 (diff) | |
| download | virtualbox-abd0051802e55207e88435a185ff8d6e6b8d17d5.tar.gz | |
Imported Upstream version 3.2.0-dfsgupstream/3.2.0-dfsg
Diffstat (limited to 'src/VBox/Frontends')
35 files changed, 1395 insertions, 1244 deletions
diff --git a/src/VBox/Frontends/VBoxHeadless/VBoxHeadless.cpp b/src/VBox/Frontends/VBoxHeadless/VBoxHeadless.cpp index 36ed17bb6..e749a785d 100644 --- a/src/VBox/Frontends/VBoxHeadless/VBoxHeadless.cpp +++ b/src/VBox/Frontends/VBoxHeadless/VBoxHeadless.cpp @@ -1,4 +1,4 @@ -/* $Id: VBoxHeadless.cpp 28960 2010-05-02 19:36:26Z vboxsync $ */ +/* $Id: VBoxHeadless.cpp 29518 2010-05-17 10:06:22Z vboxsync $ */ /** @file * VBoxHeadless - The VirtualBox Headless frontend for running VMs on servers. */ @@ -304,7 +304,7 @@ public: VBOX_SCRIPTABLE_DISPATCH_IMPL(IConsoleCallback) STDMETHOD(OnMousePointerShapeChange)(BOOL visible, BOOL alpha, ULONG xHot, ULONG yHot, - ULONG width, ULONG height, BYTE *shape) + ULONG width, ULONG height, ComSafeArrayIn(BYTE,shape)) { return VBOX_E_DONT_CALL_AGAIN; } @@ -1242,4 +1242,3 @@ int main(int argc, char **argv, char **envp) return TrustedMain(argc, argv, envp); } #endif /* !VBOX_WITH_HARDENING */ - diff --git a/src/VBox/Frontends/VBoxManage/Makefile.kmk b/src/VBox/Frontends/VBoxManage/Makefile.kmk index 93dee8998..8c25968f4 100644 --- a/src/VBox/Frontends/VBoxManage/Makefile.kmk +++ b/src/VBox/Frontends/VBoxManage/Makefile.kmk @@ -1,4 +1,4 @@ -# $Id: Makefile.kmk 29117 2010-05-05 22:59:38Z vboxsync $ +# $Id: Makefile.kmk 29555 2010-05-17 14:37:48Z vboxsync $ ## @file # Sub-Makefile for VBoxManage (the cli frontend). # @@ -42,7 +42,8 @@ else # !VBOX_ONLY_DOCS $(if $(VBOX_WITH_GUEST_PROPS),VBOX_WITH_GUEST_PROPS) \ $(if $(VBOX_WITH_GUEST_CONTROL),VBOX_WITH_GUEST_CONTROL) \ $(if $(VBOX_WITH_HOSTNETIF_API), VBOX_WITH_HOSTNETIF_API) \ - $(if $(VBOX_WITH_VDE), VBOX_WITH_VDE) + $(if $(VBOX_WITH_VDE), VBOX_WITH_VDE) \ + $(if $(VBOX_WITH_HGCM), VBOX_WITH_HGCM) VBoxManage_DEFS.win = _WIN32_WINNT=0x0500 ifdef VBOX_DYNAMIC_NET_ATTACH VBoxManage_DEFS += VBOX_DYNAMIC_NET_ATTACH diff --git a/src/VBox/Frontends/VBoxManage/VBoxInternalManage.cpp b/src/VBox/Frontends/VBoxManage/VBoxInternalManage.cpp index 090b88f95..019b59247 100644 --- a/src/VBox/Frontends/VBoxManage/VBoxInternalManage.cpp +++ b/src/VBox/Frontends/VBoxManage/VBoxInternalManage.cpp @@ -1,4 +1,4 @@ -/* $Id: VBoxInternalManage.cpp 28800 2010-04-27 08:22:32Z vboxsync $ */ +/* $Id: VBoxInternalManage.cpp 29651 2010-05-18 17:11:18Z vboxsync $ */ /** @file * VBoxManage - The 'internalcommands' command. * @@ -495,6 +495,16 @@ static DECLCALLBACK(void) handleVDError(void *pvUser, int rc, RT_SRC_POS_DECL, c RTPrintf("Error code %Rrc at %s(%u) in function %s\n", rc, RT_SRC_POS_ARGS); } +static int handleVDMessage(void *pvUser, const char *pszFormat, ...) +{ + NOREF(pvUser); + va_list args; + va_start(args, pszFormat); + int rc = RTPrintfV(pszFormat, args); + va_end(args); + return rc; +} + static int CmdSetHDUUID(int argc, char **argv, ComPtr<IVirtualBox> aVirtualBox, ComPtr<ISession> aSession) { /* we need exactly one parameter: the image file */ @@ -524,7 +534,7 @@ static int CmdSetHDUUID(int argc, char **argv, ComPtr<IVirtualBox> aVirtualBox, vdInterfaceErrorCallbacks.cbSize = sizeof(VDINTERFACEERROR); vdInterfaceErrorCallbacks.enmInterface = VDINTERFACETYPE_ERROR; vdInterfaceErrorCallbacks.pfnError = handleVDError; - vdInterfaceErrorCallbacks.pfnMessage = NULL; + vdInterfaceErrorCallbacks.pfnMessage = handleVDMessage; rc = VDInterfaceAdd(&vdInterfaceError, "VBoxManage_IError", VDINTERFACETYPE_ERROR, &vdInterfaceErrorCallbacks, NULL, &pVDIfs); @@ -557,16 +567,6 @@ static int CmdSetHDUUID(int argc, char **argv, ComPtr<IVirtualBox> aVirtualBox, } -static int handleVDMessage(void *pvUser, const char *pszFormat, ...) -{ - NOREF(pvUser); - va_list args; - va_start(args, pszFormat); - int rc = RTPrintfV(pszFormat, args); - va_end(args); - return rc; -} - static int CmdDumpHDInfo(int argc, char **argv, ComPtr<IVirtualBox> aVirtualBox, ComPtr<ISession> aSession) { /* we need exactly one parameter: the image file */ @@ -768,19 +768,17 @@ static int partRead(RTFILE File, PHOSTPARTITIONS pPart) } } - /* Now do a lot of consistency checking. */ + /* Fill out partitioning location info for MBR. */ + pPart->aPartitions[0].uPartDataStart = 0; + pPart->aPartitions[0].cPartDataSectors = pPart->aPartitions[0].uStart; + + /* Now do a some partition table consistency checking, to reject the most + * obvious garbage which can lead to trouble later. */ uint64_t uPrevEnd = 0; for (unsigned i = 0; i < pPart->cPartitions-1; i++) { if (pPart->aPartitions[i].cPartDataSectors) - { - if (pPart->aPartitions[i].uPartDataStart < uPrevEnd) - { - RTPrintf("Overlapping partition description areas. Aborting\n"); - return VERR_INVALID_PARAMETER; - } uPrevEnd = pPart->aPartitions[i].uPartDataStart + pPart->aPartitions[i].cPartDataSectors; - } if (pPart->aPartitions[i].uStart < uPrevEnd) { RTPrintf("Overlapping partitions. Aborting\n"); @@ -790,10 +788,6 @@ static int partRead(RTFILE File, PHOSTPARTITIONS pPart) uPrevEnd = pPart->aPartitions[i].uStart + pPart->aPartitions[i].uSize; } - /* Fill out partitioning location info for MBR. */ - pPart->aPartitions[0].uPartDataStart = 0; - pPart->aPartitions[0].cPartDataSectors = pPart->aPartitions[0].uStart; - return VINF_SUCCESS; } @@ -832,15 +826,13 @@ static int CmdListPartitions(int argc, char **argv, ComPtr<IVirtualBox> aVirtual HOSTPARTITIONS partitions; vrc = partRead(RawFile, &partitions); - if (RT_FAILURE(vrc)) - return vrc; + /* Don't bail out on errors, print the table and return the result code. */ RTPrintf("Number Type StartCHS EndCHS Size (MiB) Start (Sect)\n"); for (unsigned i = 0; i < partitions.cPartitions; i++) { - /* Suppress printing the extended partition. Otherwise people - * might add it to the list of partitions for raw partition - * access (which is not good). */ + /* Don't show the extended partition, otherwise users might think they + * can add it to the list of partitions for raw partition access. */ if (PARTTYPE_IS_EXTENDED(partitions.aPartitions[i].uType)) continue; @@ -857,7 +849,23 @@ static int CmdListPartitions(int argc, char **argv, ComPtr<IVirtualBox> aVirtual partitions.aPartitions[i].uStart); } - return 0; + return vrc; +} + +static PVBOXHDDRAWPARTDESC appendPartDesc(uint32_t *pcPartDescs, PVBOXHDDRAWPARTDESC *ppPartDescs) +{ + (*pcPartDescs)++; + PVBOXHDDRAWPARTDESC p; + p = (PVBOXHDDRAWPARTDESC)RTMemRealloc(*ppPartDescs, + *pcPartDescs * sizeof(VBOXHDDRAWPARTDESC)); + *ppPartDescs = p; + if (p) + { + p = p + *pcPartDescs - 1; + memset(p, '\0', sizeof(VBOXHDDRAWPARTDESC)); + } + + return p; } static int CmdCreateRawVMDK(int argc, char **argv, ComPtr<IVirtualBox> aVirtualBox, ComPtr<ISession> aSession) @@ -873,8 +881,6 @@ static int CmdCreateRawVMDK(int argc, char **argv, ComPtr<IVirtualBox> aVirtualB uint64_t cbSize = 0; PVBOXHDD pDisk = NULL; VBOXHDDRAW RawDescriptor; - HOSTPARTITIONS partitions; - uint32_t uPartitions = 0; PVDINTERFACE pVDIfs = NULL; /* let's have a closer look at the arguments */ @@ -1137,7 +1143,10 @@ static int CmdCreateRawVMDK(int argc, char **argv, ComPtr<IVirtualBox> aVirtualB { RawDescriptor.fRawDisk = false; RawDescriptor.pszRawDisk = NULL; - RawDescriptor.cPartitions = 0; + RawDescriptor.cPartDescs = 0; + RawDescriptor.pPartDescs = NULL; + + uint32_t uPartitions = 0; const char *p = pszPartitions; char *pszNext; @@ -1162,6 +1171,7 @@ static int CmdCreateRawVMDK(int argc, char **argv, ComPtr<IVirtualBox> aVirtualB } } + HOSTPARTITIONS partitions; vrc = partRead(RawFile, &partitions); if (RT_FAILURE(vrc)) { @@ -1185,24 +1195,95 @@ static int CmdCreateRawVMDK(int argc, char **argv, ComPtr<IVirtualBox> aVirtualB } } - RawDescriptor.cPartitions = partitions.cPartitions; - RawDescriptor.pPartitions = (PVBOXHDDRAWPART)RTMemAllocZ(partitions.cPartitions * sizeof(VBOXHDDRAWPART)); - if (!RawDescriptor.pPartitions) - { - RTPrintf("Out of memory allocating the partition list for '%s'\n", rawdisk.raw()); - vrc = VERR_NO_MEMORY; - goto out; - } for (unsigned i = 0; i < partitions.cPartitions; i++) { + PVBOXHDDRAWPARTDESC pPartDesc = NULL; + + /* first dump the MBR/EPT data area */ + if (partitions.aPartitions[i].cPartDataSectors) + { + pPartDesc = appendPartDesc(&RawDescriptor.cPartDescs, + &RawDescriptor.pPartDescs); + if (!pPartDesc) + { + RTPrintf("Out of memory allocating the partition list for '%s'\n", rawdisk.raw()); + vrc = VERR_NO_MEMORY; + goto out; + } + + /** @todo the clipping below isn't 100% accurate, as it should + * actually clip to the track size. However that's easier said + * than done as figuring out the track size is heuristics. In + * any case the clipping is adjusted later after sorting, to + * prevent overlapping data areas on the resulting image. */ + pPartDesc->cbData = RT_MIN(partitions.aPartitions[i].cPartDataSectors, 63) * 512; + pPartDesc->uStart = partitions.aPartitions[i].uPartDataStart * 512; + Assert(pPartDesc->cbData - (size_t)pPartDesc->cbData == 0); + void *pPartData = RTMemAlloc((size_t)pPartDesc->cbData); + if (!pPartData) + { + RTPrintf("Out of memory allocating the partition descriptor for '%s'\n", rawdisk.raw()); + vrc = VERR_NO_MEMORY; + goto out; + } + vrc = RTFileReadAt(RawFile, partitions.aPartitions[i].uPartDataStart * 512, + pPartData, (size_t)pPartDesc->cbData, NULL); + if (RT_FAILURE(vrc)) + { + RTPrintf("Cannot read partition data from raw device '%s': %Rrc\n", rawdisk.raw(), vrc); + goto out; + } + /* Splice in the replacement MBR code if specified. */ + if ( partitions.aPartitions[i].uPartDataStart == 0 + && pszMBRFilename) + { + RTFILE MBRFile; + vrc = RTFileOpen(&MBRFile, pszMBRFilename, RTFILE_O_READ | RTFILE_O_OPEN | RTFILE_O_DENY_WRITE); + if (RT_FAILURE(vrc)) + { + RTPrintf("Cannot open replacement MBR file '%s' specified with -mbr: %Rrc\n", pszMBRFilename, vrc); + goto out; + } + vrc = RTFileReadAt(MBRFile, 0, pPartData, 0x1be, NULL); + RTFileClose(MBRFile); + if (RT_FAILURE(vrc)) + { + RTPrintf("Cannot read replacement MBR file '%s': %Rrc\n", pszMBRFilename, vrc); + goto out; + } + } + pPartDesc->pvPartitionData = pPartData; + } + + if (PARTTYPE_IS_EXTENDED(partitions.aPartitions[i].uType)) + { + /* Suppress exporting the actual extended partition. Only + * logical partitions should be processed. However completely + * ignoring it leads to leaving out the EBR data. */ + continue; + } + + /* set up values for non-relative device names */ + const char *pszRawName = rawdisk.raw(); + uint64_t uStartOffset = partitions.aPartitions[i].uStart * 512; + + pPartDesc = appendPartDesc(&RawDescriptor.cPartDescs, + &RawDescriptor.pPartDescs); + if (!pPartDesc) + { + RTPrintf("Out of memory allocating the partition list for '%s'\n", rawdisk.raw()); + vrc = VERR_NO_MEMORY; + goto out; + } + if (uPartitions & RT_BIT(partitions.aPartitions[i].uIndex)) { if (fRelative) { #ifdef RT_OS_LINUX /* Refer to the correct partition and use offset 0. */ - char *pszRawName; - vrc = RTStrAPrintf(&pszRawName, "%s%u", rawdisk.raw(), + char *psz; + vrc = RTStrAPrintf(&psz, "%s%u", rawdisk.raw(), partitions.aPartitions[i].uIndex); if (RT_FAILURE(vrc)) { @@ -1210,13 +1291,12 @@ static int CmdCreateRawVMDK(int argc, char **argv, ComPtr<IVirtualBox> aVirtualB partitions.aPartitions[i].uIndex, vrc); goto out; } - RawDescriptor.pPartitions[i].pszRawDevice = pszRawName; - RawDescriptor.pPartitions[i].uPartitionStartOffset = 0; - RawDescriptor.pPartitions[i].uPartitionStart = partitions.aPartitions[i].uStart * 512; + pszRawName = psz; + uStartOffset = 0; #elif defined(RT_OS_DARWIN) /* Refer to the correct partition and use offset 0. */ - char *pszRawName; - vrc = RTStrAPrintf(&pszRawName, "%ss%u", rawdisk.raw(), + char *psz; + vrc = RTStrAPrintf(&psz, "%ss%u", rawdisk.raw(), partitions.aPartitions[i].uIndex); if (RT_FAILURE(vrc)) { @@ -1224,101 +1304,88 @@ static int CmdCreateRawVMDK(int argc, char **argv, ComPtr<IVirtualBox> aVirtualB partitions.aPartitions[i].uIndex, vrc); goto out; } - RawDescriptor.pPartitions[i].pszRawDevice = pszRawName; - RawDescriptor.pPartitions[i].uPartitionStartOffset = 0; - RawDescriptor.pPartitions[i].uPartitionStart = partitions.aPartitions[i].uStart * 512; + pszRawName = psz; + uStartOffset = 0; #else - /** @todo not implemented yet for Windows host. Treat just - * like not specified (this code is actually never reached). */ - RawDescriptor.pPartitions[i].pszRawDevice = rawdisk.raw(); - RawDescriptor.pPartitions[i].uPartitionStartOffset = partitions.aPartitions[i].uStart * 512; - RawDescriptor.pPartitions[i].uPartitionStart = partitions.aPartitions[i].uStart * 512; + /** @todo not implemented for other hosts. Treat just like + * not specified (this code is actually never reached). */ #endif } - else - { - /* This is the "everything refers to the base raw device" - * variant. This requires opening the base device in RW - * mode even for creation. */ - RawDescriptor.pPartitions[i].pszRawDevice = rawdisk.raw(); - RawDescriptor.pPartitions[i].uPartitionStartOffset = partitions.aPartitions[i].uStart * 512; - RawDescriptor.pPartitions[i].uPartitionStart = partitions.aPartitions[i].uStart * 512; - } + + pPartDesc->pszRawDevice = pszRawName; + pPartDesc->uStartOffset = uStartOffset; } else { - /* Suppress access to this partition. */ - RawDescriptor.pPartitions[i].pszRawDevice = NULL; - RawDescriptor.pPartitions[i].uPartitionStartOffset = 0; - /* This is used in the plausibility check in the creation - * code. In theory it's a dummy, but I don't want to make - * the VMDK creatiion any more complicated than what it needs - * to be. */ - RawDescriptor.pPartitions[i].uPartitionStart = partitions.aPartitions[i].uStart * 512; - } - if (PARTTYPE_IS_EXTENDED(partitions.aPartitions[i].uType)) - { - /* Suppress exporting the actual extended partition. Only - * logical partitions should be processed. However completely - * ignoring it leads to leaving out the MBR data. */ - RawDescriptor.pPartitions[i].cbPartition = 0; + pPartDesc->pszRawDevice = NULL; + pPartDesc->uStartOffset = 0; } - else - RawDescriptor.pPartitions[i].cbPartition = partitions.aPartitions[i].uSize * 512; - RawDescriptor.pPartitions[i].uPartitionDataStart = partitions.aPartitions[i].uPartDataStart * 512; - /** @todo the clipping below isn't 100% accurate, as it should - * actually clip to the track size. However that's easier said - * than done as figuring out the track size is heuristics. */ - RawDescriptor.pPartitions[i].cbPartitionData = RT_MIN(partitions.aPartitions[i].cPartDataSectors, 63) * 512; - if (RawDescriptor.pPartitions[i].cbPartitionData) + + pPartDesc->uStart = partitions.aPartitions[i].uStart * 512; + pPartDesc->cbData = partitions.aPartitions[i].uSize * 512; + } + + /* Sort data areas in ascending order of start. */ + for (unsigned i = 0; i < RawDescriptor.cPartDescs-1; i++) + { + unsigned uMinIdx = i; + uint64_t uMinVal = RawDescriptor.pPartDescs[i].uStart; + for (unsigned j = i + 1; j < RawDescriptor.cPartDescs; j++) { - Assert (RawDescriptor.pPartitions[i].cbPartitionData - - (size_t)RawDescriptor.pPartitions[i].cbPartitionData == 0); - void *pPartData = RTMemAlloc((size_t)RawDescriptor.pPartitions[i].cbPartitionData); - if (!pPartData) + if (RawDescriptor.pPartDescs[j].uStart < uMinVal) { - RTPrintf("Out of memory allocating the partition descriptor for '%s'\n", rawdisk.raw()); - vrc = VERR_NO_MEMORY; - goto out; + uMinIdx = j; + uMinVal = RawDescriptor.pPartDescs[j].uStart; } - vrc = RTFileReadAt(RawFile, partitions.aPartitions[i].uPartDataStart * 512, pPartData, (size_t)RawDescriptor.pPartitions[i].cbPartitionData, NULL); - if (RT_FAILURE(vrc)) + } + if (uMinIdx != i) + { + /* Swap entries at index i and uMinIdx. */ + VBOXHDDRAWPARTDESC tmp; + memcpy(&tmp, &RawDescriptor.pPartDescs[i], sizeof(tmp)); + memcpy(&RawDescriptor.pPartDescs[i], &RawDescriptor.pPartDescs[uMinIdx], sizeof(tmp)); + memcpy(&RawDescriptor.pPartDescs[uMinIdx], &tmp, sizeof(tmp)); + } + } + + /* Have a second go at MBR/EPT area clipping. Now that the data areas + * are sorted this is much easier to get 100% right. */ + for (unsigned i = 0; i < RawDescriptor.cPartDescs-1; i++) + { + if (RawDescriptor.pPartDescs[i].pvPartitionData) + { + RawDescriptor.pPartDescs[i].cbData = RT_MIN(RawDescriptor.pPartDescs[i+1].uStart - RawDescriptor.pPartDescs[i].uStart, RawDescriptor.pPartDescs[i].cbData); + if (!RawDescriptor.pPartDescs[i].cbData) { - RTPrintf("Cannot read partition data from raw device '%s': %Rrc\n", rawdisk.raw(), vrc); + RTPrintf("MBR/EPT overlaps with data area\n"); + vrc = VERR_INVALID_PARAMETER; goto out; } - /* Splice in the replacement MBR code if specified. */ - if ( partitions.aPartitions[i].uPartDataStart == 0 - && pszMBRFilename) - { - RTFILE MBRFile; - vrc = RTFileOpen(&MBRFile, pszMBRFilename, RTFILE_O_READ | RTFILE_O_OPEN | RTFILE_O_DENY_WRITE); - if (RT_FAILURE(vrc)) - { - RTPrintf("Cannot open replacement MBR file '%s' specified with -mbr: %Rrc\n", pszMBRFilename, vrc); - goto out; - } - vrc = RTFileReadAt(MBRFile, 0, pPartData, 0x1be, NULL); - RTFileClose(MBRFile); - if (RT_FAILURE(vrc)) - { - RTPrintf("Cannot read replacement MBR file '%s': %Rrc\n", pszMBRFilename, vrc); - goto out; - } - } - RawDescriptor.pPartitions[i].pvPartitionData = pPartData; } } } RTFileClose(RawFile); +#ifdef DEBUG_klaus + RTPrintf("# start length startoffset partdataptr device\n"); + for (unsigned i = 0; i < RawDescriptor.cPartDescs; i++) + { + RTPrintf("%2u %14RU64 %14RU64 %14RU64 %#18p %s\n", i, + RawDescriptor.pPartDescs[i].uStart, + RawDescriptor.pPartDescs[i].cbData, + RawDescriptor.pPartDescs[i].uStartOffset, + RawDescriptor.pPartDescs[i].pvPartitionData, + RawDescriptor.pPartDescs[i].pszRawDevice); + } +#endif + VDINTERFACE vdInterfaceError; VDINTERFACEERROR vdInterfaceErrorCallbacks; vdInterfaceErrorCallbacks.cbSize = sizeof(VDINTERFACEERROR); vdInterfaceErrorCallbacks.enmInterface = VDINTERFACETYPE_ERROR; vdInterfaceErrorCallbacks.pfnError = handleVDError; - vdInterfaceErrorCallbacks.pfnMessage = NULL; + vdInterfaceErrorCallbacks.pfnMessage = handleVDMessage; vrc = VDInterfaceAdd(&vdInterfaceError, "VBoxManage_IError", VDINTERFACETYPE_ERROR, &vdInterfaceErrorCallbacks, NULL, &pVDIfs); @@ -1356,19 +1423,16 @@ static int CmdCreateRawVMDK(int argc, char **argv, ComPtr<IVirtualBox> aVirtualB /* Clean up allocated memory etc. */ if (pszPartitions) { - for (unsigned i = 0; i < partitions.cPartitions; i++) + for (unsigned i = 0; i < RawDescriptor.cPartDescs; i++) { - if (uPartitions & RT_BIT(partitions.aPartitions[i].uIndex)) - { - if (fRelative) - { -#ifdef RT_OS_LINUX - /* Free memory allocated above. */ - RTStrFree((char *)(void *)RawDescriptor.pPartitions[i].pszRawDevice); -#endif /* RT_OS_LINUX */ - } - } + /* Free memory allocated for relative device name. */ + if (fRelative && RawDescriptor.pPartDescs[i].pszRawDevice) + RTStrFree((char *)(void *)RawDescriptor.pPartDescs[i].pszRawDevice); + if (RawDescriptor.pPartDescs[i].pvPartitionData) + RTMemFree((void *)RawDescriptor.pPartDescs[i].pvPartitionData); } + if (RawDescriptor.pPartDescs) + RTMemFree(RawDescriptor.pPartDescs); } if (fRegister) @@ -1428,7 +1492,7 @@ static int CmdRenameVMDK(int argc, char **argv, ComPtr<IVirtualBox> aVirtualBox, vdInterfaceErrorCallbacks.cbSize = sizeof(VDINTERFACEERROR); vdInterfaceErrorCallbacks.enmInterface = VDINTERFACETYPE_ERROR; vdInterfaceErrorCallbacks.pfnError = handleVDError; - vdInterfaceErrorCallbacks.pfnMessage = NULL; + vdInterfaceErrorCallbacks.pfnMessage = handleVDMessage; int vrc = VDInterfaceAdd(&vdInterfaceError, "VBoxManage_IError", VDINTERFACETYPE_ERROR, &vdInterfaceErrorCallbacks, NULL, &pVDIfs); @@ -1510,7 +1574,7 @@ static int CmdConvertToRaw(int argc, char **argv, ComPtr<IVirtualBox> aVirtualBo vdInterfaceErrorCallbacks.cbSize = sizeof(VDINTERFACEERROR); vdInterfaceErrorCallbacks.enmInterface = VDINTERFACETYPE_ERROR; vdInterfaceErrorCallbacks.pfnError = handleVDError; - vdInterfaceErrorCallbacks.pfnMessage = NULL; + vdInterfaceErrorCallbacks.pfnMessage = handleVDMessage; int vrc = VDInterfaceAdd(&vdInterfaceError, "VBoxManage_IError", VDINTERFACETYPE_ERROR, &vdInterfaceErrorCallbacks, NULL, &pVDIfs); @@ -1675,7 +1739,7 @@ static int CmdConvertHardDisk(int argc, char **argv, ComPtr<IVirtualBox> aVirtua vdInterfaceErrorCallbacks.cbSize = sizeof(VDINTERFACEERROR); vdInterfaceErrorCallbacks.enmInterface = VDINTERFACETYPE_ERROR; vdInterfaceErrorCallbacks.pfnError = handleVDError; - vdInterfaceErrorCallbacks.pfnMessage = NULL; + vdInterfaceErrorCallbacks.pfnMessage = handleVDMessage; vrc = VDInterfaceAdd(&vdInterfaceError, "VBoxManage_IError", VDINTERFACETYPE_ERROR, &vdInterfaceErrorCallbacks, NULL, &pVDIfs); diff --git a/src/VBox/Frontends/VBoxManage/VBoxManageGuestCtrl.cpp b/src/VBox/Frontends/VBoxManage/VBoxManageGuestCtrl.cpp index ed734c6ab..228940973 100644 --- a/src/VBox/Frontends/VBoxManage/VBoxManageGuestCtrl.cpp +++ b/src/VBox/Frontends/VBoxManage/VBoxManageGuestCtrl.cpp @@ -1,4 +1,4 @@ -/* $Id: VBoxManageGuestCtrl.cpp 29193 2010-05-07 09:57:16Z vboxsync $ */ +/* $Id: VBoxManageGuestCtrl.cpp 29645 2010-05-18 15:41:46Z vboxsync $ */ /** @file * VBoxManage - The 'guestcontrol' command. */ @@ -30,6 +30,8 @@ #include <VBox/com/VirtualBox.h> #include <VBox/com/EventQueue.h> +#include <VBox/HostServices/GuestControlSvc.h> /* for PROC_STS_XXX */ + #include <VBox/log.h> #include <iprt/asm.h> #include <iprt/getopt.h> @@ -63,10 +65,11 @@ static volatile bool g_fExecCanceled = false; void usageGuestControl(void) { RTPrintf("VBoxManage guestcontrol execute <vmname>|<uuid>\n" - " <path to program> [--arguments \"<arguments>\"]\n" + " <path to program> --username <name>\n" + " [--password <password>]\n" + " [--arguments \"<arguments>\"]\n" " [--environment \"<NAME>=<VALUE> [<NAME>=<VALUE>]\"]\n" - " [--flags <flags>] [--timeout <msec>]\n" - " [--username <name> [--password <password>]]\n" + " [--flags <flags>] [--timeout <msec>]\n" " [--verbose] [--wait-for exit,stdout,stderr||]\n" "\n"); } @@ -84,6 +87,31 @@ static void execProcessSignalHandler(int iSignal) ASMAtomicWriteBool(&g_fExecCanceled, true); } +static const char *getStatus(ULONG uStatus) +{ + switch (uStatus) + { + case guestControl::PROC_STS_STARTED: + return "started"; + case guestControl::PROC_STS_TEN: + return "successfully terminated"; + case guestControl::PROC_STS_TES: + return "terminated by signal"; + case guestControl::PROC_STS_TEA: + return "abnormally aborted"; + case guestControl::PROC_STS_TOK: + return "timed out"; + case guestControl::PROC_STS_TOA: + return "timed out, hanging"; + case guestControl::PROC_STS_DWN: + return "killed"; + case guestControl::PROC_STS_ERROR: + return "error"; + default: + return "unknown"; + } +} + static int handleExecProgram(HandlerArg *a) { /* @@ -97,17 +125,14 @@ static int handleExecProgram(HandlerArg *a) uint32_t uFlags = 0; com::SafeArray <BSTR> args; com::SafeArray <BSTR> env; - Utf8Str Utf8StdIn; - Utf8Str Utf8StdOut; - Utf8Str Utf8StdErr; Utf8Str Utf8UserName; Utf8Str Utf8Password; uint32_t u32TimeoutMS = 0; - bool waitForExit = false; - bool waitForStdOut = false; - bool waitForStdErr = false; - bool verbose = false; - bool have_timeout = false; + bool fWaitForExit = false; + bool fWaitForStdOut = false; + bool fWaitForStdErr = false; + bool fVerbose = false; + bool fTimeout = false; /* Always use the actual command line as argv[0]. */ args.push_back(Bstr(Utf8Cmd)); @@ -199,7 +224,7 @@ static int handleExecProgram(HandlerArg *a) } else { - have_timeout = true; + fTimeout = true; ++i; } } @@ -210,16 +235,16 @@ static int handleExecProgram(HandlerArg *a) else { if (!strcmp(a->argv[i + 1], "exit")) - waitForExit = true; + fWaitForExit = true; else if (!strcmp(a->argv[i + 1], "stdout")) { - waitForExit = true; - waitForStdOut = true; + fWaitForExit = true; + fWaitForStdOut = true; } else if (!strcmp(a->argv[i + 1], "stderr")) { - waitForExit = true; - waitForStdErr = true; + fWaitForExit = true; + fWaitForStdErr = true; } else usageOK = false; @@ -228,7 +253,7 @@ static int handleExecProgram(HandlerArg *a) } else if (!strcmp(a->argv[i], "--verbose")) { - verbose = true; + fVerbose = true; } /** @todo Add fancy piping stuff here. */ else @@ -241,13 +266,9 @@ static int handleExecProgram(HandlerArg *a) if (!usageOK) return errorSyntax(USAGE_GUESTCONTROL, "Incorrect parameters"); - /* If a password was specified, check if we also got a user name. */ - if ( !Utf8Password.isEmpty() - && Utf8UserName.isEmpty()) - { + if (Utf8UserName.isEmpty()) return errorSyntax(USAGE_GUESTCONTROL, - "No user name for password specified!"); - } + "No user name specified!"); /* lookup VM. */ ComPtr<IMachine> machine; @@ -282,7 +303,7 @@ static int handleExecProgram(HandlerArg *a) ComPtr<IProgress> progress; ULONG uPID = 0; - if (verbose) + if (fVerbose) { if (u32TimeoutMS == 0) RTPrintf("Waiting for guest to start process ...\n"); @@ -294,15 +315,22 @@ static int handleExecProgram(HandlerArg *a) uint64_t u64StartMS = RTTimeMilliTS(); /* Execute the process. */ - CHECK_ERROR_BREAK(guest, ExecuteProcess(Bstr(Utf8Cmd), uFlags, - ComSafeArrayAsInParam(args), ComSafeArrayAsInParam(env), - Bstr(Utf8StdIn), Bstr(Utf8StdOut), Bstr(Utf8StdErr), - Bstr(Utf8UserName), Bstr(Utf8Password), u32TimeoutMS, - &uPID, progress.asOutParam())); - if (verbose) RTPrintf("Process '%s' (PID: %u) started\n", Utf8Cmd.raw(), uPID); - if (waitForExit) + rc = guest->ExecuteProcess(Bstr(Utf8Cmd), uFlags, + ComSafeArrayAsInParam(args), ComSafeArrayAsInParam(env), + Bstr(Utf8UserName), Bstr(Utf8Password), u32TimeoutMS, + &uPID, progress.asOutParam()); + if (FAILED(rc)) { - if (have_timeout) + ErrorInfo info(guest); + if (info.isFullAvailable()) + RTPrintf("ERROR: %ls (%Rhrc).\n", info.getText().raw(), info.getResultCode()); + break; + } + if (fVerbose) + RTPrintf("Process '%s' (PID: %u) started\n", Utf8Cmd.raw(), uPID); + if (fWaitForExit) + { + if (fTimeout) { /* Calculate timeout value left after process has been started. */ uint64_t u64Diff = RTTimeMilliTS() - u64StartMS; @@ -310,17 +338,17 @@ static int handleExecProgram(HandlerArg *a) if (u32TimeoutMS > u64Diff) /* Is timeout still bigger than current difference? */ { u32TimeoutMS = u32TimeoutMS - u64Diff; - if (verbose) + if (fVerbose) RTPrintf("Waiting for process to exit (%ums left) ...\n", u32TimeoutMS); } else { - if (verbose) + if (fVerbose) RTPrintf("No time left to wait for process!\n"); - } + } } - else if (verbose) - RTPrintf("Waiting for process to exit ...\n"); + else if (fVerbose) + RTPrintf("Waiting for process to exit ...\n"); /* setup signal handling if cancelable */ ASSERT(progress); @@ -339,33 +367,19 @@ static int handleExecProgram(HandlerArg *a) /* Wait for process to exit ... */ BOOL fCompleted = false; - ULONG cbOutputData = 0; - SafeArray<BYTE> aOutputData; while (SUCCEEDED(progress->COMGETTER(Completed(&fCompleted)))) { - /* - * because we want to get all the output data even if the process - * already ended, we first need to check whether there is some data - * left to output before checking the actual timeout and is-process-completed - * stuff. - */ - if (cbOutputData <= 0) - { - if (fCompleted) - break; + SafeArray<BYTE> aOutputData; + ULONG cbOutputData = 0; - if ( have_timeout - && RTTimeMilliTS() - u64StartMS > u32TimeoutMS + 5000) - { - progress->Cancel(); - break; - } - } + /* + * Some data left to output? + */ - if ( waitForStdOut - || waitForStdErr) + if ( fWaitForStdOut + || fWaitForStdErr) { - CHECK_ERROR_BREAK(guest, GetProcessOutput(uPID, 0 /* aFlags */, + CHECK_ERROR_BREAK(guest, GetProcessOutput(uPID, 0 /* aFlags */, u32TimeoutMS, _64K, ComSafeArrayAsOutParam(aOutputData))); cbOutputData = aOutputData.size(); if (cbOutputData > 0) @@ -391,6 +405,19 @@ static int handleExecProgram(HandlerArg *a) } } + if (cbOutputData <= 0) + { + if (fCompleted) + break; + + if ( fTimeout + && RTTimeMilliTS() - u64StartMS > u32TimeoutMS + 5000) + { + progress->Cancel(); + break; + } + } + /* process async cancelation */ if (g_fExecCanceled && !fCanceledAlready) { @@ -414,36 +441,27 @@ static int handleExecProgram(HandlerArg *a) } BOOL fCanceled; - CHECK_ERROR_RET(progress, COMGETTER(Canceled)(&fCanceled), rc); - if (fCanceled) + if (SUCCEEDED(progress->COMGETTER(Canceled)(&fCanceled)) && fCanceled) + if (fVerbose) RTPrintf("Process execution canceled!\n"); + + if (fCompleted) { - RTPrintf("Process execution canceled!\n"); - } - else - { - if (fCompleted) + LONG iRc = false; + CHECK_ERROR_RET(progress, COMGETTER(ResultCode)(&iRc), rc); + if (FAILED(iRc)) { - LONG iRc = false; - CHECK_ERROR_RET(progress, COMGETTER(ResultCode)(&iRc), rc); - if (FAILED(iRc)) - { - ComPtr<IVirtualBoxErrorInfo> execError; - rc = progress->COMGETTER(ErrorInfo)(execError.asOutParam()); - com::ErrorInfo info (execError); - RTPrintf("\n\nProcess error details:\n"); - GluePrintErrorInfo(info); - RTPrintf("\n"); - } - if (verbose) - { - ULONG uRetStatus, uRetExitCode, uRetFlags; - CHECK_ERROR_BREAK(guest, GetProcessStatus(uPID, &uRetExitCode, &uRetFlags, &uRetStatus)); - RTPrintf("Exit code=%u (Status=%u, Flags=%u)\n", uRetExitCode, uRetStatus, uRetFlags); - } + ComPtr<IVirtualBoxErrorInfo> execError; + rc = progress->COMGETTER(ErrorInfo)(execError.asOutParam()); + com::ErrorInfo info (execError); + RTPrintf("\n\nProcess error details:\n"); + GluePrintErrorInfo(info); + RTPrintf("\n"); } - else /* not completed yet? -> timeout */ + if (fVerbose) { - RTPrintf("Process timed out!\n"); + ULONG uRetStatus, uRetExitCode, uRetFlags; + CHECK_ERROR_BREAK(guest, GetProcessStatus(uPID, &uRetExitCode, &uRetFlags, &uRetStatus)); + RTPrintf("Exit code=%u (Status=%u [%s], Flags=%u)\n", uRetExitCode, uRetStatus, getStatus(uRetStatus), uRetFlags); } } } diff --git a/src/VBox/Frontends/VBoxManage/VBoxManageHelp.cpp b/src/VBox/Frontends/VBoxManage/VBoxManageHelp.cpp index 97c6801d9..a7736e0fa 100644 --- a/src/VBox/Frontends/VBoxManage/VBoxManageHelp.cpp +++ b/src/VBox/Frontends/VBoxManage/VBoxManageHelp.cpp @@ -1,4 +1,4 @@ -/* $Id: VBoxManageHelp.cpp 29364 2010-05-11 15:13:50Z vboxsync $ */ +/* $Id: VBoxManageHelp.cpp 29634 2010-05-18 13:41:15Z vboxsync $ */ /** @file * VBoxManage - help and other message output. */ @@ -47,6 +47,7 @@ void showLogo(void) void printUsage(USAGECATEGORY u64Cmd) { + bool fDumpOpts = false; #ifdef RT_OS_LINUX bool fLinux = true; #else @@ -85,6 +86,7 @@ void printUsage(USAGECATEGORY u64Cmd) if (u64Cmd == USAGE_DUMPOPTS) { + fDumpOpts = true; fLinux = true; fWin = true; fSolaris = true; @@ -154,6 +156,7 @@ void printUsage(USAGECATEGORY u64Cmd) " [--name <name>]\n" " [--ostype <ostype>]\n" " [--memory <memorysize in MB>]\n" + " [--pagefusion on|off]\n" " [--vram <vramsize in MB>]\n" " [--acpi on|off]\n" " [--ioapic on|off]\n" @@ -185,11 +188,12 @@ void printUsage(USAGECATEGORY u64Cmd) " [--biospxedebug on|off]\n" " [--boot<1-4> none|floppy|dvd|disk|net>]\n" " [--nic<1-N> none|null|nat|bridged|intnet" -#if defined(VBOX_WITH_NETFLT) /* RT_OS_LINUX || RT_OS_DARWIN */ +#if defined(VBOX_WITH_NETFLT) "|hostonly" #endif #ifdef VBOX_WITH_VDE - "|vde" + "|\n" + " vde" #endif "]\n" " [--nictype<1-N> Am79C970A|Am79C973" @@ -214,11 +218,11 @@ void printUsage(USAGECATEGORY u64Cmd) #ifdef VBOX_WITH_VDE " [--vdenet<1-N> <network>|default]\n" #endif - " [--natsettings<1-N> \"[<mtu>],[<socksnd>],[<sockrcv>],\n" - " [<tcpsnd>],[<tcprcv>]\"]\n" - " [--natpf<1-N> \"[<rulename>],tcp|udp,\n" - " [<hostip>],<hostport>,\n" - " [<guestip>],<guestport>\"]\n" + " [--natsettings<1-N> [<mtu>],[<socksnd>],\n" + " [<sockrcv>],[<tcpsnd>],\n" + " [<tcprcv>]]\n" + " [--natpf<1-N> [<rulename>],tcp|udp,[<hostip>],\n" + " <hostport>,[<guestip>],<guestport>]\n" " [--natpf<1-N> delete <rulename>]\n" " [--nattftpprefix<1-N> <prefix>]\n" " [--nattftpfile<1-N> <file>]\n" @@ -226,7 +230,8 @@ void printUsage(USAGECATEGORY u64Cmd) " [--natdnspassdomain<1-N> on|off]\n" " [--natdnsproxy<1-N> on|off]\n" " [--natdnshostresolver<1-N> on|off]\n" - " [--nataliasmode<1-N> default|[log],[proxyonly],[sameports]]\n" + " [--nataliasmode<1-N> default|[log],[proxyonly],\n" + " [sameports]]\n" " [--macaddress<1-N> auto|<mac>]\n" " [--mouse ps2|usb|usbtablet\n" " [--keyboard ps2|usb\n" @@ -269,11 +274,17 @@ void printUsage(USAGECATEGORY u64Cmd) } if (fFreeBSD) { - RTPrintf( "|oss" + /* Get the line break sorted when dumping all option variants. */ + if (fDumpOpts) + { + RTPrintf( "|\n" + " oss"); + } + else + RTPrintf( "|oss"); #ifdef VBOX_WITH_PULSE - "|pulse" + RTPrintf( "|pulse"); #endif - ); } if (fDarwin) { @@ -429,8 +440,9 @@ void printUsage(USAGECATEGORY u64Cmd) " --storagectl <name>\n" " --port <number>\n" " --device <number>\n" - " [--type dvddrive|hdd|fdd\n" - " --medium none|emptydrive|uuid|filename|host:<drive>]\n" + " [--type dvddrive|hdd|fdd]\n" + " [--medium none|emptydrive|\n" + " <uuid>|<filename>|host:<drive>]\n" " [--passthrough on|off]\n" " [--forceunmount]\n" "\n"); @@ -441,11 +453,11 @@ void printUsage(USAGECATEGORY u64Cmd) RTPrintf("VBoxManage storagectl <uuid|vmname>\n" " --name <name>\n" " [--add ide|sata|scsi|floppy|sas]\n" - " [--controller LSILogic|LSILogicSAS|BusLogic|IntelAHCI|\n" - " PIIX3|PIIX4|ICH6|I82078]\n" + " [--controller LSILogic|LSILogicSAS|BusLogic|\n" + " IntelAHCI|PIIX3|PIIX4|ICH6|I82078]\n" " [--sataideemulation<1-4> <1-30>]\n" " [--sataportcount <1-30>]\n" - " [--iobackend Buffered|Unbuffered]\n" + " [--hostiocache on|off]\n" " [--remove]\n" "\n"); } diff --git a/src/VBox/Frontends/VBoxManage/VBoxManageInfo.cpp b/src/VBox/Frontends/VBoxManage/VBoxManageInfo.cpp index aa68087f1..ecb74fa8e 100644 --- a/src/VBox/Frontends/VBoxManage/VBoxManageInfo.cpp +++ b/src/VBox/Frontends/VBoxManage/VBoxManageInfo.cpp @@ -1,4 +1,4 @@ -/* $Id: VBoxManageInfo.cpp 29117 2010-05-05 22:59:38Z vboxsync $ */ +/* $Id: VBoxManageInfo.cpp 29465 2010-05-14 11:59:31Z vboxsync $ */ /** @file * VBoxManage - The 'showvminfo' command and helper routines. */ @@ -228,6 +228,13 @@ HRESULT showVMInfo (ComPtr<IVirtualBox> virtualBox, else RTPrintf("Memory size: %uMB\n", memorySize); + BOOL fPageFusionEnabled; + rc = machine->COMGETTER(PageFusionEnabled)(&fPageFusionEnabled); + if (details == VMINFO_MACHINEREADABLE) + RTPrintf("pagefusion=\"%s\"\n", fPageFusionEnabled ? "on" : "off"); + else + RTPrintf("Page Fusion: %s\n", fPageFusionEnabled ? "on" : "off"); + ULONG vramSize; rc = machine->COMGETTER(VRAMSize)(&vramSize); if (details == VMINFO_MACHINEREADABLE) diff --git a/src/VBox/Frontends/VBoxManage/VBoxManageModifyVM.cpp b/src/VBox/Frontends/VBoxManage/VBoxManageModifyVM.cpp index a0602bccd..ec5623668 100644 --- a/src/VBox/Frontends/VBoxManage/VBoxManageModifyVM.cpp +++ b/src/VBox/Frontends/VBoxManage/VBoxManageModifyVM.cpp @@ -1,4 +1,4 @@ -/* $Id: VBoxManageModifyVM.cpp 29218 2010-05-07 14:52:27Z vboxsync $ */ +/* $Id: VBoxManageModifyVM.cpp 29465 2010-05-14 11:59:31Z vboxsync $ */ /** @file * VBoxManage - Implementation of modifyvm command. */ @@ -55,6 +55,7 @@ enum MODIFYVM_NAME = 1000, MODIFYVM_OSTYPE, MODIFYVM_MEMORY, + MODIFYVM_PAGEFUSION, MODIFYVM_VRAM, MODIFYVM_FIRMWARE, MODIFYVM_ACPI, @@ -163,6 +164,7 @@ static const RTGETOPTDEF g_aModifyVMOptions[] = { "--name", MODIFYVM_NAME, RTGETOPT_REQ_STRING }, { "--ostype", MODIFYVM_OSTYPE, RTGETOPT_REQ_STRING }, { "--memory", MODIFYVM_MEMORY, RTGETOPT_REQ_UINT32 }, + { "--pagefusion", MODIFYVM_PAGEFUSION, RTGETOPT_REQ_BOOL_ONOFF }, { "--vram", MODIFYVM_VRAM, RTGETOPT_REQ_UINT32 }, { "--firmware", MODIFYVM_FIRMWARE, RTGETOPT_REQ_STRING }, { "--acpi", MODIFYVM_ACPI, RTGETOPT_REQ_BOOL_ONOFF }, @@ -350,6 +352,12 @@ int handleModifyVM(HandlerArg *a) break; } + case MODIFYVM_PAGEFUSION: + { + CHECK_ERROR(machine, COMSETTER(PageFusionEnabled)(ValueUnion.f)); + break; + } + case MODIFYVM_VRAM: { CHECK_ERROR(machine, COMSETTER(VRAMSize)(ValueUnion.u32)); diff --git a/src/VBox/Frontends/VBoxManage/VBoxManageStorageController.cpp b/src/VBox/Frontends/VBoxManage/VBoxManageStorageController.cpp index d0e58643d..2f96a148d 100644 --- a/src/VBox/Frontends/VBoxManage/VBoxManageStorageController.cpp +++ b/src/VBox/Frontends/VBoxManage/VBoxManageStorageController.cpp @@ -1,4 +1,4 @@ -/* $Id: VBoxManageStorageController.cpp 28800 2010-04-27 08:22:32Z vboxsync $ */ +/* $Id: VBoxManageStorageController.cpp 29480 2010-05-14 15:24:19Z vboxsync $ */ /** @file * VBoxManage - The storage controller related commands. */ @@ -652,7 +652,7 @@ static const RTGETOPTDEF g_aStorageControllerOptions[] = { "--sataideemulation", 'e', RTGETOPT_REQ_UINT32 | RTGETOPT_FLAG_INDEX }, { "--sataportcount", 'p', RTGETOPT_REQ_UINT32 }, { "--remove", 'r', RTGETOPT_REQ_NOTHING }, - { "--iobackend", 'i', RTGETOPT_REQ_STRING }, + { "--hostiocache", 'i', RTGETOPT_REQ_STRING }, }; int handleStorageController(HandlerArg *a) @@ -662,7 +662,7 @@ int handleStorageController(HandlerArg *a) const char *pszCtl = NULL; const char *pszBusType = NULL; const char *pszCtlType = NULL; - const char *pszIoBackend = NULL; + const char *pszHostIOCache = NULL; ULONG satabootdev = ~0U; ULONG sataidedev = ~0U; ULONG sataportcount = ~0U; @@ -731,7 +731,7 @@ int handleStorageController(HandlerArg *a) case 'i': { - pszIoBackend = ValueUnion.psz; + pszHostIOCache = ValueUnion.psz; break; } @@ -920,26 +920,26 @@ int handleStorageController(HandlerArg *a) } } - if ( pszIoBackend + if ( pszHostIOCache && SUCCEEDED(rc)) { - ComPtr<IStorageController> ctl; + ComPtr<IStorageController> ctl; - CHECK_ERROR(machine, GetStorageControllerByName(Bstr(pszCtl), ctl.asOutParam())); + CHECK_ERROR(machine, GetStorageControllerByName(Bstr(pszCtl), ctl.asOutParam())); - if (!RTStrICmp(pszIoBackend, "buffered")) - { - CHECK_ERROR(ctl, COMSETTER(IoBackend)(IoBackendType_Buffered)); - } - else if (!RTStrICmp(pszIoBackend, "unbuffered")) - { - CHECK_ERROR(ctl, COMSETTER(IoBackend)(IoBackendType_Unbuffered)); - } - else - { - errorArgument("Invalid --type argument '%s'", pszIoBackend); - rc = E_FAIL; - } + if (!RTStrICmp(pszHostIOCache, "on")) + { + CHECK_ERROR(ctl, COMSETTER(UseHostIOCache)(TRUE)); + } + else if (!RTStrICmp(pszHostIOCache, "off")) + { + CHECK_ERROR(ctl, COMSETTER(UseHostIOCache)(FALSE)); + } + else + { + errorArgument("Invalid --hostiocache argument '%s'", pszHostIOCache); + rc = E_FAIL; + } } } diff --git a/src/VBox/Frontends/VBoxSDL/VBoxSDL.cpp b/src/VBox/Frontends/VBoxSDL/VBoxSDL.cpp index 0a276630d..5deff3153 100644 --- a/src/VBox/Frontends/VBoxSDL/VBoxSDL.cpp +++ b/src/VBox/Frontends/VBoxSDL/VBoxSDL.cpp @@ -99,23 +99,22 @@ using namespace com; struct PointerShapeChangeData { PointerShapeChangeData(BOOL aVisible, BOOL aAlpha, ULONG aXHot, ULONG aYHot, - ULONG aWidth, ULONG aHeight, const uint8_t *aShape) + ULONG aWidth, ULONG aHeight, ComSafeArrayIn(BYTE,pShape)) : visible(aVisible), alpha(aAlpha), xHot(aXHot), yHot(aYHot), - width(aWidth), height(aHeight), shape(NULL) + width(aWidth), height(aHeight) { // make a copy of the shape - if (aShape) + com::SafeArray <BYTE> aShape(ComSafeArrayInArg (pShape)); + size_t cbShapeSize = aShape.size(); + if (cbShapeSize > 0) { - uint32_t shapeSize = ((((aWidth + 7) / 8) * aHeight + 3) & ~3) + aWidth * 4 * aHeight; - shape = new uint8_t [shapeSize]; - if (shape) - memcpy((void *)shape, (void *)aShape, shapeSize); + shape.resize(cbShapeSize); + ::memcpy(shape.raw(), aShape.raw(), cbShapeSize); } } ~PointerShapeChangeData() { - if (shape) delete[] shape; } const BOOL visible; @@ -124,7 +123,7 @@ struct PointerShapeChangeData const ULONG yHot; const ULONG width; const ULONG height; - const uint8_t *shape; + com::SafeArray<BYTE> shape; }; enum TitlebarMode @@ -400,11 +399,11 @@ public: NS_DECL_ISUPPORTS STDMETHOD(OnMousePointerShapeChange)(BOOL visible, BOOL alpha, ULONG xHot, ULONG yHot, - ULONG width, ULONG height, BYTE *shape) + ULONG width, ULONG height, ComSafeArrayIn(BYTE, shape)) { PointerShapeChangeData *data; data = new PointerShapeChangeData(visible, alpha, xHot, yHot, width, height, - shape); + ComSafeArrayInArg(shape)); Assert(data); if (!data) return E_FAIL; @@ -688,12 +687,6 @@ static void show_usage() " --[no]hwvirtex Permit or deny the usage of VT-x/AMD-V\n" #endif "\n" - " --convertSettings Allow to auto-convert settings files\n" - " --convertSettingsBackup Allow to auto-convert settings files\n" - " but create backup copies before\n" - " --convertSettingsIgnore Allow to auto-convert settings files\n" - " but don't explicitly save the results\n" - "\n" "Key bindings:\n" " <hostkey> + f Switch to full screen / restore to previous view\n" " h Press ACPI power button\n" @@ -4435,15 +4428,16 @@ static void SetPointerShape(const PointerShapeChangeData *data) if (gpOffCursor) return; - if (data->shape) + if (data->shape.size() > 0) { bool ok = false; uint32_t andMaskSize = (data->width + 7) / 8 * data->height; uint32_t srcShapePtrScan = data->width * 4; - const uint8_t *srcAndMaskPtr = data->shape; - const uint8_t *srcShapePtr = data->shape + ((andMaskSize + 3) & ~3); + const uint8_t* shape = data->shape.raw(); + const uint8_t *srcAndMaskPtr = shape; + const uint8_t *srcShapePtr = shape + ((andMaskSize + 3) & ~3); #if 0 /* pointer debugging code */ diff --git a/src/VBox/Frontends/VBoxShell/vboxshell.py b/src/VBox/Frontends/VBoxShell/vboxshell.py index 241526354..5fe67ea42 100644 --- a/src/VBox/Frontends/VBoxShell/vboxshell.py +++ b/src/VBox/Frontends/VBoxShell/vboxshell.py @@ -37,7 +37,8 @@ class GuestMonitor: self.mach = mach def onMousePointerShapeChange(self, visible, alpha, xHot, yHot, width, height, shape): - print "%s: onMousePointerShapeChange: visible=%d" %(self.mach.name, visible) + print "%s: onMousePointerShapeChange: visible=%d shape=%d bytes" %(self.mach.name, visible,len(shape)) + def onMouseCapabilityChange(self, supportsAbsolute, supportsRelative, needsHostCursor): print "%s: onMouseCapabilityChange: supportsAbsolute = %d, supportsRelative = %d, needsHostCursor = %d" %(self.mach.name, supportsAbsolute, supportsRelative, needsHostCursor) @@ -159,6 +160,7 @@ def colored(string,color): return string if g_hasreadline: + import string class CompleterNG(rlcompleter.Completer): def __init__(self, dic, ctx): self.ctx = ctx @@ -169,11 +171,24 @@ if g_hasreadline: taken from: http://aspn.activestate.com/ASPN/Cookbook/Python/Recipe/496812 """ - if text == "": + if False and text == "": return ['\t',None][state] else: return rlcompleter.Completer.complete(self,text,state) + def canBeCommand(self, phrase, word): + spaceIdx = phrase.find(" ") + begIdx = readline.get_begidx() + firstWord = (spaceIdx == -1 or begIdx < spaceIdx) + if firstWord: + return True + if phrase.startswith('help'): + return True + return False + + def canBeMachine(self,phrase,word): + return not self.canBeCommand(phrase, word) + def global_matches(self, text): """ Compute matches when text is a simple name. @@ -183,25 +198,26 @@ if g_hasreadline: matches = [] n = len(text) + phrase = readline.get_line_buffer() - for list in [ self.namespace ]: - for word in list: - if word[:n] == text: - matches.append(word) - - + if self.canBeCommand(phrase,text): + for list in [ self.namespace ]: + for word in list: + if word[:n] == text: + matches.append(word) try: - for m in getMachines(self.ctx, False, True): - # although it has autoconversion, we need to cast - # explicitly for subscripts to work - word = re.sub("(?<!\\\\) ", "\\ ", str(m.name)) - if word[:n] == text: - matches.append(word) - word = str(m.id) - if word[0] == '{': - word = word[1:-1] - if word[:n] == text: - matches.append(word) + if self.canBeMachine(phrase,text): + for m in getMachines(self.ctx, False, True): + # although it has autoconversion, we need to cast + # explicitly for subscripts to work + word = re.sub("(?<!\\\\) ", "\\ ", str(m.name)) + if word[:n] == text: + matches.append(word) + word = str(m.id) + if word[0] == '{': + word = word[1:-1] + if word[:n] == text: + matches.append(word) except Exception,e: printErr(e) if g_verbose: @@ -265,9 +281,14 @@ def colCat(ctx,str): def colVm(ctx,vm): return colored(vm, 'blue') -def colPath(ctx,vm): - return colored(vm, 'green') +def colPath(ctx,p): + return colored(p, 'green') + +def colSize(ctx,m): + return colored(m, 'red') +def colSizeM(ctx,m): + return colored(str(m)+'M', 'red') def createVm(ctx,name,kind,base): mgr = ctx['mgr'] @@ -523,8 +544,11 @@ def ginfo(ctx,console, args): printSf(ctx,sf) def cmdExistingVm(ctx,mach,cmd,args): + session = None try: - session = ctx['global'].openMachineSession(mach.id) + vb = ctx['vb'] + session = ctx['mgr'].getSessionObject(vb) + vb.openExistingSession(session, mach.id) except Exception,e: printErr(ctx, "Session to '%s' not open: %s" %(mach.name,str(e))) if g_verbose: @@ -824,7 +848,7 @@ def execInGuest(ctx,console,args,env): # shall contain program name as argv[0] gargs = args print "executing %s with args %s" %(args[0], gargs) - (progress, pid) = guest.executeProcess(args[0], 0, gargs, env, "", "", "", user, passwd, tmo) + (progress, pid) = guest.executeProcess(args[0], 0, gargs, env, user, passwd, tmo) print "executed with pid %d" %(pid) if pid != 0: try: @@ -1665,25 +1689,25 @@ def listMediaCmd(ctx,args): else: verbose = False hdds = ctx['global'].getArray(ctx['vb'], 'hardDisks') - print "Hard disks:" + print colCat(ctx,"Hard disks:") for hdd in hdds: if hdd.state != ctx['global'].constants.MediumState_Created: hdd.refreshState() - print " %s (%s)%s %dM [logical %dM]" %(hdd.location, hdd.format, optId(verbose,hdd.id),asSize(hdd.size, True), asSize(hdd.logicalSize, False)) + print " %s (%s)%s %s [logical %s]" %(colPath(ctx,hdd.location), hdd.format, optId(verbose,hdd.id),colSizeM(ctx,asSize(hdd.size, True)), colSizeM(ctx,asSize(hdd.logicalSize, False))) dvds = ctx['global'].getArray(ctx['vb'], 'DVDImages') - print "CD/DVD disks:" + print colCat(ctx,"CD/DVD disks:") for dvd in dvds: if dvd.state != ctx['global'].constants.MediumState_Created: dvd.refreshState() - print " %s (%s)%s %dM" %(dvd.location, dvd.format,optId(verbose,hdd.id),asSize(hdd.size, True)) + print " %s (%s)%s %s" %(colPath(ctx,dvd.location), dvd.format,optId(verbose,hdd.id),colSizeM(ctx,asSize(hdd.size, True))) floppys = ctx['global'].getArray(ctx['vb'], 'floppyImages') - print "Floopy disks:" + print colCat(ctx,"Floppy disks:") for floppy in floppys: if floppy.state != ctx['global'].constants.MediumState_Created: floppy.refreshState() - print " %s (%s)%s %dM" %(floppy.location, floppy.format,optId(verbose,hdd.id), asSize(hdd.size, True)) + print " %s (%s)%s %s" %(colPath(ctx,floppy.location), floppy.format,optId(verbose,hdd.id), colSizeM(ctx,asSize(hdd.size, True))) return 0 @@ -2172,12 +2196,12 @@ def snapshotCmd(ctx,args): return 0 def natAlias(ctx, mach, nicnum, nat, args=[]): - """This command shows/alters NAT's alias settings. + """This command shows/alters NAT's alias settings. usage: nat <vm> <nicnum> alias [default|[log] [proxyonly] [sameports]] default - set settings to default values log - switch on alias loging proxyonly - switch proxyonly mode on - sameports - enforces NAT using the same ports + sameports - enforces NAT using the same ports """ alias = { 'log': 0x1, @@ -2187,12 +2211,12 @@ def natAlias(ctx, mach, nicnum, nat, args=[]): if len(args) == 1: first = 0 msg = '' - for aliasmode, aliaskey in alias.iteritems(): + for aliasmode, aliaskey in alias.iteritems(): if first == 0: first = 1 else: msg += ', ' - if int(nat.aliasMode) & aliaskey: + if int(nat.aliasMode) & aliaskey: msg += '{0}: {1}'.format(aliasmode, 'on') else: msg += '{0}: {1}'.format(aliasmode, 'off') @@ -2213,7 +2237,7 @@ def natSettings(ctx, mach, nicnum, nat, args): """This command shows/alters NAT settings. usage: nat <vm> <nicnum> settings [<mtu> [[<socsndbuf> <sockrcvbuf> [<tcpsndwnd> <tcprcvwnd>]]]] mtu - set mtu <= 16000 - socksndbuf/sockrcvbuf - sets amount of kb for socket sending/receiving buffer + socksndbuf/sockrcvbuf - sets amount of kb for socket sending/receiving buffer tcpsndwnd/tcprcvwnd - sets size of initial tcp sending/receiving window """ if len(args) == 1: @@ -2232,13 +2256,13 @@ def natSettings(ctx, mach, nicnum, nat, args): for i in range(2, len(args)): if not args[i].isdigit() or int(args[i]) < 8 or int(args[i]) > 1024: print 'invalid {0} parameter ({1} not in range [8-1024])'.format(i, args[i]) - return (1, None) + return (1, None) a = [args[1]] if len(args) < 6: - for i in range(2, len(args)): a.append(args[i]) + for i in range(2, len(args)): a.append(args[i]) for i in range(len(args), 6): a.append(0) else: - for i in range(2, len(args)): a.append(args[i]) + for i in range(2, len(args)): a.append(args[i]) #print a nat.setNetworkSettings(int(a[0]), int(a[1]), int(a[2]), int(a[3]), int(a[4])) return (0, None) @@ -2303,9 +2327,9 @@ def natTftp(ctx, mach, nicnum, nat, args): def natPortForwarding(ctx, mach, nicnum, nat, args): """This command shows/manages port-forwarding settings - usage: + usage: nat <vm> <nicnum> <pf> [ simple tcp|udp <hostport> <guestport>] - |[no_name tcp|udp <hostip> <hostport> <guestip> <guestport>] + |[no_name tcp|udp <hostip> <hostport> <guestip> <guestport>] |[ex tcp|udp <pf-name> <hostip> <hostport> <guestip> <guestport>] |[delete <pf-name>] """ @@ -2322,22 +2346,22 @@ def natPortForwarding(ctx, mach, nicnum, nat, args): proto = {'udp': 0, 'tcp': 1} pfcmd = { 'simple': { - 'validate': lambda: args[1] in pfcmd.keys() and args[2] in proto.keys() and len(args) == 5, + 'validate': lambda: args[1] in pfcmd.keys() and args[2] in proto.keys() and len(args) == 5, 'func':lambda: nat.addRedirect('', proto[args[2]], '', int(args[3]), '', int(args[4])) }, - 'no_name': { - 'validate': lambda: args[1] in pfcmd.keys() and args[2] in proto.keys() and len(args) == 7, + 'no_name': { + 'validate': lambda: args[1] in pfcmd.keys() and args[2] in proto.keys() and len(args) == 7, 'func': lambda: nat.addRedirect('', proto[args[2]], args[3], int(args[4]), args[5], int(args[6])) }, - 'ex': { - 'validate': lambda: args[1] in pfcmd.keys() and args[2] in proto.keys() and len(args) == 8, + 'ex': { + 'validate': lambda: args[1] in pfcmd.keys() and args[2] in proto.keys() and len(args) == 8, 'func': lambda: nat.addRedirect(args[3], proto[args[2]], args[4], int(args[5]), args[6], int(args[7])) }, 'delete': { 'validate': lambda: len(args) == 3, 'func': lambda: nat.removeRedirect(args[2]) } - } + } if not pfcmd[args[1]]['validate'](): print 'invalid port-forwarding or args of sub command ', args[1] @@ -2348,7 +2372,7 @@ def natPortForwarding(ctx, mach, nicnum, nat, args): return (0, None) def natNetwork(ctx, mach, nicnum, nat, args): - """This command shows/alters NAT network settings + """This command shows/alters NAT network settings usage: nat <vm> <nicnum> network [<network>] """ if len(args) == 1: @@ -2401,8 +2425,8 @@ def natCmd(ctx, args): cmdargs = [] for i in range(3, len(args)): cmdargs.append(args[i]) - - # @todo vvl if nicnum is missed but command is entered + + # @todo vvl if nicnum is missed but command is entered # use NAT func for every adapter on machine. func = args[3] rosession = 1 @@ -2414,7 +2438,7 @@ def natCmd(ctx, args): adapter = mach.getNetworkAdapter(nicnum) natEngine = adapter.natDriver - (rc, report) = natcommands[func](ctx, mach, nicnum, natEngine, cmdargs) + (rc, report) = natcommands[func](ctx, mach, nicnum, natEngine, cmdargs) if rosession == 0: if rc == 0: mach.saveSettings() diff --git a/src/VBox/Frontends/VirtualBox/nls/VirtualBox_da.ts b/src/VBox/Frontends/VirtualBox/nls/VirtualBox_da.ts index df7387b31..7ab79f0e6 100644 --- a/src/VBox/Frontends/VirtualBox/nls/VirtualBox_da.ts +++ b/src/VBox/Frontends/VirtualBox/nls/VirtualBox_da.ts @@ -401,7 +401,7 @@ <name>QIWizardPage</name> <message> <source>Use the <b>%1</b> button to go to the next page of the wizard and the <b>%2</b> button to return to the previous page. You can also press <b>%3</b> if you want to cancel the execution of this wizard.</p></source> - <translation type="unfinished"></translation> + <translation>Brug knappen <b>%1</b> for at gå til næste trin af guiden og <b>%2</b> for at gå til forrige trin. Du kan også bruge <b>%3</b> hvis du vil afbryde guiden.</p></translation> </message> </context> <context> @@ -412,7 +412,7 @@ </message> <message> <source>The download process has been canceled by the user.</source> - <translation type="unfinished"></translation> + <translation>Filhentning annulleret af bruger.</translation> </message> </context> <context> @@ -442,7 +442,7 @@ <name>UIDownloaderUserManual</name> <message> <source>Select folder to save User Manual to</source> - <translation type="unfinished"></translation> + <translation>Vælg folderen, hvor brugermanualen skal gemmes</translation> </message> </context> <context> @@ -584,116 +584,117 @@ p, li { white-space: pre-wrap; } <name>UIExportApplianceWzdPage1</name> <message> <source>Welcome to the Appliance Export Wizard!</source> - <translation type="unfinished">Denne guide hjælper dig med at eksportere et Prækonfigureret system!</translation> + <translation>Denne guide hjælper dig med at eksportere et Prækonfigureret system!</translation> </message> <message> <source><p>This wizard will guide you through the process of exporting an appliance.</p><p>%1</p><p>Please select the virtual machines that should be added to the appliance. You can select more than one. Please note that these machines have to be turned off before they can be exported.</p></source> - <translation type="unfinished"></translation> + <translation><p>Denne guide hjælper dig med at eksportere et Prækonfigureret system.</p><p>%1</p><p>Vælg en eller flere virtuelle maskiner, der skal tilføjes til det prækonfigurerede system. De virtuelle maskiner skal være inaktive før de kan eksporteres.</translation> </message> </context> <context> <name>UIExportApplianceWzdPage2</name> <message> <source>Here you can change additional configuration values of the selected virtual machines. You can modify most of the properties shown by double-clicking on the items.</source> - <translation type="unfinished">Her kan du tilpasse yderligere indstillinger for de valgte virtuelle maskiner. Du kan ændre de fleste af de viste egenskaber ved at dobbeltklikke på værdien.</translation> + <translation>Her kan du tilpasse yderligere indstillinger for de valgte virtuelle maskiner. Du kan ændre de fleste af de viste egenskaber ved at dobbeltklikke på værdien.</translation> </message> <message> <source>Appliance Export Settings</source> - <translation type="unfinished">Indstillinger for eksport af Prækonfigureret system</translation> + <translation>Indstillinger for eksport af Prækonfigureret system</translation> </message> </context> <context> <name>UIExportApplianceWzdPage3</name> <message> <source>Please specify the target for the OVF export. You can choose between a local file system export, uploading the OVF to the Sun Cloud service or an S3 storage server.</source> - <translation type="unfinished">Angiv destinationen for OVF-eksporten. Du kan vælge at eksportere til et lokalt filsystem eller sende OVF'en til Sun Cloud servicen eller en S3 lagerserver.</translation> + <translation>Angiv destinationen for OVF-eksporten. Du kan vælge at eksportere til et lokalt filsystem eller sende OVF'en til Sun Cloud servicen eller en S3 lagerserver.</translation> </message> <message> <source>&Local Filesystem </source> - <translation type="unfinished">&Lokalt filsystem</translation> + <translation>&Lokalt filsystem</translation> </message> <message> <source>Sun &Cloud</source> - <translation type="unfinished">Sun &Cloud</translation> + <translation>Sun &Cloud</translation> </message> <message> <source>&Simple Storage System (S3)</source> - <translation type="unfinished">&Simple Storage System (S3)</translation> + <translation>&Simple Storage System (S3)</translation> </message> <message> <source>Appliance Export Settings</source> - <translation type="unfinished">Indstillinger for eksport af Prækonfigureret system</translation> + <translation>Indstillinger for eksport af Prækonfigureret system</translation> </message> </context> <context> <name>UIExportApplianceWzdPage4</name> <message> <source>&Username:</source> - <translation type="unfinished">Br&ugernavn:</translation> + <translation>Br&ugernavn:</translation> </message> <message> <source>&Password:</source> - <translation type="unfinished">Kodeord:</translation> + <translation>Kodeord:</translation> </message> <message> <source>&Hostname:</source> - <translation type="unfinished">Værtsnavn:</translation> + <translation>Værtsnavn:</translation> </message> <message> <source>&Bucket:</source> - <translation type="unfinished">&Bucket:</translation> + <translatorcomment>I hvilken sammenhæng?</translatorcomment> + <translation>&Bucket:</translation> </message> <message> <source>&File:</source> - <translation type="unfinished">&Fil:</translation> + <translation>&Fil:</translation> </message> <message> <source>Write in legacy OVF 0.9 format for compatibility with other virtualization products.</source> - <translation type="unfinished">Gem i OVF 0.9 format for kompatibilitet med andre virtualiseringsprogrammer.</translation> + <translation>Gem i OVF 0.9 format for kompatibilitet med andre virtualiseringsprogrammer.</translation> </message> <message> <source>&Write legacy OVF 0.9</source> - <translation type="unfinished">Gem i OVF 0.9 format</translation> + <translation>Gem i OVF 0.9 format</translation> </message> <message> <source>Appliance Export Settings</source> - <translation type="unfinished">Indstillinger for eksport af Prækonfigureret system</translation> + <translation>Indstillinger for eksport af Prækonfigureret system</translation> </message> <message> <source>Appliance</source> - <translation type="unfinished">Prækonfigureret system</translation> + <translation>Prækonfigureret system</translation> </message> <message> <source>Select a file to export into</source> - <translation type="unfinished">Vælg den fil, der skal eksporteres til</translation> + <translation>Vælg den fil, der skal eksporteres til</translation> </message> <message> <source>Open Virtualization Format (%1)</source> - <translation type="unfinished">Open Virtualization Format (%1)</translation> + <translation>Open Virtualization Format (%1)</translation> </message> <message> <source>Please choose a filename to export the OVF to.</source> - <translation type="unfinished">Angiv et filnavn til OVF-eksporten.</translation> + <translation>Angiv et filnavn til OVF-eksporten.</translation> </message> <message> <source>Please complete the additional fields like the username, password and the bucket, and provide a filename for the OVF target.</source> - <translation type="unfinished">Udfyld de øvrige felter såsom brugernavn, kodeord og bucket. Afslut med at angive et filnavn til OVF-eksporten.</translation> + <translation>Udfyld de øvrige felter såsom brugernavn, kodeord og bucket. Afslut med at angive et filnavn til OVF-eksporten.</translation> </message> <message> <source>Please complete the additional fields like the username, password, hostname and the bucket, and provide a filename for the OVF target.</source> - <translation type="unfinished">Udfyld de øvrige felter såsom brugernavn, kodeord, værtsnavn og bucket. Afslut med at angive et filnavn til OVF-eksporten.</translation> + <translation>Udfyld de øvrige felter såsom brugernavn, kodeord, værtsnavn og bucket. Afslut med at angive et filnavn til OVF-eksporten.</translation> </message> <message> <source>Checking files ...</source> - <translation type="unfinished">Kontrollerer filer ...</translation> + <translation>Kontrollerer filer ...</translation> </message> <message> <source>Removing files ...</source> - <translation type="unfinished">Fjerner filer ...</translation> + <translation>Fjerner filer ...</translation> </message> <message> <source>Exporting Appliance ...</source> - <translation type="unfinished">Eksporterer Prækonfigureret system ...</translation> + <translation>Eksporterer Prækonfigureret system ...</translation> </message> </context> <context> @@ -835,71 +836,71 @@ p, li { white-space: pre-wrap; } <name>UIFirstRunWzdPage1</name> <message> <source>Welcome to the First Run Wizard!</source> - <translation type="unfinished">Velkommen til 1.gang-guiden!</translation> + <translation>Velkommen til 1.gang-guiden!</translation> </message> <message> <source><p>You have started a newly created virtual machine for the first time. This wizard will help you to perform the steps necessary for installing an operating system of your choice onto this virtual machine.</p><p>%1</p></source> - <translation type="unfinished"></translation> + <translation><p>Du har startet en nyoprettet virtuel maskine for første gang. Denne guide hjælper dig med at installere et operativsystem efter eget valg i denne virtuelle maskine.</p><p>%1</p></translation> </message> <message> <source><p>You have started a newly created virtual machine for the first time. This wizard will help you to perform the steps necessary for booting an operating system of your choice on the virtual machine.</p><p>Note that you will not be able to install an operating system into this virtual machine right now because you did not attach any hard disk to it. If this is not what you want, you can cancel the execution of this wizard, select <b>Settings</b> from the <b>Machine</b> menu of the main VirtualBox window to access the settings dialog of this machine and change the hard disk configuration.</p><p>%1</p></source> - <translation type="unfinished"></translation> + <translation><p>Du har startet en nyoprettet virtuel maskine for første gang. Denne guide hjælper dig med at udføre de trin, der er nødvendige for at starte et operativsystem i den virtuelle maskine.</p><p>Bemærk at du ikke kan installere et operativsystem i denne virtuelle maskine endnu, da du ikke har tilsluttet en harddisk til den. Hvis du ønsker at tilføje en harddisk, så skal du afbryde denne guide og vælge <b>Indstillinger</b> fra menuen <b>Maskine</b> i VirtualBox' hovedvindue for at ændre konfigurationen af harddiske.</p><p>%1</p></translation> </message> </context> <context> <name>UIFirstRunWzdPage2</name> <message> <source><p>Select the media which contains the setup program of the operating system you want to install. This media must be bootable, otherwise the setup program will not be able to start.</p></source> - <translation type="unfinished"><p>Vælg mediet, som indeholder opsætningsprogrammet til det ønskede operativsystem. Det skal være muligt at starte op på mediet for at opsætningsprogrammet kan køre.</p></translation> + <translation><p>Vælg mediet, som indeholder opsætningsprogrammet til det ønskede operativsystem. Det skal være muligt at starte op på mediet for at opsætningsprogrammet kan køre.</p></translation> </message> <message> <source><p>Select the media that contains the operating system you want to work with. This media must be bootable, otherwise the operating system will not be able to start.</p></source> - <translation type="unfinished"><p>Vælg mediet, som indeholder operativsystemet du vil anvende. Det skal være muligt at starte op på mediet for at operativsystem kan starte.</p></translation> + <translation><p>Vælg mediet, som indeholder operativsystemet du vil anvende. Det skal være muligt at starte op på mediet for at operativsystem kan starte.</p></translation> </message> <message> <source>Media Source</source> - <translation type="unfinished">Mediekilde</translation> + <translation>Mediekilde</translation> </message> <message> <source>Select Installation Media</source> - <translation type="unfinished">Vælg installationsmedie</translation> + <translation>Vælg installationsmedie</translation> </message> </context> <context> <name>UIFirstRunWzdPage3</name> <message> <source><p>You have selected the following media to boot from:</p></source> - <translation type="unfinished"><p>Du har valgt at starte op på følgende medie:</p></translation> + <translation><p>Du har valgt at starte op på følgende medie:</p></translation> </message> <message> <source><p>You have selected the following media to boot an operating system from:</p></source> - <translation type="unfinished"><p>Du har valgt at starte et operativsystem fra følgende medie:</p></translation> + <translation><p>Du har valgt at starte et operativsystem fra følgende medie:</p></translation> </message> <message> <source><p>If the above is correct, press the <b>Finish</b> button. Once you press it, the selected media will be temporarily mounted on the virtual machine and the machine will start execution.</p><p>Please note that when you close the virtual machine, the specified media will be automatically unmounted and the boot device will be set back to the first hard disk.</p><p>Depending on the type of the setup program, you may need to manually unmount (eject) the media after the setup program reboots the virtual machine, to prevent the installation process from starting again. You can do this by selecting the corresponding <b>Unmount...</b> action in the <b>Devices</b> menu.</p></source> - <translation type="unfinished"><p>Tryk på knappen <b>Færdig</b>, hvis ovenstående er korrekt. Når du trykker, vil det valgte medie midlertidigt blive monteret i den virtuelle maskine, som derefter vil starte op.</p><p>Bemærk at når du lukker den virtuelle maskine, vil det angivne medie automatisk blive afmonteret og opstartsenheden vil igen være den første harddisk.</p><p>Afhængig af dit installationsprogram kan det være nødvendigt manuelt at afmontere mediet efter installationsprogrammet har genstartet den virtuelle maskine for at undgå at installationsprogrammet starter forfra. Du kan gøre dette ved at vælge <b>Afmontér...</b> i menuen <b>Enheder</b>.</p></translation> + <translation><p>Tryk på knappen <b>Færdig</b>, hvis ovenstående er korrekt. Når du trykker, vil det valgte medie midlertidigt blive monteret i den virtuelle maskine, som derefter vil starte op.</p><p>Bemærk at når du lukker den virtuelle maskine, vil det angivne medie automatisk blive afmonteret og opstartsenheden vil igen være den første harddisk.</p><p>Afhængig af dit installationsprogram kan det være nødvendigt manuelt at afmontere mediet efter installationsprogrammet har genstartet den virtuelle maskine for at undgå at installationsprogrammet starter forfra. Du kan gøre dette ved at vælge <b>Afmontér...</b> i menuen <b>Enheder</b>.</p></translation> </message> <message> <source><p>If the above is correct, press the <b>Finish</b> button. Once you press it, the selected media will be mounted on the virtual machine and the machine will start execution.</p></source> - <translation type="unfinished"><p>Tryk <b>Færdig</b> hvis ovenstående er korrekt. Det valgte medie vil så blive monteret på den virtuelle maskine og maskinen vil begynde afviklingen.</p></translation> + <translation><p>Tryk <b>Færdig</b> hvis ovenstående er korrekt. Det valgte medie vil så blive monteret på den virtuelle maskine og maskinen vil begynde afviklingen.</p></translation> </message> <message> <source>Summary</source> - <translation type="unfinished">Oversigt</translation> + <translation>Oversigt</translation> </message> <message> <source>CD/DVD-ROM Device</source> - <translation type="unfinished">CD/DVD-ROM drev</translation> + <translation>CD/DVD-ROM drev</translation> </message> <message> <source>Type</source> <comment>summary</comment> - <translation type="unfinished">Type</translation> + <translation>Type</translation> </message> <message> <source>Source</source> <comment>summary</comment> - <translation type="unfinished">Kilde</translation> + <translation>Kilde</translation> </message> </context> <context> @@ -969,30 +970,30 @@ p, li { white-space: pre-wrap; } <name>UIImportApplianceWzdPage1</name> <message> <source>Select an appliance to import</source> - <translation type="unfinished">Vælg det Prækonfigurerede system, der skal importeres</translation> + <translation>Vælg det Prækonfigurerede system, der skal importeres</translation> </message> <message> <source>Open Virtualization Format (%1)</source> - <translation type="unfinished">Open Virtualization Format (%1)</translation> + <translation>Open Virtualization Format (%1)</translation> </message> <message> <source>Welcome to the Appliance Import Wizard!</source> - <translation type="unfinished">Denne guide hjælper dig med at importere et Prækonfigureret system!</translation> + <translation>Denne guide hjælper dig med at importere et Prækonfigureret system!</translation> </message> <message> <source><p>This wizard will guide you through importing an appliance.</p><p>%1</p><p>VirtualBox currently supports importing appliances saved in the Open Virtualization Format (OVF). To continue, select the file to import below:</p></source> - <translation type="unfinished"></translation> + <translation><p>Denne guide hjælper dig med at importere et Prækonfigureret system.</p><p>%1</p><p>VirtualBox understøtter Open Virtualization Format (OVF). For at fortsætte, vælg filen herunder:</p></translation> </message> </context> <context> <name>UIImportApplianceWzdPage2</name> <message> <source>These are the virtual machines contained in the appliance and the suggested settings of the imported VirtualBox machines. You can change many of the properties shown by double-clicking on the items and disable others using the check boxes below.</source> - <translation type="unfinished">Disse virtuelle maskiner og deres konfiguration er en del af det Prækonfigurerede system og kan importeres til VirtualBox. Du kan ændre de fleste af de viste egenskaber ved at dobbeltklikke på værdierne og deaktivere andre ved hjælp af afkrydsningsfelterne.</translation> + <translation>Disse virtuelle maskiner og deres konfiguration er en del af det Prækonfigurerede system og kan importeres til VirtualBox. Du kan ændre de fleste af de viste egenskaber ved at dobbeltklikke på værdierne og deaktivere andre ved hjælp af afkrydsningsfelterne.</translation> </message> <message> <source>Appliance Import Settings</source> - <translation type="unfinished">Indstillinger for import af Prækonfigureret system</translation> + <translation>Indstillinger for import af Prækonfigureret system</translation> </message> </context> <context> @@ -1034,56 +1035,56 @@ p, li { white-space: pre-wrap; } <name>UIMachineLogic</name> <message> <source>VirtualBox OSE</source> - <translation type="unfinished">VirtualBox OSE</translation> + <translation>VirtualBox OSE</translation> </message> <message> <source> EXPERIMENTAL build %1r%2 - %3</source> - <translation type="unfinished">EKSPERIMENTEL version %1r%2 - %3</translation> + <translation>EKSPERIMENTEL version %1r%2 - %3</translation> </message> </context> <context> <name>UIMiniProcessWidgetAdditions</name> <message> <source>Cancel</source> - <translation type="unfinished"></translation> + <translation>Annullér</translation> </message> <message> <source>Cancel the VirtualBox Guest Additions CD image download</source> - <translation type="unfinished">Afbryd hentningen af CD'en med VirtualBox Gæstetilføjelser</translation> + <translation>Afbryd hentningen af CD'en med VirtualBox Gæstetilføjelser</translation> </message> <message> <source>Downloading the VirtualBox Guest Additions CD image from <nobr><b>%1</b>...</nobr></source> - <translation type="unfinished">Henter CD'en med VirtualBox Gæstetilføjelser fra <nobr><b>%1</b>...</nobr></translation> + <translation>Henter CD'en med VirtualBox Gæstetilføjelser fra <nobr><b>%1</b>...</nobr></translation> </message> </context> <context> <name>UIMiniProcessWidgetUserManual</name> <message> <source>Cancel</source> - <translation type="unfinished"></translation> + <translation>Annullér</translation> </message> <message> <source>Cancel the VirtualBox User Manual download</source> - <translation type="unfinished"></translation> + <translation>Afbryd hentningen af brugermanual til VirtualBox</translation> </message> <message> <source>Downloading the VirtualBox User Manual</source> - <translation type="unfinished"></translation> + <translation>Henter brugermanual til VirtualBox</translation> </message> <message> <source>Downloading the VirtualBox User Manual <nobr><b>%1</b>...</nobr></source> - <translation type="unfinished"></translation> + <translation>Henter brugermanual til VirtualBox <nobr><b>%1</b>...</nobr></translation> </message> </context> <context> <name>UIMultiScreenLayout</name> <message> <source>Virtual Screen %1</source> - <translation type="unfinished"></translation> + <translation>Virtuel skærm %1</translation> </message> <message> <source>Use Host Screen %1</source> - <translation type="unfinished"></translation> + <translation>Brug værtsskærm %1</translation> </message> </context> <context> @@ -1205,103 +1206,103 @@ p, li { white-space: pre-wrap; } <name>UINewHDWzdPage1</name> <message> <source>Welcome to the Create New Virtual Disk Wizard!</source> - <translation type="unfinished">Denne guide hjælper dig med at oprette en ny virtuel disk!</translation> + <translation>Denne guide hjælper dig med at oprette en ny virtuel disk!</translation> </message> <message> <source><p>This wizard will help you to create a new virtual hard disk for your virtual machine.</p><p>%1</p></source> - <translation type="unfinished"></translation> + <translation><p>Denne guide hjælper dig med at oprette en ny virtuel disk til din virtuelle maskine.</p><p>%1</p></translation> </message> </context> <context> <name>UINewHDWzdPage2</name> <message> <source><p>Select the type of virtual hard disk you want to create.</p><p>A <b>dynamically expanding storage</b> initially occupies a very small amount of space on your physical hard disk. It will grow dynamically (up to the size specified) as the Guest OS claims disk space.</p><p>A <b>fixed-size storage</b> does not grow. It is stored in a file of approximately the same size as the size of the virtual hard disk. The creation of a fixed-size storage may take a long time depending on the storage size and the write performance of your harddisk.</p></source> - <translation type="unfinished"><p>Vælg en allokeringsstrategi for din virtuelle harddisk.</p><p><b>Dynamisk udvidelse</b> optager kun lidt plads i starten, men vokser dynamisk (op til den angivne størrelse i takt med at gæsteoperativsystemet allokerer plads.</p><p><b>Fast størrelse</b> vokser aldrig. Pladsen allokeres på forhånd i en fil af samme størrelse som den virtuelle harddisk. Oprettelsen af denne type harddisk kan tage lang tid afhængig af den valgte størrelse og skrivehastigheden på din fysiske harddisk.</p></translation> + <translation><p>Vælg en allokeringsstrategi for din virtuelle harddisk.</p><p><b>Dynamisk udvidelse</b> optager kun lidt plads i starten, men vokser dynamisk op til den angivne størrelse i takt med at gæsteoperativsystemet allokerer plads.</p><p><b>Fast størrelse</b> vokser aldrig. Pladsen allokeres på forhånd i en fil af samme størrelse som den virtuelle harddisk. Oprettelsen af denne type harddisk kan tage lang tid afhængig af den valgte størrelse og skrivehastigheden på din fysiske harddisk.</p></translation> </message> <message> <source>Storage Type</source> - <translation type="unfinished">Allokeringsstrategi</translation> + <translation>Allokeringsstrategi</translation> </message> <message> <source>&Dynamically expanding storage</source> - <translation type="unfinished">&Dynamisk udvidelse</translation> + <translation>&Dynamisk udvidelse</translation> </message> <message> <source>&Fixed-size storage</source> - <translation type="unfinished">&Fast størrelse</translation> + <translation>&Fast størrelse</translation> </message> <message> <source>Hard Disk Storage Type</source> - <translation type="unfinished">Allokeringsstrategi</translation> + <translation>Allokeringsstrategi</translation> </message> </context> <context> <name>UINewHDWzdPage3</name> <message> <source><p>Press the <b>Select</b> button to select the location of a file to store the hard disk data or type a file name in the entry field.</p></source> - <translation type="unfinished"><p>Klik på <b>Vælg</b> for at vælge placeringen af filen, som harddisken gemmes i eller indtast et filnavn i feltet.</p></translation> + <translation><p>Klik på <b>Vælg</b> for at vælge placeringen af filen, som harddisken gemmes i eller indtast et filnavn i feltet.</p></translation> </message> <message> <source>&Location</source> - <translation type="unfinished">P&lacering</translation> + <translation>P&lacering</translation> </message> <message> <source><p>Select the size of the virtual hard disk in megabytes. This size will be reported to the Guest OS as the maximum size of this hard disk.</p></source> - <translation type="unfinished"><p>Angiv størrelsen af den virtuelle harddisk i megabytes. Gæsteoperativsystemet vil se denne værdi som harddiskens maksimale størrelse.</p></translation> + <translation><p>Angiv størrelsen af den virtuelle harddisk i megabytes. Gæsteoperativsystemet vil se denne værdi som harddiskens maksimale størrelse.</p></translation> </message> <message> <source>&Size</source> - <translation type="unfinished">&Størrelse</translation> + <translation>&Størrelse</translation> </message> <message> <source>Virtual Disk Location and Size</source> - <translation type="unfinished">Placering og størrelse af virtuel disk</translation> + <translation>Placering og størrelse af virtuel disk</translation> </message> <message> <source>Select a file for the new hard disk image file</source> - <translation type="unfinished">Vælg et filnavn til det nye harddisk-aftryk</translation> + <translation>Vælg et filnavn til det nye harddisk-aftryk</translation> </message> <message> <source>Hard disk images (*.vdi)</source> - <translation type="unfinished">Harddisk-aftryk (*.vdi)</translation> + <translation>Harddisk-aftryk (*.vdi)</translation> </message> <message> <source><nobr>%1 (%2 B)</nobr></source> - <translation type="unfinished"></translation> + <translation><nobr>%1 (%2 B)</nobr></translation> </message> </context> <context> <name>UINewHDWzdPage4</name> <message> <source>You are going to create a new virtual hard disk with the following parameters:</source> - <translation type="unfinished">Du er ved at oprette en ny virtuel harddisk med følgende egenskaber:</translation> + <translation>Du er ved at oprette en ny virtuel harddisk med følgende egenskaber:</translation> </message> <message> <source>Summary</source> - <translation type="unfinished">Oversigt</translation> + <translation>Oversigt</translation> </message> <message> <source>%1 B</source> - <translation type="unfinished"></translation> + <translation>%1 B</translation> </message> <message> <source>Type</source> <comment>summary</comment> - <translation type="unfinished">Type</translation> + <translation>Type</translation> </message> <message> <source>Location</source> <comment>summary</comment> - <translation type="unfinished">Placering</translation> + <translation>Placering</translation> </message> <message> <source>Size</source> <comment>summary</comment> - <translation type="unfinished">Størrelse</translation> + <translation>Størrelse</translation> </message> <message> <source>If the above settings are correct, press the <b>%1</b> button. Once you press it, a new hard disk will be created.</source> - <translation type="unfinished"></translation> + <translation>Tryk <b>%1</b>, hvis ovenstående indstillinger er korrekte. Når du trykker vil den nye harddisk blive oprettet.</translation> </message> </context> <context> @@ -1436,125 +1437,125 @@ p, li { white-space: pre-wrap; } <name>UINewVMWzdPage1</name> <message> <source>Welcome to the New Virtual Machine Wizard!</source> - <translation type="unfinished">Denne guide hjælper dig med at oprette en ny virtuel maskine!</translation> + <translation>Denne guide hjælper dig med at oprette en ny virtuel maskine!</translation> </message> <message> <source><p>This wizard will guide you through the steps that are necessary to create a new virtual machine for VirtualBox.</p><p>%1</p></source> - <translation type="unfinished"></translation> + <translation><p>Denne guide hjælper dig igennem de trin, der kræves for at oprette en ny virtuel maskine i VirtualBox.</p><p>%1</p></translation> </message> </context> <context> <name>UINewVMWzdPage2</name> <message> <source><p>Enter a name for the new virtual machine and select the type of the guest operating system you plan to install onto the virtual machine.</p><p>The name of the virtual machine usually indicates its software and hardware configuration. It will be used by all VirtualBox components to identify your virtual machine.</p></source> - <translation type="unfinished"><p>Indtast navnet på den nye virtuelle maskine og vælg typen af operativsystem du planlægger at installere på den.</p><p>Navnet på den virtuelle maskine bør indikere dens software- og hardware-konfiguration, da det vil blive brugt af alle VirtualBox' komponenter til at identificere din virtuelle maskine.</p></translation> + <translation><p>Indtast navnet på den nye virtuelle maskine og vælg typen af operativsystem du planlægger at installere på den.</p><p>Navnet på den virtuelle maskine bør indikere dens software- og hardware-konfiguration, da det vil blive brugt af alle VirtualBox' komponenter til at identificere din virtuelle maskine.</p></translation> </message> <message> <source>N&ame</source> - <translation type="unfinished">N&avn</translation> + <translation>N&avn</translation> </message> <message> <source>OS &Type</source> - <translation type="unfinished">OS &type</translation> + <translation>OS &type</translation> </message> <message> <source>VM Name and OS Type</source> - <translation type="unfinished">VM-navn og OS-type</translation> + <translation>VM-navn og OS-type</translation> </message> </context> <context> <name>UINewVMWzdPage3</name> <message> <source><p>Select the amount of base memory (RAM) in megabytes to be allocated to the virtual machine.</p></source> - <translation type="unfinished"><p>Vælg størrelsen af hukommelsen (RAM) i megabytes, der skal tildeles den virtuelle maskine.</p></translation> + <translation><p>Vælg størrelsen af hukommelsen (RAM) i megabytes, der skal tildeles den virtuelle maskine.</p></translation> </message> <message> <source>Base &Memory Size</source> - <translation type="unfinished">Størrelse på huko&mmelse</translation> + <translation>Størrelse på huko&mmelse</translation> </message> <message> <source>MB</source> - <translation type="unfinished">MB</translation> + <translation>MB</translation> </message> <message> <source>Memory</source> - <translation type="unfinished">Hukommelse</translation> + <translation>Hukommelse</translation> </message> <message> <source>The recommended base memory size is <b>%1</b> MB.</source> - <translation type="unfinished">Anbefalet størrelse på hukommelsen er <b>%1</b> MB.</translation> + <translation>Anbefalet størrelse på hukommelsen er <b>%1</b> MB.</translation> </message> <message> <source>MB</source> <comment>size suffix MBytes=1024 KBytes</comment> - <translation type="unfinished">MB</translation> + <translation>MB</translation> </message> </context> <context> <name>UINewVMWzdPage4</name> <message> <source><p>Select a hard disk image to be used as the boot hard disk of the virtual machine. You can either create a new hard disk using the <b>New</b> button or select an existing hard disk image from the drop-down list or by pressing the <b>Existing</b> button (to invoke the Virtual Media Manager dialog).</p><p>If you need a more complicated hard disk setup, you can also skip this step and attach hard disks later using the VM Settings dialog.</p></source> - <translation type="unfinished"><p>Vælg det harddisk-aftryk, som den virtuelle maskine skal starte op fra. Du kan enten oprette en ny harddisk ved hjælp af knappen <b>Ny</b> eller vælge et eksisterende harddisk-aftryk fra rullegardinmenuen eller ved at klikke på knappen <b>Eksisterende</b> (starter Virtuel diskhåndtering).</p><p>Har du brug for en mere avanceret harddisk-opsætning, kan du springe dette trin over og montere dine harddiske senere i <i>Indstillinger for VM</i></p></translation> + <translation><p>Vælg det harddisk-aftryk, som den virtuelle maskine skal starte op fra. Du kan enten oprette en ny harddisk ved hjælp af knappen <b>Ny</b> eller vælge et eksisterende harddisk-aftryk fra rullegardinmenuen eller ved at klikke på knappen <b>Eksisterende</b> (starter Virtuel diskhåndtering).</p><p>Har du brug for en mere avanceret harddisk-opsætning, kan du springe dette trin over og montere dine harddiske senere i <i>Indstillinger for VM</i></p></translation> </message> <message> <source>Boot Hard &Disk (Primary Master)</source> - <translation type="unfinished">Opstarts&disk (Primær master)</translation> + <translation>Opstarts&disk (Primær master)</translation> </message> <message> <source>&Create new hard disk</source> - <translation type="unfinished">Opret ny harddisk</translation> + <translation>Opret ny harddisk</translation> </message> <message> <source>&Use existing hard disk</source> - <translation type="unfinished">Br&ug eksisterende harddisk</translation> + <translation>Br&ug eksisterende harddisk</translation> </message> <message> <source>Virtual Hard Disk</source> - <translation type="unfinished">Virtuel harddisk</translation> + <translation>Virtuel harddisk</translation> </message> <message> <source>The recommended size of the boot hard disk is <b>%1</b> MB.</source> - <translation type="unfinished">Anbefalet størrelse på opstartsharddisken er <b>%1</b> MB.</translation> + <translation>Anbefalet størrelse på opstartsharddisken er <b>%1</b> MB.</translation> </message> </context> <context> <name>UINewVMWzdPage5</name> <message> <source><p>You are going to create a new virtual machine with the following parameters:</p></source> - <translation type="unfinished"><p>Du er ved at oprette en ny virtuel maskine med følgende egenskaber:</p></translation> + <translation><p>Du er ved at oprette en ny virtuel maskine med følgende egenskaber:</p></translation> </message> <message> <source>Summary</source> - <translation type="unfinished">Oversigt</translation> + <translation>Oversigt</translation> </message> <message> <source>Name</source> <comment>summary</comment> - <translation type="unfinished">Navn</translation> + <translation>Navn</translation> </message> <message> <source>OS Type</source> <comment>summary</comment> - <translation type="unfinished">OS type</translation> + <translation>OS type</translation> </message> <message> <source>Base Memory</source> <comment>summary</comment> - <translation type="unfinished">Hukommelse</translation> + <translation>Hukommelse</translation> </message> <message> <source>MB</source> <comment>size suffix MBytes=1024KBytes</comment> - <translation type="unfinished">MB</translation> + <translation>MB</translation> </message> <message> <source>Boot Hard Disk</source> <comment>summary</comment> - <translation type="unfinished">Opstartsdisk</translation> + <translation>Opstartsdisk</translation> </message> <message> <source><p>If the above is correct press the <b>%1</b> button. Once you press it, a new virtual machine will be created. </p><p>Note that you can alter these and all other setting of the created virtual machine at any time using the <b>Settings</b> dialog accessible through the menu of the main window.</p></source> - <translation type="unfinished"></translation> + <translation>Tryk <b>%1</b>, hvis ovenstående er korrekt. Når du trykker vil en ny virtuel maskine blive oprettet. </p><p>Du kan altid ændre disse og alle øvrige indstillinger for den oprettede virtuelle maskine via menuen <b>Indstillinger</b> i hovedvinduet.</p></translation> </message> </context> <context> @@ -1681,12 +1682,12 @@ p, li { white-space: pre-wrap; } <message> <source>MB</source> <comment>size suffix MBytes=1024 KBytes</comment> - <translation type="unfinished">MB</translation> + <translation>MB</translation> </message> <message> <source>MB</source> <comment>size suffix MBytes=1024KBytes</comment> - <translation type="unfinished">MB</translation> + <translation>MB</translation> </message> </context> <context> @@ -2249,48 +2250,48 @@ p, li { white-space: pre-wrap; } </message> <message> <source>Dock Icon</source> - <translation type="unfinished"></translation> + <translation>Dok-ikon</translation> </message> <message> <source>Show Application Icon</source> - <translation type="unfinished"></translation> + <translation>Vis programikon</translation> </message> <message> <source>Show Monitor Preview</source> - <translation type="unfinished"></translation> + <translation>Vis monitor miniature</translation> </message> <message> <source><br><nobr><b>Adapter %1 (%2)</b>: %3 cable %4</nobr></source> <comment>Network adapters tooltip</comment> - <translation type="unfinished"></translation> + <translation><br><nobr><b>Netkort %1 (%2)</b>: %3 kabel %4</nobr></translation> </message> <message> <source>ACPI Sh&utdown</source> - <translation type="unfinished"></translation> + <translation>ACPI Nedl&ukning</translation> </message> <message> <source>&View</source> - <translation type="unfinished"></translation> + <translation>&Vis</translation> </message> <message> <source>Preview Monitor %1</source> - <translation type="unfinished"></translation> + <translation>Monitor miniature %1</translation> </message> <message> <source>No CD/DVD devices attached to that VM</source> - <translation type="unfinished"></translation> + <translation>Ingen CD/DVD-drev tilsluttet den virtuelle maskine</translation> </message> <message> <source>No floppy devices attached to that VM</source> - <translation type="unfinished"></translation> + <translation>Ingen diskettedrev tilsluttet den virtuelle maskine</translation> </message> <message> <source>No USB Devices Connected</source> - <translation type="unfinished"></translation> + <translation>Ingen USB-enheder tilsluttet</translation> </message> <message> <source>No supported devices connected to the host PC</source> - <translation type="unfinished">Ingen understøttede enheder forbundet til værtsmaskinen</translation> + <translation>Ingen understøttede enheder forbundet til værtsmaskinen</translation> </message> </context> <context> @@ -2453,11 +2454,11 @@ p, li { white-space: pre-wrap; } </message> <message> <source>Reset Host Key</source> - <translation type="unfinished"></translation> + <translation>Nulstil værtstast</translation> </message> <message> <source>Resets the key used as a Host Key in the VM window.</source> - <translation type="unfinished"></translation> + <translation>Nulstiller valget af værtstast til standardvalget.</translation> </message> </context> <context> @@ -3893,81 +3894,82 @@ p, li { white-space: pre-wrap; } <message> <source>Screens</source> <comment>details report</comment> - <translation type="unfinished"></translation> + <translation>Skærme</translation> </message> <message> <source>VDE network, '%1'</source> <comment>details report (network)</comment> - <translation type="unfinished"></translation> + <translation>VDE netværk, '%1'</translation> </message> <message> <source>SAS</source> <comment>StorageBus</comment> - <translation type="unfinished"></translation> + <translation>SAS</translation> </message> <message> <source>VDE Adapter</source> <comment>NetworkAttachmentType</comment> - <translation type="unfinished"></translation> + <translation>VDE-adapter</translation> </message> <message> <source>LsiLogic SAS</source> <comment>StorageControllerType</comment> - <translation type="unfinished"></translation> + <translation>LsiLogic SAS</translation> </message> <message> <source>^(?:(?:(\d+)(?:\s?(B|KB|MB|GB|TB|PB))?)|(?:(\d*)%1(\d{1,2})(?:\s?(KB|MB|GB|TB|PB))))$</source> <comment>regexp for matching ####[.##] B|KB|MB|GB|TB|PB, %1=decimal point</comment> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <source>B</source> <comment>size suffix Bytes</comment> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <source>KB</source> <comment>size suffix KBytes=1024 Bytes</comment> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <source>MB</source> <comment>size suffix MBytes=1024 KBytes</comment> - <translation type="unfinished">MB</translation> + <translation>MB</translation> </message> <message> <source>GB</source> <comment>size suffix GBytes=1024 MBytes</comment> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <source>TB</source> <comment>size suffix TBytes=1024 GBytes</comment> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <source>PB</source> <comment>size suffix PBytes=1024 TBytes</comment> - <translation type="unfinished"></translation> + <translation></translation> </message> <message> <source>Enabled</source> <comment>nested paging</comment> - <translation type="unfinished"></translation> + <translation>Aktiv</translation> </message> <message> <source>Disabled</source> <comment>nested paging</comment> - <translation type="unfinished"></translation> + <translation>Deaktiveret</translation> </message> <message> <source>Nested Paging</source> - <translation type="unfinished">Nested Paging</translation> + <translation>Nested Paging</translation> </message> <message> <source>Shareable</source> <comment>DiskType</comment> - <translation type="unfinished"></translation> + <translatorcomment>I tvivl om kontekst</translatorcomment> + <translation>Delt</translation> </message> </context> <context> @@ -5177,51 +5179,51 @@ p, li { white-space: pre-wrap; } </message> <message> <source><p>VT-x/AMD-V hardware acceleration is not available on your system. Your 64-bit guest will fail to detect a 64-bit CPU and will not be able to boot.</source> - <translation type="unfinished"></translation> + <translation><p>VT-x/AMD-V hardware-acceleration er ikke tilgængelig i dit system. Din 64-bit gæst vil ikke se en 64-bit CPU og kan ikke starte op.</translation> </message> <message> <source><p>VT-x/AMD-V hardware acceleration is not available on your system. Certain guests (e.g. OS/2 and QNX) require this feature and will fail to boot without it.</p></source> - <translation type="unfinished"></translation> + <translation><p>VT-x/AMD-V hardware-acceleration er ikke tilgængelig i dit system. Visse gæster (såsom OS/2 og QNX) kræver denne facilitet og kan derfor ikke starte uden.</p></translation> </message> <message> <source><p>Deleting the snapshot %1 will temporarily need more disk space. In the worst case the size of image %2 will grow by %3, however on this filesystem there is only %4 free.</p><p>Running out of disk space during the merge operation can result in corruption of the image and the VM configuration, i.e. loss of the VM and its data.</p><p>You may continue with deleting the snapshot at your own risk.</p></source> - <translation type="unfinished"></translation> + <translation><p>Sletning af øjebliksbilledet %1 vil midlertidigt kræve mere diskplads. I værste fald vil størrelsen af %2 vokse med %3, men der er kun %4 ledigt i filsystemet.</p><p>Løber du tør for diskplads under konsolideringen risikerer du at korrumpere øjebliksbilledet og dets VM-konfiguration, dvs du mister både VM'en og dens data.</p><p>Du kan fortsætte med sletningen af øjebliksbilledet på eget ansvar.</p></translation> </message> <message> <source><p>Could not change the guest screen to this host screen due to insufficient guest video memory.</p><p>You should configure the virtual machine to have at least <b>%1</b> of video memory.</p></source> - <translation type="unfinished"></translation> + <translation><p>Kunne ikke forbinde gæstens skærm til denne værtsskærm på grund af for lidt grafikhukommelse i gæsten.</p><p>Du bør konfigure den virtuelle maskine til at have en grafikhukommelse på mindst <b>%1</b>.</p></translation> </message> <message> <source><p>Could not change the guest screen to this host screen due to insufficient guest video memory.</p><p>You should configure the virtual machine to have at least <b>%1</b> of video memory.</p><p>Press <b>Ignore</b> to switch the screen anyway or press <b>Cancel</b> to cancel the operation.</p></source> - <translation type="unfinished"></translation> + <translation><p>Kunne ikke forbinde gæstens skærm til denne værtsskærm på grund af for lidt grafikhukommelse i gæsten.</p><p>Du bør konfigure den virtuelle maskine til at have en grafikhukommelse på mindst <b>%1</b>.</p><p>Tryk <b>Ignorer</b> for at forsøge at skifte alligevel eller tryk <b>Annullér</b> for at afbryde.</p></translation> </message> <message> <source><p>Can not switch the guest display to fullscreen mode. You have more virtual screens configured than physical screens are attached to your host.</p><p>Please either lower the virtual screens in your VM configuration or attach additional screens to your host.</p></source> - <translation type="unfinished"></translation> + <translation><p>Kan ikke ændre gæsteskærmen til fuldskærm, da du har konfigureret flere virtuelle skærme end der er fysiske skærme tilsluttet din vært.</p><p>Du kan enten formindske antallet af virtuelle skærme i din VM-konfiguration eller tilslutte yderligere skærme til din vært</p></translation> </message> <message> <source><p>Can not switch the guest display to seamless mode. You have more virtual screens configured than physical screens are attached to your host.</p><p>Please either lower the virtual screens in your VM configuration or attach additional screens to your host.</p></source> - <translation type="unfinished"></translation> + <translation><p>Kan ikke ændre gæsteskærmen til rammefri tilstand, da du har konfigureret flere virtuelle skærme end der er fysiske skærme tilsluttet din vært.</p><p>Du kan enten formindske antallet af virtuelle skærme i din VM-konfiguration eller tilslutte yderligere skærme til din vært</p></translation> </message> <message> <source><p>Could not find the VirtualBox User Manual <nobr><b>%1</b>.</nobr></p><p>Do you wish to download this file from the Internet?</p></source> - <translation type="unfinished"></translation> + <translation><p>Kunne ikke finde VirtualBox' brugermanual <nobr><b>%1</b>.</nobr></p><p>Ønsker du at hente denne fil fra internettet?</p></translation> </message> <message> <source><p>Are you sure you want to download the VirtualBox User Manual from <nobr><a href="%1">%2</a></nobr> (size %3 bytes)?</p></source> - <translation type="unfinished"></translation> + <translation><p>Er du sikker på at du vil hente VirtualBox' brugermanual fra <nobr><a href="%1">%2</a></nobr> (størrelse %3 bytes)?</p></translation> </message> <message> <source><p>Failed to download the VirtualBox User Manual from <nobr><a href="%1">%2</a>.</nobr></p><p>%3</p></source> - <translation type="unfinished"></translation> + <translation><p>Kunne ikke hente VirtualBox' brugermanual fra <nobr><a href="%1">%2</a>.</nobr></p><p>%3</p></translation> </message> <message> <source><p>The VirtualBox User Manual has been successfully downloaded from <nobr><a href="%1">%2</a></nobr> and saved locally as <nobr><b>%3</b>.</nobr></p></source> - <translation type="unfinished"></translation> + <translation><p>VirtualBox' brugermanual blev hentet fra <nobr><a href="%1">%2</a></nobr> og gemt lokalt som <nobr><b>%3</b>.</nobr></p></translation> </message> <message> <source><p>The VirtualBox User Manual has been successfully downloaded from <nobr><a href="%1">%2</a></nobr> but can't be saved locally as <nobr><b>%3</b>.</nobr></p><p>Please choose another location for that file.</p></source> - <translation type="unfinished"></translation> + <translation><p>VirtualBox' brugermanual blev hentet fra <nobr><a href="%1">%2</a></nobr> men kunne ikke gemmes lokalt som <nobr><b>%3</b>.</nobr></p><p>Vælg venligtst en anden placering til filen.</p></translation> </message> </context> <context> @@ -6396,15 +6398,15 @@ p, li { white-space: pre-wrap; } </message> <message> <source>Mo&nitor Count:</source> - <translation type="unfinished"></translation> + <translation>Mo&nitor antal:</translation> </message> <message> <source>Controls the amount of virtual monitors provided to the virtual machine.</source> - <translation type="unfinished"></translation> + <translation>Styrer antallet af virtuelle monitorer tildelt den virtuelle maskine.</translation> </message> <message> <source><qt>%1</qt></source> - <translation type="unfinished"></translation> + <translation><qt>%1</qt></translation> </message> </context> <context> @@ -6483,7 +6485,7 @@ p, li { white-space: pre-wrap; } </message> <message> <source>you have enabled a USB HID (Human Interface Device). This will not work unless USB emulation is also enabled. This will be done automatically when you accept the VM Settings by pressing the OK button.</source> - <translation type="unfinished"></translation> + <translation>du har tilsluttet en USB HID (Human Interface Device). Den vil ikke virke medmindre USB emulering er aktiveret. Dette vil ske automatisk når du accepterer VM-indstillingerne ved at trykke OK.</translation> </message> </context> <context> @@ -6885,27 +6887,27 @@ p, li { white-space: pre-wrap; } </message> <message> <source>Allows to use host I/O caching capabilities.</source> - <translation type="unfinished"></translation> + <translation>Tillader værten at bruge sit I/O mellemlager.</translation> </message> <message> <source>Use host I/O cache</source> - <translation type="unfinished"></translation> + <translation>Brug I/O mellemlager</translation> </message> <message> <source>Add SAS Controller</source> - <translation type="unfinished"></translation> + <translation>Tilføj SAS styreenhed</translation> </message> <message> <source>SAS Controller</source> - <translation type="unfinished"></translation> + <translation>SAS styreenhed</translation> </message> <message> <source>Storage Controller</source> - <translation type="unfinished"></translation> + <translation>Lagringsstyreenhed</translation> </message> <message> <source>Storage Controller 1</source> - <translation type="unfinished"></translation> + <translation>Lagringsstyreenhed 1</translation> </message> </context> <context> @@ -7454,23 +7456,23 @@ p, li { white-space: pre-wrap; } </message> <message> <source>If checked, the RTC device will report the time in UTC, otherwise in local (host) time. Unix usually expects the hardware clock to be set to UTC.</source> - <translation type="unfinished"></translation> + <translation>Hvis markeret, vil uret bruge UTC som tidszone - hvis ikke bruges lokal (vært) tid. Unix forventer normalt at hardware-uret er sat til UTC.</translation> </message> <message> <source>Hardware clock in &UTC time</source> - <translation type="unfinished"></translation> + <translation>Hardware-ur i &UTC time</translation> </message> <message> <source>Controls the number of virtual CPUs in the virtual machine. You need hardware virtualization support on your host system to use more than one virtual CPU.</source> - <translation type="unfinished"></translation> + <translation>Styrer antallet af virtuelle CPU'er i den virtuelle maskine.Der kræves understøttelse af hardware-virtualisering på værtssystemet for at kunne bruge mere end én virtuel CPU.</translation> </message> <message> <source>If checked, an absolute pointing device (a USB tablet) will be supported. Otherwise, only a standard PS/2 mouse will be emulated.</source> - <translation type="unfinished"></translation> + <translation>Hvis markeret, understøttes en "absolut" pegeenhed (såsom en USB tablet). Hvis ikke vil kun en standard PS/2 mus blive emuleret.</translation> </message> <message> <source>Enable &absolute pointing device</source> - <translation type="unfinished"></translation> + <translation>Aktiver &absolut pegeenhed</translation> </message> </context> <context> diff --git a/src/VBox/Frontends/VirtualBox/nls/VirtualBox_fr.ts b/src/VBox/Frontends/VirtualBox/nls/VirtualBox_fr.ts index db0f62cca..3ae5a0d74 100644 --- a/src/VBox/Frontends/VirtualBox/nls/VirtualBox_fr.ts +++ b/src/VBox/Frontends/VirtualBox/nls/VirtualBox_fr.ts @@ -26,7 +26,7 @@ <message> <source>Oracle Corporation</source> <comment>Comma-separated list of translators</comment> - <translation>Martin d'Allens, Jean-Jacques Sarton, Oracle Corporation</translation> + <translation>Martin d'Allens, Jean-Jacques Sarton, Oracle Corporation</translation> </message> </context> <context> @@ -1336,7 +1336,7 @@ And the size is not necessarily "in megabytes", the slider chooses the </message> <message> <source>Switch to seamless desktop integration mode</source> - <translation>Utiliser le bureau intégré</translation> + <translation>Utiliser le bureau intégré</translation> </message> <message> <source>Indicates whether the keyboard is captured by the guest OS (<img src=:/hostkey_captured_16px.png/>) or not (<img src=:/hostkey_16px.png/>).</source> @@ -1407,7 +1407,7 @@ And the size is not necessarily "in megabytes", the slider chooses the </message> <message> <source>Shows the currently assigned Host key.<br>This key, when pressed alone, toggles the keyboard and mouse capture state. It can also be used in combination with other keys to quickly perform actions from the main menu.</source> - <translation>Affiche la touche hôte qui est configurée. <br>Appuyer sur cette touche inverse la capture du clavier et de la souris. En combinaison avec d'autres touches elle peu aussi servir de raccourci pour les actions du menu principal.</translation> + <translation>Affiche la touche hôte qui est configurée. <br>Appuyer sur cette touche inverse la capture du clavier et de la souris. En combinaison avec d'autres touches elle peut aussi servir de raccourci pour les actions du menu principal.</translation> </message> <message> <source>Indicates the status of the hardware virtualization features used by this virtual machine:<br><nobr><b>%1:</b>&nbsp;%2</nobr><br><nobr><b>%3:</b>&nbsp;%4</nobr></source> @@ -1958,7 +1958,7 @@ And the size is not necessarily "in megabytes", the slider chooses the </message> <message> <source>Use manual configuration for this host-only network adapter.</source> - <translation>Utiliser la configuration manuelle pour cette interface du réseau privé hôte.</translation> + <translation>Utiliser la configuration manuelle pour cette interface de réseau privé hôte.</translation> </message> <message> <source>&IPv4 Address:</source> @@ -2090,17 +2090,17 @@ And the size is not necessarily "in megabytes", the slider chooses the <source>Name</source> <comment>details report</comment> <translatorcomment>In French we need spaces at the end of many of these entries of "details report" because they are followed by a colon.</translatorcomment> - <translation>Nom</translation> + <translation>Nom </translation> </message> <message> <source>OS Type</source> <comment>details report</comment> - <translation>Type d'OS</translation> + <translation>Type d'OS </translation> </message> <message> <source>Base Memory</source> <comment>details report</comment> - <translation>Mémoire vive</translation> + <translation>Mémoire vive </translation> </message> <message> <source>General</source> @@ -2110,17 +2110,17 @@ And the size is not necessarily "in megabytes", the slider chooses the <message> <source>Video Memory</source> <comment>details report</comment> - <translation>Mémoire vidéo</translation> + <translation>Mémoire vidéo </translation> </message> <message> <source>Boot Order</source> <comment>details report</comment> - <translation>Ordre d'amorçage</translation> + <translation>Ordre d'amorçage </translation> </message> <message> <source>ACPI</source> <comment>details report</comment> - <translation>ACPI</translation> + <translation>ACPI </translation> </message> <message> <source>IO APIC</source> @@ -2160,7 +2160,7 @@ And the size is not necessarily "in megabytes", the slider chooses the <message> <source>Adapter %1</source> <comment>details report (network)</comment> - <translation>Carte %1</translation> + <translation>Carte %1 </translation> </message> <message> <source>Disabled</source> @@ -2175,7 +2175,7 @@ And the size is not necessarily "in megabytes", the slider chooses the <message> <source>Device Filters</source> <comment>details report (USB)</comment> - <translation>Filtres</translation> + <translation>Filtres </translation> </message> <message> <source>%1 (%2 active)</source> @@ -2416,7 +2416,7 @@ And the size is not necessarily "in megabytes", the slider chooses the <message> <source>Port %1</source> <comment>details report (serial ports)</comment> - <translation>Port série %1</translation> + <translation>Port série %1 </translation> </message> <message> <source>Disabled</source> @@ -2446,7 +2446,7 @@ And the size is not necessarily "in megabytes", the slider chooses the <message> <source>Shared Folders</source> <comment>details report</comment> - <translation>Dossiers partagés</translation> + <translation>Dossiers partagés </translation> </message> <message> <source>Disconnected</source> @@ -2471,12 +2471,12 @@ And the size is not necessarily "in megabytes", the slider chooses the <message> <source>VT-x/AMD-V</source> <comment>details report</comment> - <translation>VT-x/AMD-V</translation> + <translation>VT-x/AMD-V </translation> </message> <message> <source>PAE/NX</source> <comment>details report</comment> - <translation>PAE/NX</translation> + <translation>PAE/NX </translation> </message> <message> <source>Enabled</source> @@ -2501,17 +2501,17 @@ And the size is not necessarily "in megabytes", the slider chooses the <message> <source>Host Driver</source> <comment>details report (audio)</comment> - <translation>Pilote hôte</translation> + <translation>Pilote hôte </translation> </message> <message> <source>Controller</source> <comment>details report (audio)</comment> - <translation>Contrôleur</translation> + <translation>Contrôleur </translation> </message> <message> <source>Port %1</source> <comment>details report (parallel ports)</comment> - <translation>Port %1</translation> + <translation>Port %1 </translation> </message> <message> <source>Disabled</source> @@ -2521,7 +2521,7 @@ And the size is not necessarily "in megabytes", the slider chooses the <message> <source>Parallel Ports</source> <comment>details report</comment> - <translation>Ports parallèles</translation> + <translation>Ports parallèles </translation> </message> <message> <source>USB</source> @@ -2531,7 +2531,7 @@ And the size is not necessarily "in megabytes", the slider chooses the <message> <source>Shared Folder</source> <comment>DeviceType</comment> - <translation>Dossier partagé</translation> + <translation>Dossier partagé </translation> </message> <message> <source>IDE</source> @@ -2666,7 +2666,7 @@ And the size is not necessarily "in megabytes", the slider chooses the <message> <source>3D Acceleration</source> <comment>details report</comment> - <translation>Accélération 3D</translation> + <translation>Accélération 3D </translation> </message> <message> <source>Enabled</source> @@ -2691,7 +2691,7 @@ And the size is not necessarily "in megabytes", the slider chooses the <message> <source>Nested Paging</source> <comment>details report</comment> - <translation>Pagination imbriquée</translation> + <translation>Pagination imbriquée </translation> </message> <message> <source>Enabled</source> @@ -2706,7 +2706,7 @@ And the size is not necessarily "in megabytes", the slider chooses the <message> <source>Internal network, '%1'</source> <comment>details report (network)</comment> - <translation>Réseau interne, '%1'</translation> + <translation>Réseau interne, '%1' </translation> </message> <message> <source>SCSI</source> @@ -2751,12 +2751,12 @@ And the size is not necessarily "in megabytes", the slider chooses the <message> <source>Bridged adapter, %1</source> <comment>details report (network)</comment> - <translation>Pont avec l'interface %1</translation> + <translation>Pont avec l'interface %1 </translation> </message> <message> <source>Host-only adapter, '%1'</source> <comment>details report (network)</comment> - <translation>Réseau privé hôte, '%1'</translation> + <translation>Réseau privé hôte, '%1' </translation> </message> <message> <source>Bridged Adapter</source> @@ -2771,34 +2771,34 @@ And the size is not necessarily "in megabytes", the slider chooses the <message> <source><nobr>%1 MB</nobr></source> <comment>details report</comment> - <translation><nobr>%1 Mo</nobr></translation> + <translation><nobr>%1 Mo</nobr> </translation> </message> <message> <source>Processor(s)</source> <comment>details report</comment> - <translation>Nombre de processeurs</translation> + <translation>Nombre de processeurs </translation> </message> <message> <source><nobr>%1</nobr></source> <comment>details report</comment> - <translation><nobr>%1</nobr></translation> + <translation><nobr>%1</nobr> </translation> </message> <message> <source>System</source> <comment>details report</comment> - <translation>Système</translation> + <translation>Système </translation> </message> <message> <source>Remote Display Server Port</source> <comment>details report (VRDP Server)</comment> <translatorcomment>Again, Remote Desktop</translatorcomment> - <translation>Port du bureau à distance</translation> + <translation>Port du bureau à distance </translation> </message> <message> <source>Remote Display Server</source> <comment>details report (VRDP Server)</comment> <translatorcomment>Again, Remote Desktop</translatorcomment> - <translation>Serveur du bureau à distance (RDP)</translation> + <translation>Serveur du bureau à distance (RDP) </translation> </message> <message> <source>Disabled</source> @@ -2828,7 +2828,7 @@ And the size is not necessarily "in megabytes", the slider chooses the <message> <source>2D Video Acceleration</source> <comment>details report</comment> - <translation>Accélération 2D</translation> + <translation>Accélération 2D </translation> </message> <message> <source>Not Attached</source> @@ -2863,17 +2863,17 @@ And the size is not necessarily "in megabytes", the slider chooses the <message> <source>Device %1</source> <comment>StorageBusDevice</comment> - <translation>Périphérique %1</translation> + <translation>Périphérique %1 </translation> </message> <message> <source>IDE Primary Master</source> <comment>New Storage UI : Slot Name</comment> - <translation>Maître primaire IDE</translation> + <translation>Maître primaire IDE </translation> </message> <message> <source>IDE Primary Slave</source> <comment>New Storage UI : Slot Name</comment> - <translation>Esclave primaire IDE</translation> + <translation>Esclave primaire IDE </translation> </message> <message> <source>IDE Secondary Master</source> @@ -2883,22 +2883,22 @@ And the size is not necessarily "in megabytes", the slider chooses the <message> <source>IDE Secondary Slave</source> <comment>New Storage UI : Slot Name</comment> - <translation>Esclave secondaire IDE</translation> + <translation>Esclave secondaire IDE </translation> </message> <message> <source>SATA Port %1</source> <comment>New Storage UI : Slot Name</comment> - <translation>Port SATA %1</translation> + <translation>Port SATA %1 </translation> </message> <message> <source>SCSI Port %1</source> <comment>New Storage UI : Slot Name</comment> - <translation>Port SCSI %1</translation> + <translation>Port SCSI %1 </translation> </message> <message> <source>Floppy Device %1</source> <comment>New Storage UI : Slot Name</comment> - <translation>Lecteur disquette %1</translation> + <translation>Lecteur disquette %1 </translation> </message> <message> <source>I82078</source> @@ -2913,12 +2913,12 @@ And the size is not necessarily "in megabytes", the slider chooses the <message> <source>Host Drive '%1'</source> <comment>medium</comment> - <translation>Lecteur de l'hôte « %1 »</translation> + <translation>Lecteur de l'hôte « %1 » </translation> </message> <message> <source>Host Drive %1 (%2)</source> <comment>medium</comment> - <translation>Lecteur de l'hôte %1 (%2)</translation> + <translation>Lecteur de l'hôte %1 (%2) </translation> </message> <message> <source>Teleported</source> @@ -3053,12 +3053,12 @@ And the size is not necessarily "in megabytes", the slider chooses the <message> <source>Screens</source> <comment>details report</comment> - <translation>Écrans</translation> + <translation>Écrans </translation> </message> <message> <source>VDE network, '%1'</source> <comment>details report (network)</comment> - <translation>Réseau VDE, '%1'</translation> + <translation>Réseau VDE, '%1' </translation> </message> <message> <source>SAS</source> @@ -3078,7 +3078,7 @@ And the size is not necessarily "in megabytes", the slider chooses the <message> <source>^(?:(?:(\d+)(?:\s?(B|KB|MB|GB|TB|PB))?)|(?:(\d*)%1(\d{1,2})(?:\s?(KB|MB|GB|TB|PB))))$</source> <comment>regexp for matching ####[.##] B|KB|MB|GB|TB|PB, %1=decimal point</comment> - <translation>^(?:(?:(\d+)(?:\s?(o|Ko|Mo|Go|To|Po))?)|(?:(\d*)%1(\d{1,2})(?:\s?(Ko|Mo|Go|To|Po))))$</translation> + <translation>^(?:(?:(\d+)(?:\s?(octets|Kio|Mio|Gio|Tio|Pio))?)|(?:(\d*)%1(\d{1,2})(?:\s?(Kio|Mio|Gio|Tio|Pio))))$</translation> </message> <message> <source>B</source> diff --git a/src/VBox/Frontends/VirtualBox/nls/VirtualBox_hu.ts b/src/VBox/Frontends/VirtualBox/nls/VirtualBox_hu.ts index 947c26789..86bfba8c5 100644 --- a/src/VBox/Frontends/VirtualBox/nls/VirtualBox_hu.ts +++ b/src/VBox/Frontends/VirtualBox/nls/VirtualBox_hu.ts @@ -6747,7 +6747,7 @@ to the system default language.</qt> <name>VBoxRegistrationDlg</name> <message> <source>VirtualBox Registration Dialog</source> - <translation>VirtualBox regisztrálása</translation> + <translation type="obsolete">VirtualBox regisztrálása</translation> </message> <message> <source><p>Please fill out this registration form to let us know that you use VirtualBox and, optionally, to keep you informed about VirtualBox news and updates.</p><p>Enter your full name using Latin characters and your e-mail address to the fields below. Please note that innotek will use this information only to gather product usage statistics and to send you VirtualBox newsletters. In particular, innotek will never pass your data to third parties. Detailed information about how we use your personal data can be found in the <b>Privacy Policy</b> section of the VirtualBox Manual or on the <a href=http://www.virtualbox.org/wiki/PrivacyPolicy>Privacy Policy</a> page of the VirtualBox web-site.</p></source> @@ -6759,7 +6759,7 @@ to the system default language.</qt> </message> <message> <source>Enter your full name using Latin characters.</source> - <translation>Írd be a teljes neved speciális karakterek nélkül.</translation> + <translation type="obsolete">Írd be a teljes neved speciális karakterek nélkül.</translation> </message> <message> <source>&E-mail</source> @@ -6767,7 +6767,7 @@ to the system default language.</qt> </message> <message> <source>Enter your e-mail address. Please use a valid address here.</source> - <translation>Írd be a használt e-mail címedet.</translation> + <translation type="obsolete">Írd be a használt e-mail címedet.</translation> </message> <message> <source>&Please do not use this information to contact me</source> @@ -6779,7 +6779,7 @@ to the system default language.</qt> </message> <message> <source>Welcome to the VirtualBox Registration Form!</source> - <translation>A VirtualBox regisztrációs űrlap üdvözöl!</translation> + <translation type="obsolete">A VirtualBox regisztrációs űrlap üdvözöl!</translation> </message> <message> <source>&Confirm</source> @@ -6795,7 +6795,7 @@ to the system default language.</qt> </message> <message> <source>Could not perform connection handshake.</source> - <translation>A kapcsolódási próbálkozás sikertelen volt.</translation> + <translation type="obsolete">A kapcsolódási próbálkozás sikertelen volt.</translation> </message> <message> <source><p>Please fill out this registration form to let us know that you use VirtualBox and, optionally, to keep you informed about VirtualBox news and updates.</p><p>Enter your full name using Latin characters and your e-mail address to the fields below. Sun Microsystems will use this information only to gather product usage statistics and to send you VirtualBox newsletters. In particular, Sun Microsystems will never pass your data to third parties. Detailed information about how we use your personal data can be found in the <b>Privacy Policy</b> section of the VirtualBox Manual or on the <a href=http://www.virtualbox.org/wiki/PrivacyPolicy>Privacy Policy</a> page of the VirtualBox web-site.</p></source> @@ -6811,63 +6811,63 @@ to the system default language.</qt> </message> <message> <source>Cancel</source> - <translation>Mégsem</translation> + <translation type="obsolete">Mégsem</translation> </message> <message> <source>Select Country/Territory</source> - <translation>Válassz országot/területet</translation> + <translation type="obsolete">Válassz országot/területet</translation> </message> <message> <source><p>Please fill out this registration form to let us know that you use VirtualBox and, optionally, to keep you informed about VirtualBox news and updates.</p><p>Please use Latin characters only to fill in the fields below. Sun Microsystems will use this information only to gather product usage statistics and to send you VirtualBox newsletters. In particular, Sun Microsystems will never pass your data to third parties. Detailed information about how we use your personal data can be found in the <b>Privacy Policy</b> section of the VirtualBox Manual or on the <a href=http://www.virtualbox.org/wiki/PrivacyPolicy>Privacy Policy</a> page of the VirtualBox web-site.</p></source> - <translation><p>Kérlek, töltsd ki ezt a regisztrációs űrlapot, hogy tudjuk azt, hogy a felhasználóink táborába tartozol, valamint, hogy informálhassunk téged a különböző hírekről, újdonságokról.</p><p>Add meg speciális karakterek nélkül a neved, illetve az e-mail címedet. A Sun Microsystems az adataidat kizárólag statisztikai célokra, és a te informálásodra használja, harmadik fél számára ki nem adja. A személyes adatok felhasználásának és kezelésének részleteiről a kézikönyv <b>Adatvédemi nyilatkozat</b> részéből vagy a VirtualBox weboldalának <a href=http://www.virtualbox.org/wiki/PrivacyPolicy>Adatvédemi nyilatkozat</a> oldalán tájékozódhatsz.</p></translation> + <translation type="obsolete"><p>Kérlek, töltsd ki ezt a regisztrációs űrlapot, hogy tudjuk azt, hogy a felhasználóink táborába tartozol, valamint, hogy informálhassunk téged a különböző hírekről, újdonságokról.</p><p>Add meg speciális karakterek nélkül a neved, illetve az e-mail címedet. A Sun Microsystems az adataidat kizárólag statisztikai célokra, és a te informálásodra használja, harmadik fél számára ki nem adja. A személyes adatok felhasználásának és kezelésének részleteiről a kézikönyv <b>Adatvédemi nyilatkozat</b> részéből vagy a VirtualBox weboldalának <a href=http://www.virtualbox.org/wiki/PrivacyPolicy>Adatvédemi nyilatkozat</a> oldalán tájékozódhatsz.</p></translation> </message> <message> <source>I &already have a Sun Online account:</source> - <translation>A meglevő Sun Online fiókomat &használom:</translation> + <translation type="obsolete">A meglevő Sun Online fiókomat &használom:</translation> </message> <message> <source>&E-mail:</source> - <translation>&E-mail:</translation> + <translation type="obsolete">&E-mail:</translation> </message> <message> <source>&Password:</source> - <translation>&Jelszó:</translation> + <translation type="obsolete">&Jelszó:</translation> </message> <message> <source>I &would like to create a new Sun Online account:</source> - <translation>Szeretnék egy új Sun &Online fiókot regisztrálni:</translation> + <translation type="obsolete">Szeretnék egy új Sun &Online fiókot regisztrálni:</translation> </message> <message> <source>&First Name:</source> - <translation>&Keresztnév:</translation> + <translation type="obsolete">&Keresztnév:</translation> </message> <message> <source>&Last Name:</source> - <translation>&Vezetéknév:</translation> + <translation type="obsolete">&Vezetéknév:</translation> </message> <message> <source>&Company:</source> - <translation>&Cég:</translation> + <translation type="obsolete">&Cég:</translation> </message> <message> <source>Co&untry:</source> - <translation>Orszá&g:</translation> + <translation type="obsolete">Orszá&g:</translation> </message> <message> <source>E-&mail:</source> - <translation>E-&mail:</translation> + <translation type="obsolete">E-&mail:</translation> </message> <message> <source>P&assword:</source> - <translation>J&elszó:</translation> + <translation type="obsolete">J&elszó:</translation> </message> <message> <source>Co&nfirm Password:</source> - <translation>Jelszó &megerősítése:</translation> + <translation type="obsolete">Jelszó &megerősítése:</translation> </message> <message> <source>&Register</source> - <translation>&Regisztráció</translation> + <translation type="obsolete">&Regisztráció</translation> </message> </context> <context> diff --git a/src/VBox/Frontends/VirtualBox/nls/VirtualBox_ro.ts b/src/VBox/Frontends/VirtualBox/nls/VirtualBox_ro.ts index c8c6bdae6..0b581fe73 100644 --- a/src/VBox/Frontends/VirtualBox/nls/VirtualBox_ro.ts +++ b/src/VBox/Frontends/VirtualBox/nls/VirtualBox_ro.ts @@ -117,11 +117,11 @@ </message> <message> <source>The VirtualBox Linux kernel driver (vboxdrv) is either not loaded or there is a permission problem with /dev/vboxdrv. Please reinstall the kernel module by executing<br/><br/> <font color=blue>'/etc/init.d/vboxdrv setup'</font><br/><br/>as root. Users of Ubuntu, Fedora or Mandriva should install the DKMS package first. This package keeps track of Linux kernel changes and recompiles the vboxdrv kernel module if necessary.</source> - <translation type="unfinished"></translation> + <translation>Fie Driverul de nucleu Linux al VirtualBox (vboxdrv) nu este încărcat fie există o problemă cu permisiunile pe /dev/vboxdrv. Vă rugăm reinstalați modulul kernel executând <br/><br/> <font color=blue>'/etc/init.d/vboxdrv setup'</font><br/><br/> ca root. Utilizatorii de Ubuntu, Fedora sau Mandriva ar trebui să instaleze pachetul DKMS mai întâi. Acest pachet urmărește schimbările nucleului și recompilează modulul vboxdv atunci când este cazul.</translation> </message> <message> <source>Make sure the kernel module has been loaded successfully.</source> - <translation type="unfinished"></translation> + <translation>Verifică dacă modulul de nucleu a fost încărcat cu succes.</translation> </message> <message> <source>VirtualBox - Runtime Error</source> @@ -129,15 +129,15 @@ </message> <message> <source><b>Cannot access the kernel driver!</b><br/><br/></source> - <translation type="unfinished"></translation> + <translation><b>Nu se poate accesa driverul de nucleu!</b><br/><br/></translation> </message> <message> <source>Unknown error %2 during initialization of the Runtime</source> - <translation type="unfinished"></translation> + <translation>Eroare necunoscută %2 în timpul inițializării aplicației</translation> </message> <message> <source>Kernel driver not accessible</source> - <translation type="unfinished"></translation> + <translation>Driver nucleu inaccesibil</translation> </message> <message> <source>The VirtualBox kernel modules do not match this version of VirtualBox. The installation of VirtualBox was apparently not successful. Please try completely uninstalling and reinstalling VirtualBox.</source> @@ -375,7 +375,7 @@ <name>QILabel</name> <message> <source>&Copy</source> - <translation type="unfinished">&Copiază</translation> + <translation>&Copiază</translation> </message> </context> <context> @@ -448,7 +448,7 @@ <name>QIWizardPage</name> <message> <source>Use the <b>%1</b> button to go to the next page of the wizard and the <b>%2</b> button to return to the previous page. You can also press <b>%3</b> if you want to cancel the execution of this wizard.</p></source> - <translation type="unfinished"></translation> + <translation>Folosiți butonul <b>%1</b> pentru a merge la pagina următoare a asistentului și butonul <b>%2</b> pentru a reveni la pagina precedentă. Puteți de asemenea apăsa <b>%3</b> dacă doriți să anulați execuția acestui asistent.</p></translation> </message> </context> <context> @@ -506,7 +506,7 @@ </message> <message> <source>The download process has been canceled by the user.</source> - <translation type="unfinished"></translation> + <translation>Procesul de descărcare a fost anulat de către utilizator.</translation> </message> </context> <context> @@ -536,7 +536,7 @@ <name>UIDownloaderUserManual</name> <message> <source>Select folder to save User Manual to</source> - <translation type="unfinished"></translation> + <translation>Selectați dosarul în care să se salveze Manualul utilizator</translation> </message> </context> <context> @@ -646,18 +646,18 @@ <name>UIExportApplianceWzdPage1</name> <message> <source>Welcome to the Appliance Export Wizard!</source> - <translation type="unfinished">Bun venit la asistentul export Mașină virtuală!</translation> + <translation type="unfinished">Bun venit la Asistentul export mașină virtuală!</translation> </message> <message> <source><p>This wizard will guide you through the process of exporting an appliance.</p><p>%1</p><p>Please select the virtual machines that should be added to the appliance. You can select more than one. Please note that these machines have to be turned off before they can be exported.</p></source> - <translation type="unfinished"></translation> + <translation type="unfinished"><p>Acest asistent va va ghida prin procesul de exportare a unei mașini virtuale.</p><p>%1</p><p>Vă rugăm selectați mașinile virtuale pentru a fi adăugată la instalație. Puteți selecta mai mult de una. Notați faptul că aceste mașini trebuie oprite înainte de a fi exportate.</p></translation> </message> </context> <context> <name>UIExportApplianceWzdPage2</name> <message> <source>Here you can change additional configuration values of the selected virtual machines. You can modify most of the properties shown by double-clicking on the items.</source> - <translation type="unfinished">Aici puteți modifica setări adiționale pentru mașinile virtuale selectate. Puteți modifica majoritatea proprietăților afișate, făcând dublu click pe ele.</translation> + <translation>Aici puteți modifica setări adiționale pentru mașinile virtuale selectate. Puteți modifica majoritatea proprietăților afișate, făcând dublu click pe ele.</translation> </message> <message> <source>Appliance Export Settings</source> @@ -668,19 +668,19 @@ <name>UIExportApplianceWzdPage3</name> <message> <source>Please specify the target for the OVF export. You can choose between a local file system export, uploading the OVF to the Sun Cloud service or an S3 storage server.</source> - <translation type="unfinished"></translation> + <translation>Vă rugăm specificați ținta exportului OVF. Puteți alege între un export pe sistemul de fișiere local, încărcare OVF către serviciul Sun Cloud sau către serverul de stocare S3.</translation> </message> <message> <source>&Local Filesystem </source> - <translation type="unfinished">Sistem de fișiere &local</translation> + <translation>Sistem de fișiere &local</translation> </message> <message> <source>Sun &Cloud</source> - <translation type="unfinished">Sun &Cloud</translation> + <translation>Sun &Cloud</translation> </message> <message> <source>&Simple Storage System (S3)</source> - <translation type="unfinished">&Simple Storage System (S3)</translation> + <translation>&Simple Storage System (S3)</translation> </message> <message> <source>Appliance Export Settings</source> @@ -691,15 +691,15 @@ <name>UIExportApplianceWzdPage4</name> <message> <source>&Username:</source> - <translation type="unfinished">Nume &utilizator:</translation> + <translation>Nume &utilizator:</translation> </message> <message> <source>&Password:</source> - <translation type="unfinished">&Parolă:</translation> + <translation>&Parolă:</translation> </message> <message> <source>&Hostname:</source> - <translation type="unfinished">&Nume de gazdă:</translation> + <translation>&Nume de gazdă:</translation> </message> <message> <source>&Bucket:</source> @@ -707,15 +707,15 @@ </message> <message> <source>&File:</source> - <translation type="unfinished">&Fișier:</translation> + <translation>&Fișier:</translation> </message> <message> <source>Write in legacy OVF 0.9 format for compatibility with other virtualization products.</source> - <translation type="unfinished">Scrie în formatul vechi OVF 0.9 pentru a păstra compatibilitatea cu alte produse de virtualizare.</translation> + <translation>Scrie în formatul vechi OVF 0.9 pentru a păstra compatibilitatea cu alte produse de virtualizare.</translation> </message> <message> <source>&Write legacy OVF 0.9</source> - <translation type="unfinished">&Scrie OVF 0.9 (format vechi)</translation> + <translation>&Scrie OVF 0.9 (format vechi)</translation> </message> <message> <source>Appliance Export Settings</source> @@ -727,19 +727,19 @@ </message> <message> <source>Select a file to export into</source> - <translation type="unfinished">Selectați un fișier în care să export</translation> + <translation>Selectați un fișier în care să se exporte</translation> </message> <message> <source>Open Virtualization Format (%1)</source> - <translation type="unfinished">Open Virtualization Format (%1)</translation> + <translation>Format Open Virtualization (%1)</translation> </message> <message> <source>Please choose a filename to export the OVF to.</source> - <translation type="unfinished">Vă rugăm selectați un nume de fișier pentru a salva fișierul OVF.</translation> + <translation>Vă rugăm selectați un nume de fișier pentru a salva fișierul OVF.</translation> </message> <message> <source>Please complete the additional fields like the username, password and the bucket, and provide a filename for the OVF target.</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Vă rugăm completați câmpurile adiționale precum numele de utilizator, parola și bucket, și oferiți un nume de fișier pentru ținta OVF</translation> </message> <message> <source>Please complete the additional fields like the username, password, hostname and the bucket, and provide a filename for the OVF target.</source> @@ -747,11 +747,11 @@ </message> <message> <source>Checking files ...</source> - <translation type="unfinished">Verificare fișiere ...</translation> + <translation>Se verifică fișierele ...</translation> </message> <message> <source>Removing files ...</source> - <translation type="unfinished">Ștergere fișiere ...</translation> + <translation>Se șterg fișierele ...</translation> </message> <message> <source>Exporting Appliance ...</source> @@ -915,71 +915,71 @@ <name>UIFirstRunWzdPage1</name> <message> <source>Welcome to the First Run Wizard!</source> - <translation type="unfinished">Bine ați venit la asistentul Prima rulare!</translation> + <translation>Bun venit la asistentul Prima rulare!</translation> </message> <message> <source><p>You have started a newly created virtual machine for the first time. This wizard will help you to perform the steps necessary for installing an operating system of your choice onto this virtual machine.</p><p>%1</p></source> - <translation type="unfinished"></translation> + <translation><p>Ați pornit pentru prima oară o mașină virtuală proaspăt creată. Acest asistent vă va ajuta să parcurgeți pașii necesari pentru instalarea unui sistem de operare la alegerea dvs pe această mașină virtuală.</p><p>%1</p></translation> </message> <message> <source><p>You have started a newly created virtual machine for the first time. This wizard will help you to perform the steps necessary for booting an operating system of your choice on the virtual machine.</p><p>Note that you will not be able to install an operating system into this virtual machine right now because you did not attach any hard disk to it. If this is not what you want, you can cancel the execution of this wizard, select <b>Settings</b> from the <b>Machine</b> menu of the main VirtualBox window to access the settings dialog of this machine and change the hard disk configuration.</p><p>%1</p></source> - <translation type="unfinished"></translation> + <translation><p>Ați pornit pentru prima oară o mașină virtuală proaspăt creată. Acest asistent vă va ajuta să parcurgeți pașii necesari pentru bootarea unui sistem de operare la alegerea dvs pe această mașină virtuală.</p><p>Notați faptul că nu veți putea instala acum un sistem de operare pe această mașină virtuală deoarece nu ați atașat niciun disc dur la ea. Dacă acest lucru nu este ceea ce doriți, puteți anula execuția acestui asistent, apoi selecta <b>Setări</b> din meniul <b>Mașină</b> al ferestrei principale VirtualBox pentru a accesa dialogul de setări și a schimba configurarea discurilor dure.</p><p>%1</p></translation> </message> </context> <context> <name>UIFirstRunWzdPage2</name> <message> <source><p>Select the media which contains the setup program of the operating system you want to install. This media must be bootable, otherwise the setup program will not be able to start.</p></source> - <translation type="unfinished"><p>Selectați mediul care conține programul de instalare al sistemului de operare pe care doriți să îl instalați. Acest mediu trebuie să fie bootabil, altfel programul de instalare nu va putea porni.</p></translation> + <translation><p>Selectați mediul care conține programul de instalare al sistemului de operare pe care doriți să îl instalați. Acest mediu trebuie să fie bootabil, altfel programul de instalare nu va putea porni.</p></translation> </message> <message> <source><p>Select the media that contains the operating system you want to work with. This media must be bootable, otherwise the operating system will not be able to start.</p></source> - <translation type="unfinished"><p>Selectați mediul care conține sistemul de operare cu care doriți să lucrați. Acest mediu trebuie să fie bootabil, altfel sistemul de operare nu va putea porni. </p></translation> + <translation><p>Selectați mediul care conține sistemul de operare cu care doriți să lucrați. Acest mediu trebuie să fie bootabil, altfel sistemul de operare nu va putea porni. </p></translation> </message> <message> <source>Media Source</source> - <translation type="unfinished">Sursă media</translation> + <translation>Mediu sursă</translation> </message> <message> <source>Select Installation Media</source> - <translation type="unfinished">Selectați mediul de instalare</translation> + <translation>Selectați mediul de instalare</translation> </message> </context> <context> <name>UIFirstRunWzdPage3</name> <message> <source><p>You have selected the following media to boot from:</p></source> - <translation type="unfinished"><p>Ați ales să bootați de pe următorul mediu:</p></translation> + <translation><p>Ați ales să bootați de pe următorul mediu:</p></translation> </message> <message> <source><p>You have selected the following media to boot an operating system from:</p></source> - <translation type="unfinished"><p>Ați selectat următorul mediu pentru a boota un sistem de operare de pe el.</p></translation> + <translation><p>Ați selectat următorul mediu pentru a boota un sistem de operare de pe el:</p></translation> </message> <message> <source><p>If the above is correct, press the <b>Finish</b> button. Once you press it, the selected media will be temporarily mounted on the virtual machine and the machine will start execution.</p><p>Please note that when you close the virtual machine, the specified media will be automatically unmounted and the boot device will be set back to the first hard disk.</p><p>Depending on the type of the setup program, you may need to manually unmount (eject) the media after the setup program reboots the virtual machine, to prevent the installation process from starting again. You can do this by selecting the corresponding <b>Unmount...</b> action in the <b>Devices</b> menu.</p></source> - <translation type="unfinished"><p>Dacă datele de mai jos sunt corecte, apăsați butonul <b>Terminare</b>. O dată apăsat, mediul selectat va fi montat temporar la mașina virtuală, iar mașina își va începe execuția.</p><p>Notați faptul că atunci când închideți mașina virtuală, mediul specificat va fi demontat automat, iar dispozitivul de boot va fi setat înapoi la primul disc hard.</p><p>În funcție de tipul programului de instalare, s-ar putea să fie nevoie să demontați manual (eject) mediul după ce programul repornește mașina virtuală, pentru a preveni pornirea din nou a procesului de instalare. Puteți face acest lucru selectând acțiunea <b>Demontare...</b> corespunzătoare din meniul <b>Dispozitive</b>.</p></translation> + <translation><p>Dacă datele de mai jos sunt corecte, apăsați butonul <b>Terminare</b>. Odată apăsat, mediul selectat va fi montat temporar la mașina virtuală, iar mașina își va începe execuția.</p><p>Notați faptul că atunci când închideți mașina virtuală, mediul specificat va fi demontat automat, iar dispozitivul de boot va fi setat înapoi la primul disc hard.</p><p>În funcție de tipul programului de instalare, s-ar putea să fie nevoie să demontați manual (eject) mediul după ce programul repornește mașina virtuală, pentru a preveni pornirea din nou a procesului de instalare. Puteți face acest lucru selectând acțiunea <b>Demontare...</b> corespunzătoare din meniul <b>Dispozitive</b>.</p></translation> </message> <message> <source><p>If the above is correct, press the <b>Finish</b> button. Once you press it, the selected media will be mounted on the virtual machine and the machine will start execution.</p></source> - <translation type="unfinished"><p>Dacă informația de mai jos este corectă, apăsați butonul <b>Terminare</b>. O dată apăsat, mediul selectat va fi montat la mașina virtuală și mașina va porni execuția.</p></translation> + <translation><p>Dacă informația de mai jos este corectă, apăsați butonul <b>Terminare</b>. O dată apăsat, mediul selectat va fi montat la mașina virtuală și mașina va începe execuția.</p></translation> </message> <message> <source>Summary</source> - <translation type="unfinished">Rezumat</translation> + <translation>Rezumat</translation> </message> <message> <source>CD/DVD-ROM Device</source> - <translation type="unfinished">Dispozitiv CD/DVD-ROM </translation> + <translation>Dispozitiv CD/DVD-ROM </translation> </message> <message> <source>Type</source> <comment>summary</comment> - <translation type="unfinished">Tip</translation> + <translation>Tip</translation> </message> <message> <source>Source</source> <comment>summary</comment> - <translation type="unfinished">Sursă</translation> + <translation>Sursă</translation> </message> </context> <context> @@ -1010,7 +1010,7 @@ </message> <message> <source>Restore Defaults</source> - <translation type="unfinished">Restabilire valori implicite</translation> + <translation>Restabilește valori implicite</translation> </message> <message> <source>&Import ></source> @@ -1025,7 +1025,7 @@ </message> <message> <source>Open Virtualization Format (%1)</source> - <translation type="unfinished">Open Virtualization Format (%1)</translation> + <translation>Format Open Virtualization (%1)</translation> </message> <message> <source>Welcome to the Appliance Import Wizard!</source> @@ -1051,7 +1051,7 @@ <name>UIImportLicenseViewer</name> <message> <source><b>The virtual system "%1" requires that you agree to the terms and conditions of the software license agreement shown below.</b><br /><br />Click <b>Agree</b> to continue or click <b>Disagree</b> to cancel the import.</source> - <translation type="unfinished"></translation> + <translation><b>Sistemul virtual "%1" necesită acceptarea următorilor termeni și condiții ai licenței software.</b><br/><br/>Faceți clic pe <b>Acceptă</b> pentru a continua sau pe <b>Refuză</b> pentru anularea importului.</translation> </message> <message> <source>Software License Agreement</source> @@ -1086,56 +1086,56 @@ <name>UIMachineLogic</name> <message> <source>VirtualBox OSE</source> - <translation type="unfinished">VirtualBox OSE</translation> + <translation>VirtualBox OSE</translation> </message> <message> <source> EXPERIMENTAL build %1r%2 - %3</source> - <translation type="unfinished"></translation> + <translation> versiune EXPERIMENTALĂ %1r%2 - %3</translation> </message> </context> <context> <name>UIMiniProcessWidgetAdditions</name> <message> <source>Cancel</source> - <translation type="unfinished"></translation> + <translation>Renunță</translation> </message> <message> <source>Cancel the VirtualBox Guest Additions CD image download</source> - <translation type="unfinished"></translation> + <translation>Anulează descărcarea imaginii CD VirtualBox Guest Additions</translation> </message> <message> <source>Downloading the VirtualBox Guest Additions CD image from <nobr><b>%1</b>...</nobr></source> - <translation type="unfinished">Descarc imaginea de CD a VirtualBox Guest Additions de la <nobr><b>%1</b>...</nobr></translation> + <translation>Se descarcă imaginea de CD a VirtualBox Guest Additions de la <nobr><b>%1</b>...</nobr></translation> </message> </context> <context> <name>UIMiniProcessWidgetUserManual</name> <message> <source>Cancel</source> - <translation type="unfinished"></translation> + <translation>Renunță</translation> </message> <message> <source>Cancel the VirtualBox User Manual download</source> - <translation type="unfinished"></translation> + <translation>Anulează descărcarea manualului utilizator VirtualBox</translation> </message> <message> <source>Downloading the VirtualBox User Manual</source> - <translation type="unfinished"></translation> + <translation>Se descarcă manualul utilizator VirtualBox</translation> </message> <message> <source>Downloading the VirtualBox User Manual <nobr><b>%1</b>...</nobr></source> - <translation type="unfinished"></translation> + <translation>Se descarcă manualul utilizator VirtualBox de la <nobr><b>%1</b>...</nobr></translation> </message> </context> <context> <name>UIMultiScreenLayout</name> <message> <source>Virtual Screen %1</source> - <translation type="unfinished"></translation> + <translation>Ecran virtual %1</translation> </message> <message> <source>Use Host Screen %1</source> - <translation type="unfinished"></translation> + <translation>Folosește ecranul mașinii gazdă %1</translation> </message> </context> <context> @@ -1377,103 +1377,104 @@ time depending on the image size and the write performance of your harddisk.< <name>UINewHDWzdPage1</name> <message> <source>Welcome to the Create New Virtual Disk Wizard!</source> - <translation type="unfinished">Bun venit la asistentul Creează disc virtual nou!</translation> + <translation>Bun venit la asistentul Creează disc virtual nou!</translation> </message> <message> <source><p>This wizard will help you to create a new virtual hard disk for your virtual machine.</p><p>%1</p></source> - <translation type="unfinished"></translation> + <translation><p>Acest asistent vă va ghida în procesul de creare a unui nou disc dur virtual pentru mașina dvs virtuală.</p><p>%1</p></translation> </message> </context> <context> <name>UINewHDWzdPage2</name> <message> <source><p>Select the type of virtual hard disk you want to create.</p><p>A <b>dynamically expanding storage</b> initially occupies a very small amount of space on your physical hard disk. It will grow dynamically (up to the size specified) as the Guest OS claims disk space.</p><p>A <b>fixed-size storage</b> does not grow. It is stored in a file of approximately the same size as the size of the virtual hard disk. The creation of a fixed-size storage may take a long time depending on the storage size and the write performance of your harddisk.</p></source> - <translation type="unfinished"><p>Selectați tipul de imagine virtuală de disc fix pe care doriți să o creați.</p><p>O <b>imagine expandabilă dinamic</b> ocupă inițial un spațiu foarte mic pe discul fix fizic. Va crește dinamic (până la dimensiunre specificată), pe măsură ce SO musafir face uz de spațiul de pe disc. </p><p>O <b>imagine de dimensiune fixă</b> nu crește. Este salvată într-un fișier de aproximativ aceeași dimensiune cu discul fix virtual. Crearea unei imagini de dimensiune fixă poate dura destul de mult în funcție de dimensiunea imaginii și de viteza de scriere a discului dvs.</p></translation> + <translation><p>Selectați tipul de imagine virtuală de disc fix pe care doriți să o creați.</p><p>O <b>imagine expandabilă dinamic</b> ocupă inițial un spațiu foarte mic pe discul fix fizic. Va crește dinamic (până la dimensiunre specificată), pe măsură ce SO musafir face uz de spațiul de pe disc. </p><p>O <b>imagine de dimensiune fixă</b> nu crește. Este salvată într-un fișier de aproximativ aceeași dimensiune cu discul fix virtual. Crearea unei imagini de dimensiune fixă poate dura destul de mult în funcție de dimensiunea imaginii și de viteza de scriere a discului dvs.</p></translation> </message> <message> <source>Storage Type</source> - <translation type="unfinished">TIp stocare</translation> + <translation>TIp stocare</translation> </message> <message> <source>&Dynamically expanding storage</source> - <translation type="unfinished">Imagine expandabilă &dinamic</translation> + <translation>Imagine expandabilă &dinamic</translation> </message> <message> <source>&Fixed-size storage</source> - <translation type="unfinished">Imagine de dimensiune &fixă</translation> + <translation>Imagine de dimensiune &fixă</translation> </message> <message> <source>Hard Disk Storage Type</source> - <translation type="unfinished">Tip stocare disc fix</translation> + <translation>Tip stocare disc fix</translation> </message> </context> <context> <name>UINewHDWzdPage3</name> <message> <source><p>Press the <b>Select</b> button to select the location of a file to store the hard disk data or type a file name in the entry field.</p></source> - <translation type="unfinished"><p>Apăsați butonul <b>Selectare</b> pentru a selecta amplasarea imaginii discului fix virtual sau tastați un nume de fișier în câmpul de intrare.</p></translation> + <translation><p>Apăsați butonul <b>Selectează</b> pentru a selecta amplasarea imaginii discului fix virtual sau tastați un nume de fișier în câmpul de intrare.</p></translation> </message> <message> <source>&Location</source> - <translation type="unfinished">Amp&lasare</translation> + <translation>Amp&lasare</translation> </message> <message> <source><p>Select the size of the virtual hard disk in megabytes. This size will be reported to the Guest OS as the maximum size of this hard disk.</p></source> - <translation type="unfinished"><p>Selectați dimensiunea imaginii discului fix virtual (în megaocteți). Această dimensiune va fi raportată SO musafir ca dimensiunea discului fix virtual.</p></translation> + <translation><p>Selectați dimensiunea imaginii discului fix virtual (în megaocteți). Această dimensiune va fi raportată SO musafir ca dimensiunea discului fix virtual.</p></translation> </message> <message> <source>&Size</source> - <translation type="unfinished">Dimen&siune</translation> + <translation>Dimen&siune</translation> </message> <message> <source>Virtual Disk Location and Size</source> - <translation type="unfinished">Amplasare disc virtual și dimensiune</translation> + <translation>Amplasare disc virtual și dimensiune</translation> </message> <message> <source>Select a file for the new hard disk image file</source> - <translation type="unfinished">Selectați un fișier pentru noua imagine de disc fix</translation> + <translation>Selectați un fișier pentru noua imagine de disc fix</translation> </message> <message> <source>Hard disk images (*.vdi)</source> - <translation type="unfinished">Imagini disc fix (*.vdi)</translation> + <translation>Imagini disc dur (*.vdi)</translation> </message> <message> <source><nobr>%1 (%2 B)</nobr></source> - <translation type="unfinished"></translation> + <translatorcomment>hmm</translatorcomment> + <translation><nobr>%1 (%2 B)</nobr></translation> </message> </context> <context> <name>UINewHDWzdPage4</name> <message> <source>You are going to create a new virtual hard disk with the following parameters:</source> - <translation type="unfinished">Veți crea o nouă imagine virtuală de disc fix cu următorii parametrii:</translation> + <translation>Veți crea o nouă imagine virtuală de disc dur cu următorii parametrii:</translation> </message> <message> <source>Summary</source> - <translation type="unfinished">Rezumat</translation> + <translation>Rezumat</translation> </message> <message> <source>%1 B</source> - <translation type="unfinished"></translation> + <translation>%1 B</translation> </message> <message> <source>Type</source> <comment>summary</comment> - <translation type="unfinished">Tip</translation> + <translation>Tip</translation> </message> <message> <source>Location</source> <comment>summary</comment> - <translation type="unfinished">Amplasare</translation> + <translation>Amplasare</translation> </message> <message> <source>Size</source> <comment>summary</comment> - <translation type="unfinished">Dimensiune</translation> + <translation>Dimensiune</translation> </message> <message> <source>If the above settings are correct, press the <b>%1</b> button. Once you press it, a new hard disk will be created.</source> - <translation type="unfinished"></translation> + <translation>Dacă setările de mai sus sunt corecte, apăsați butonul <b>Finalizare</b>. Odată apăsat, o nouă imagine de disc dur va fi creată.</translation> </message> </context> <context> @@ -1731,125 +1732,125 @@ din listă apăsând butonul <b>Existent</b> (pentru a invoca dialog <name>UINewVMWzdPage1</name> <message> <source>Welcome to the New Virtual Machine Wizard!</source> - <translation type="unfinished">Bun venit la asistentul Mașină virtuală nouă!</translation> + <translation>Bun venit la asistentul Mașină virtuală nouă!</translation> </message> <message> <source><p>This wizard will guide you through the steps that are necessary to create a new virtual machine for VirtualBox.</p><p>%1</p></source> - <translation type="unfinished"></translation> + <translation><p>Acest asistent vă va ghida în procesul de creare a noi mașini virtuale pentru VirtualBox.</p><p>%1</p></translation> </message> </context> <context> <name>UINewVMWzdPage2</name> <message> <source><p>Enter a name for the new virtual machine and select the type of the guest operating system you plan to install onto the virtual machine.</p><p>The name of the virtual machine usually indicates its software and hardware configuration. It will be used by all VirtualBox components to identify your virtual machine.</p></source> - <translation type="unfinished"><p>Introduceți un nume pentru noua mașină virtuală și selectați tipul sistemului de operare musafir pe care plănuiți să îl instalați în mașină.</p><p>Numele mașinii virtuale indică în mod uzual configurația software și hardware. Va fi folosit de către toate produsele VirtualBox pentru a identifica mașina virtuală creată.</p></translation> + <translation><p>Introduceți un nume pentru noua mașină virtuală și selectați tipul sistemului de operare musafir pe care plănuiți să îl instalați în mașină.</p><p>Numele mașinii virtuale indică în mod uzual configurația software și hardware. Va fi folosit de către toate produsele VirtualBox pentru a identifica mașina virtuală creată.</p></translation> </message> <message> <source>N&ame</source> - <translation type="unfinished">N&ume</translation> + <translation>N&ume</translation> </message> <message> <source>OS &Type</source> - <translation type="unfinished">&Tip SO</translation> + <translation>&Tip SO</translation> </message> <message> <source>VM Name and OS Type</source> - <translation type="unfinished">Nume MV și tip SO</translation> + <translation>Nume MV și tip SO</translation> </message> </context> <context> <name>UINewVMWzdPage3</name> <message> <source><p>Select the amount of base memory (RAM) in megabytes to be allocated to the virtual machine.</p></source> - <translation type="unfinished"><p>Selectați cantitatea de memorie RAM în megaocteți pentru a fi alocată mașinii virtuale.</p></translation> + <translation><p>Selectați cantitatea de memorie RAM în megaocteți pentru a fi alocată mașinii virtuale.</p></translation> </message> <message> <source>Base &Memory Size</source> - <translation type="unfinished">Dimensiune &memorie RAM</translation> + <translation>Dimensiune &memorie RAM</translation> </message> <message> <source>MB</source> - <translation type="unfinished">MO</translation> + <translation>MO</translation> </message> <message> <source>Memory</source> - <translation type="unfinished">Memorie</translation> + <translation>Memorie</translation> </message> <message> <source>The recommended base memory size is <b>%1</b> MB.</source> - <translation type="unfinished">Memoria RAM recomandată este <b>%1</b> MO.</translation> + <translation>Cantitatea de memorie recomandată este <b>%1</b> MO.</translation> </message> <message> <source>MB</source> <comment>size suffix MBytes=1024 KBytes</comment> - <translation type="unfinished">MO</translation> + <translation>MO</translation> </message> </context> <context> <name>UINewVMWzdPage4</name> <message> <source><p>Select a hard disk image to be used as the boot hard disk of the virtual machine. You can either create a new hard disk using the <b>New</b> button or select an existing hard disk image from the drop-down list or by pressing the <b>Existing</b> button (to invoke the Virtual Media Manager dialog).</p><p>If you need a more complicated hard disk setup, you can also skip this step and attach hard disks later using the VM Settings dialog.</p></source> - <translation type="unfinished"><p>Selectați imaginea de disc hard virtual care va fi folosită ca disc de pornire pentru mașina virtuală. Puteți fie crea un disc fix nou utilizând butonul <b>Nou</b> sau selecta o imagine de disc fix existentă din listă apăsând butonul <b>Existent</b> (pentru a invoca dialogul Gestionar discuri virtuale).</p><p>Dacă aveți nevoie de setarea mai complexă a unui disc virtual, puteți sări peste acest pas și atașa ulterior un disc fix utilizând dialogul Setări mașină virtuală.</p></translation> + <translation><p>Selectați imaginea de disc hard virtual care va fi folosită ca disc de pornire pentru mașina virtuală. Puteți fie crea un disc fix nou utilizând butonul <b>Nou</b> sau selecta o imagine de disc fix existentă din listă apăsând butonul <b>Existent</b> (pentru a invoca dialogul Administrator discuri virtuale).</p><p>Dacă aveți nevoie de setarea mai complexă a unui disc virtual, puteți sări peste acest pas și atașa ulterior un disc fix utilizând dialogul Setări mașină virtuală.</p></translation> </message> <message> <source>Boot Hard &Disk (Primary Master)</source> - <translation type="unfinished">Disc de P&ornire (Primar Master)</translation> + <translation>Disc de P&ornire (Primar Master)</translation> </message> <message> <source>&Create new hard disk</source> - <translation type="unfinished">&Creează disc dur nou</translation> + <translation>&Creează disc dur nou</translation> </message> <message> <source>&Use existing hard disk</source> - <translation type="unfinished">F&olosește disc dur existent</translation> + <translation>F&olosește un disc dur existent</translation> </message> <message> <source>Virtual Hard Disk</source> - <translation type="unfinished">Hard disc virtual</translation> + <translation>Disc dur virtual</translation> </message> <message> <source>The recommended size of the boot hard disk is <b>%1</b> MB.</source> - <translation type="unfinished">Dimensiunea discului de boot recomandată este <b>%1</b> MO.</translation> + <translation>Dimensiunea discului de boot recomandată este <b>%1</b> MO.</translation> </message> </context> <context> <name>UINewVMWzdPage5</name> <message> <source><p>You are going to create a new virtual machine with the following parameters:</p></source> - <translation type="unfinished"><p>Veți crea o nouă mașină virtuală cu următorii parametrii:</p></translation> + <translation><p>Veți crea o nouă mașină virtuală cu următorii parametrii:</p></translation> </message> <message> <source>Summary</source> - <translation type="unfinished">Rezumat</translation> + <translation>Rezumat</translation> </message> <message> <source>Name</source> <comment>summary</comment> - <translation type="unfinished">Nume</translation> + <translation>Nume</translation> </message> <message> <source>OS Type</source> <comment>summary</comment> - <translation type="unfinished">Tip SO</translation> + <translation>Tip SO</translation> </message> <message> <source>Base Memory</source> <comment>summary</comment> - <translation type="unfinished">Memorie RAM</translation> + <translation>Memorie RAM</translation> </message> <message> <source>MB</source> <comment>size suffix MBytes=1024KBytes</comment> - <translation type="unfinished">MO</translation> + <translation>MO</translation> </message> <message> <source>Boot Hard Disk</source> <comment>summary</comment> - <translation type="unfinished">Disc de pornire</translation> + <translation>Disc de pornire</translation> </message> <message> <source><p>If the above is correct press the <b>%1</b> button. Once you press it, a new virtual machine will be created. </p><p>Note that you can alter these and all other setting of the created virtual machine at any time using the <b>Settings</b> dialog accessible through the menu of the main window.</p></source> - <translation type="unfinished"></translation> + <translation><p>Dacă informațiile sunt corecte, apăsați butonul <b>Finalizare</b>. O dată ce l-ați apăsat, o nouă mașină virtuală va fi creată.</p><p>Notați faptul că puteți schimba aceste setări și altele în orice moment prin dialogul <b>Setări</b> accesibil din meniul ferestrei principale.</p></translation> </message> </context> <context> @@ -2093,12 +2094,12 @@ Versiunea %1</translation> <message> <source>MB</source> <comment>size suffix MBytes=1024 KBytes</comment> - <translation type="unfinished">MO</translation> + <translation>MO</translation> </message> <message> <source>MB</source> <comment>size suffix MBytes=1024KBytes</comment> - <translation type="unfinished">MO</translation> + <translation>MO</translation> </message> </context> <context> @@ -2826,27 +2827,27 @@ Versiunea %1</translation> </message> <message> <source> EXPERIMENTAL build %1r%2 - %3</source> - <translation type="unfinished"></translation> + <translation> versiune EXPERIMENTALĂ %1r%2 - %3</translation> </message> <message> <source>&CD/DVD Devices</source> - <translation type="unfinished"></translation> + <translation>Dispozitive &CD/DVD</translation> </message> <message> <source>&Floppy Devices</source> - <translation type="unfinished"></translation> + <translation>Unități de &dischetă</translation> </message> <message> <source>&Network Adapters...</source> - <translation type="unfinished"></translation> + <translation>&Plăci de rețea...</translation> </message> <message> <source>Change the settings of network adapters</source> - <translation type="unfinished"></translation> + <translation>Modifică setările plăcilor de rețea</translation> </message> <message> <source>&Remote Display</source> - <translation type="unfinished"></translation> + <translation>Ecran la &distanță</translation> </message> <message> <source>More CD/DVD Images...</source> @@ -2914,32 +2915,33 @@ Versiunea %1</translation> </message> <message> <source>Dock Icon</source> - <translation type="unfinished"></translation> + <translatorcomment>dock hmm</translatorcomment> + <translation type="unfinished">Icon în dock</translation> </message> <message> <source>Show Application Icon</source> - <translation type="unfinished"></translation> + <translation>Arată iconul aplicației</translation> </message> <message> <source>Show Monitor Preview</source> - <translation type="unfinished"></translation> + <translation>Arată previzualizare monitor</translation> </message> <message> <source><br><nobr><b>Adapter %1 (%2)</b>: %3 cable %4</nobr></source> <comment>Network adapters tooltip</comment> - <translation type="unfinished"></translation> + <translation><br><nobr><b>Placa de rețea %1 (%2)</b>: %3 cablu %4</nobr></translation> </message> <message> <source>ACPI Sh&utdown</source> - <translation type="unfinished"></translation> + <translation>Înc&hide ACPI</translation> </message> <message> <source>&View</source> - <translation type="unfinished"></translation> + <translation>&Vizualizare</translation> </message> <message> <source>Preview Monitor %1</source> - <translation type="unfinished"></translation> + <translation>Previzualizare monitor %1</translation> </message> <message> <source>No CD/DVD devices attached to that VM</source> @@ -2947,7 +2949,7 @@ Versiunea %1</translation> </message> <message> <source>No floppy devices attached to that VM</source> - <translation type="unfinished"></translation> + <translation>Nicio unitate de dischetă atașată la acea mașina virtuală</translation> </message> <message> <source>No USB Devices Connected</source> @@ -3452,11 +3454,11 @@ Acest director este folosit, dacă nu este explicit specificat altfel, atunci c </message> <message> <source>Reset Host Key</source> - <translation type="unfinished"></translation> + <translation>Resetează tasta gazdă</translation> </message> <message> <source>Resets the key used as a Host Key in the VM window.</source> - <translation type="unfinished"></translation> + <translation>Resetează tasta care este folosită pe post de Tastă gazdă în fereastra MV.</translation> </message> </context> <context> @@ -3731,7 +3733,7 @@ Acest director este folosit, dacă nu este explicit specificat altfel, atunci c </message> <message> <source>Displays the address of the DHCP server servicing the network associated with this host-only adapter.</source> - <translation type="unfinished"></translation> + <translation>Arată adresa serverului DHCP în funcțione în rețeaua asociată acestei plăci de rețea numai-gazdă.</translation> </message> <message> <source>Server &Mask:</source> @@ -3782,7 +3784,7 @@ Acest director este folosit, dacă nu este explicit specificat altfel, atunci c </message> <message> <source>Check for:</source> - <translation type="unfinished"></translation> + <translation>Verifică după:</translation> </message> <message> <source><p>Choose this if you only wish to be notified about stable updates to VirtualBox.</p></source> @@ -3790,7 +3792,7 @@ Acest director este folosit, dacă nu este explicit specificat altfel, atunci c </message> <message> <source>&Stable release versions</source> - <translation type="unfinished"></translation> + <translation>Lansări versiuni &stabile</translation> </message> <message> <source><p>Choose this if you wish to be notified about all new VirtualBox releases.</p></source> @@ -3798,7 +3800,7 @@ Acest director este folosit, dacă nu este explicit specificat altfel, atunci c </message> <message> <source>&All new releases</source> - <translation type="unfinished"></translation> + <translation>&Toate noile lansări</translation> </message> <message> <source><p>Choose this to be notified about all new VirtualBox releases and pre-release versions of VirtualBox.</p></source> @@ -3806,7 +3808,7 @@ Acest director este folosit, dacă nu este explicit specificat altfel, atunci c </message> <message> <source>All new releases and &pre-releases</source> - <translation type="unfinished"></translation> + <translation>Toate noile lansări și &prelansări</translation> </message> </context> <context> @@ -4671,7 +4673,8 @@ Acest director este folosit, dacă nu este explicit specificat altfel, atunci c <message> <source>Setting Up</source> <comment>MachineState</comment> - <translation type="unfinished"></translation> + <translatorcomment>hmm</translatorcomment> + <translation>Se configurează</translation> </message> <message> <source>Differencing</source> @@ -4766,12 +4769,12 @@ Acest director este folosit, dacă nu este explicit specificat altfel, atunci c <message> <source>Processor(s)</source> <comment>details report</comment> - <translation type="unfinished"></translation> + <translation>Procesoare</translation> </message> <message> <source><nobr>%1</nobr></source> <comment>details report</comment> - <translation type="unfinished"></translation> + <translation><nobr>%1</nobr></translation> </message> <message> <source>System</source> @@ -4791,7 +4794,7 @@ Acest director este folosit, dacă nu este explicit specificat altfel, atunci c <message> <source>Disabled</source> <comment>details report (VRDP Server)</comment> - <translation type="unfinished"></translation> + <translation>Dezactivat</translation> </message> <message> <source>Display</source> @@ -4806,27 +4809,27 @@ Acest director este folosit, dacă nu este explicit specificat altfel, atunci c <message> <source>Enabled</source> <comment>details report (2D Video Acceleration)</comment> - <translation type="unfinished"></translation> + <translation>Activată</translation> </message> <message> <source>Disabled</source> <comment>details report (2D Video Acceleration)</comment> - <translation type="unfinished"></translation> + <translation>Dezactivată</translation> </message> <message> <source>2D Video Acceleration</source> <comment>details report</comment> - <translation type="unfinished"></translation> + <translation>Accelerare video 2D</translation> </message> <message> <source>Not Attached</source> <comment>details report (Storage)</comment> - <translation type="unfinished">Neconectat</translation> + <translation>Neconectat</translation> </message> <message> <source>Storage</source> <comment>details report</comment> - <translation type="unfinished">Stocare</translation> + <translation>Stocare</translation> </message> <message> <source>Teleported</source> @@ -4866,7 +4869,7 @@ Acest director este folosit, dacă nu este explicit specificat altfel, atunci c <message> <source>Floppy</source> <comment>StorageBus</comment> - <translation type="unfinished">Dischetă</translation> + <translation>Dischetă</translation> </message> <message> <source>Device %1</source> @@ -4993,60 +4996,60 @@ Acest director este folosit, dacă nu este explicit specificat altfel, atunci c </message> <message numerus="yes"> <source>%n year(s)</source> - <translation type="unfinished"> - <numerusform></numerusform> + <translation> + <numerusform>%n ani</numerusform> <numerusform></numerusform> <numerusform></numerusform> </translation> </message> <message numerus="yes"> <source>%n month(s)</source> - <translation type="unfinished"> - <numerusform></numerusform> + <translation> + <numerusform>%n luni</numerusform> <numerusform></numerusform> <numerusform></numerusform> </translation> </message> <message numerus="yes"> <source>%n day(s)</source> - <translation type="unfinished"> - <numerusform></numerusform> + <translation> + <numerusform>%n zile</numerusform> <numerusform></numerusform> <numerusform></numerusform> </translation> </message> <message numerus="yes"> <source>%n hour(s)</source> - <translation type="unfinished"> - <numerusform></numerusform> + <translation> + <numerusform>%n ore</numerusform> <numerusform></numerusform> <numerusform></numerusform> </translation> </message> <message numerus="yes"> <source>%n minute(s)</source> - <translation type="unfinished"> - <numerusform></numerusform> + <translation> + <numerusform>%n minute</numerusform> <numerusform></numerusform> <numerusform></numerusform> </translation> </message> <message numerus="yes"> <source>%n second(s)</source> - <translation type="unfinished"> - <numerusform></numerusform> + <translation> + <numerusform>%n secunde</numerusform> <numerusform></numerusform> <numerusform></numerusform> </translation> </message> <message> <source>(CD/DVD)</source> - <translation type="unfinished"></translation> + <translation>(CD/DVD)</translation> </message> <message> <source>Screens</source> <comment>details report</comment> - <translation type="unfinished"></translation> + <translation>Ecrane</translation> </message> <message> <source>VDE network, '%1'</source> @@ -5056,7 +5059,7 @@ Acest director este folosit, dacă nu este explicit specificat altfel, atunci c <message> <source>SAS</source> <comment>StorageBus</comment> - <translation type="unfinished"></translation> + <translation>SATA</translation> </message> <message> <source>VDE Adapter</source> @@ -5081,37 +5084,37 @@ Acest director este folosit, dacă nu este explicit specificat altfel, atunci c <message> <source>KB</source> <comment>size suffix KBytes=1024 Bytes</comment> - <translation type="unfinished"></translation> + <translation>KO</translation> </message> <message> <source>MB</source> <comment>size suffix MBytes=1024 KBytes</comment> - <translation type="unfinished">MO</translation> + <translation>MO</translation> </message> <message> <source>GB</source> <comment>size suffix GBytes=1024 MBytes</comment> - <translation type="unfinished"></translation> + <translation>GO</translation> </message> <message> <source>TB</source> <comment>size suffix TBytes=1024 GBytes</comment> - <translation type="unfinished"></translation> + <translation>TO</translation> </message> <message> <source>PB</source> <comment>size suffix PBytes=1024 TBytes</comment> - <translation type="unfinished"></translation> + <translation>PO</translation> </message> <message> <source>Enabled</source> <comment>nested paging</comment> - <translation type="unfinished"></translation> + <translation>Activată</translation> </message> <message> <source>Disabled</source> <comment>nested paging</comment> - <translation type="unfinished"></translation> + <translation>Dezactivată</translation> </message> <message> <source>Nested Paging</source> @@ -5120,7 +5123,7 @@ Acest director este folosit, dacă nu este explicit specificat altfel, atunci c <message> <source>Shareable</source> <comment>DiskType</comment> - <translation type="unfinished"></translation> + <translation>Partajabil</translation> </message> </context> <context> @@ -5723,7 +5726,7 @@ Folosiți meniul contextual sau butaonele din dreapta pentru a adâuga sau șter <name>VBoxHelpButton</name> <message> <source>&Help</source> - <translation type="unfinished">&Ajutor</translation> + <translation>&Ajutor</translation> </message> </context> <context> @@ -5967,17 +5970,17 @@ Folosiți meniul contextual sau butaonele din dreapta pentru a adâuga sau șter <message> <source>Attached to</source> <comment>VMM: Virtual Disk</comment> - <translation type="unfinished">Conectat la</translation> + <translation>Conectat la</translation> </message> <message> <source>Attached to</source> <comment>VMM: CD/DVD Image</comment> - <translation type="unfinished">Conectat la</translation> + <translation>Conectată la</translation> </message> <message> <source>Attached to</source> <comment>VMM: Floppy Image</comment> - <translation type="unfinished">Conectat la</translation> + <translation>Conectată la</translation> </message> </context> <context> @@ -6034,7 +6037,7 @@ Folosiți meniul contextual sau butaonele din dreapta pentru a adâuga sau șter <name>VBoxNetworkDialog</name> <message> <source>Network Adapters</source> - <translation type="unfinished"></translation> + <translation>Plăci de rețea</translation> </message> </context> <context> @@ -6886,11 +6889,11 @@ Folosiți meniul contextual sau butaonele din dreapta pentru a adâuga sau șter </message> <message> <source>Close VM</source> - <translation type="unfinished">Închide MV</translation> + <translation>Închide MV</translation> </message> <message> <source>Continue</source> - <translation type="unfinished">Continuă</translation> + <translation>Continuă</translation> </message> <message> <source>Discard</source> @@ -6898,20 +6901,20 @@ Folosiți meniul contextual sau butaonele din dreapta pentru a adâuga sau șter </message> <message> <source>Cancel</source> - <translation type="unfinished"></translation> + <translation>Renunță</translation> </message> <message> <source><p>There are hard disks attached to ports of the additional controller. If you disable the additional controller, all these hard disks will be automatically detached.</p><p>Are you sure you want to disable the additional controller?</p></source> - <translation type="unfinished"></translation> + <translation><p>Există discuri hard atașate la porturile contrlolorului adițional. Dacă dezactivați controlorul adițional, toate aceste discuri dure vor fi deconectate automat.</p><p>Sigur doriți dezactivarea controlorului adițional?</p></translation> </message> <message> <source><p>There are hard disks attached to ports of the additional controller. If you change the additional controller, all these hard disks will be automatically detached.</p><p>Are you sure you want to change the additional controller?</p></source> - <translation type="unfinished"></translation> + <translation><p>Există discuri dure atașate la porturile contrlolorului adițional. Dacă dezactivați controlorul adițional, toate aceste discuri dure vor fi deconectate automat.</p><p>Sigur doriți dezactivarea controlorului adițional?</p></translation> </message> <message> <source>Change</source> <comment>hard disk</comment> - <translation type="unfinished"></translation> + <translation>Modifică</translation> </message> <message> <source><p>Do you want to remove the selected host network interface <nobr><b>%1</b>?</nobr></p><p><b>Note:</b> This interface may be in use by one or more network adapters of this or another VM. After it is removed, these adapters will no longer work until you correct their settings by either choosing a different interface name or a different adapter attachment type.</p></source> @@ -6919,7 +6922,7 @@ Folosiți meniul contextual sau butaonele din dreapta pentru a adâuga sau șter </message> <message> <source>Failed to create the host-only network interface.</source> - <translation type="unfinished"></translation> + <translation>Crearea interfeței de rețea numai-gazdă a eșuat.</translation> </message> <message> <source><p>Your existing VirtualBox settings files will be automatically converted from the old format to a new format required by the new version of VirtualBox.</p><p>Press <b>OK</b> to start VirtualBox now or press <b>Exit</b> if you want to terminate the VirtualBox application without any further actions.</p></source> @@ -6995,7 +6998,7 @@ Folosiți meniul contextual sau butaonele din dreapta pentru a adâuga sau șter </message> <message> <source>Restore</source> - <translation type="unfinished"></translation> + <translation>Restabilește</translation> </message> <message> <source><p>Deleting the snapshot will cause the state information saved in it to be lost, and disk data spread over several image files that VirtualBox has created together with the snapshot will be merged into one file. This can be a lengthy process, and the information in the snapshot cannot be recovered.</p></p>Are you sure you want to delete the selected snapshot <b>%1</b>?</p></source> @@ -7003,7 +7006,7 @@ Folosiți meniul contextual sau butaonele din dreapta pentru a adâuga sau șter </message> <message> <source>Delete</source> - <translation type="unfinished">Șterge</translation> + <translation>Șterge</translation> </message> <message> <source>Failed to restore the snapshot <b>%1</b> of the virtual machine <b>%2</b>.</source> @@ -7020,12 +7023,12 @@ Folosiți meniul contextual sau butaonele din dreapta pentru a adâuga sau șter <message> <source>&Create</source> <comment>medium</comment> - <translation type="unfinished">&Creează</translation> + <translation>&Creează</translation> </message> <message> <source>&Select</source> <comment>medium</comment> - <translation type="unfinished">&Selectare</translation> + <translation>&Selectează</translation> </message> <message> <source><p>There are no unused media available for the newly created attachment.</p><p>Press the <b>Select</b> if you wish to open the <i>Virtual Media Manager</i>.</p></source> @@ -7070,7 +7073,7 @@ Folosiți meniul contextual sau butaonele din dreapta pentru a adâuga sau șter <message> <source>E&xit</source> <comment>warnAboutSettingsAutoConversion message box</comment> - <translation type="unfinished">Ieși&re</translation> + <translation>Ieși&re</translation> </message> <message> <source><p>The following VirtualBox settings files will be automatically converted from the old format to a new format required by the new version of VirtualBox.</p><p>Press <b>OK</b> to start VirtualBox now or press <b>Exit</b> if you want to terminate the VirtualBox application without any further actions.</p></source> @@ -7099,22 +7102,22 @@ Folosiți meniul contextual sau butaonele din dreapta pentru a adâuga sau șter <message> <source>floppy image</source> <comment>failed to mount ...</comment> - <translation type="unfinished">imagine dischetă</translation> + <translation>imagine dischetă</translation> </message> <message> <source>hard disk</source> <comment>failed to attach ...</comment> - <translation type="unfinished"></translation> + <translation>disc dur</translation> </message> <message> <source>CD/DVD device</source> <comment>failed to attach ...</comment> - <translation type="unfinished"></translation> + <translation>dispozitiv CD/DVD</translation> </message> <message> <source>floppy device</source> <comment>failed to close ...</comment> - <translation type="unfinished"></translation> + <translation>dispozitiv dischetă</translation> </message> <message> <source><p>Are you sure you want to delete the CD/DVD-ROM device?</p><p>You will not be able to mount any CDs or ISO images or install the Guest Additions without it!</p></source> @@ -7123,7 +7126,7 @@ Folosiți meniul contextual sau butaonele din dreapta pentru a adâuga sau șter <message> <source>&Remove</source> <comment>medium</comment> - <translation type="unfinished"></translation> + <translation>Ș&terge</translation> </message> <message> <source><p>VT-x/AMD-V hardware acceleration is not available on your system. Your 64-bit guest will fail to detect a 64-bit CPU and will not be able to boot.</source> @@ -7178,29 +7181,29 @@ Folosiți meniul contextual sau butaonele din dreapta pentru a adâuga sau șter <name>VBoxProgressDialog</name> <message> <source>&Cancel</source> - <translation type="unfinished">&Revocare</translation> + <translation>&Renunță</translation> </message> <message> <source>A few seconds remaining</source> - <translation type="unfinished"></translation> + <translation>Câteva secudne rămase</translation> </message> <message> <source>Canceling...</source> - <translation type="unfinished"></translation> + <translation>Se anulează...</translation> </message> <message> <source>Cancel the current operation</source> - <translation type="unfinished"></translation> + <translation>Anulează operația curentă</translation> </message> <message> <source>%1, %2 remaining</source> <comment>You may wish to translate this more like "Time remaining: %1, %2"</comment> - <translation type="unfinished"></translation> + <translation>Timp rămas: %1, %2</translation> </message> <message> <source>%1 remaining</source> <comment>You may wish to translate this more like "Time remaining: %1"</comment> - <translation type="unfinished"></translation> + <translation>Timp rămas: %1</translation> </message> </context> <context> @@ -7349,15 +7352,15 @@ Folosiți meniul contextual sau butaonele din dreapta pentru a adâuga sau șter <name>VBoxScreenshotViewer</name> <message> <source>Screenshot of %1 (%2)</source> - <translation type="unfinished"></translation> + <translation>Captură de ecran a %1 (%2)</translation> </message> <message> <source>Click to view non-scaled screenshot.</source> - <translation type="unfinished"></translation> + <translation>Faceți clic pentru a vedea captura de ecran la dimensiunea reală</translation> </message> <message> <source>Click to view scaled screenshot.</source> - <translation type="unfinished"></translation> + <translation>Faceți clic pentru a vedea captura de ecran scalată</translation> </message> </context> <context> @@ -7457,7 +7460,7 @@ Folosiți meniul contextual sau butaonele din dreapta pentru a adâuga sau șter </message> <message> <source>D&iscard</source> - <translation>Renun&ță</translation> + <translation>Anu&lează starea salvată</translation> </message> <message> <source>Discard</source> @@ -7557,7 +7560,7 @@ Folosiți meniul contextual sau butaonele din dreapta pentru a adâuga sau șter </message> <message> <source>S&tart</source> - <translation>S&tart</translation> + <translation>Porneș&te</translation> </message> <message> <source>Start</source> @@ -7887,23 +7890,23 @@ pentru a-l accesa dintr-un SO Linux. Această funcție necesită Guest Additions </message> <message> <source>Click to enlarge the screenshot.</source> - <translation type="unfinished"></translation> + <translation>Faceți clic pentru a mări captura de ecran.</translation> </message> <message> <source>&Name:</source> - <translation type="unfinished">&Nume:</translation> + <translation>&Nume:</translation> </message> <message> <source>Taken:</source> - <translation type="unfinished"></translation> + <translation>Luat:</translation> </message> <message> <source>&Description:</source> - <translation type="unfinished"></translation> + <translation>&Descriere:</translation> </message> <message> <source>D&etails:</source> - <translation type="unfinished"></translation> + <translation>&Detalii:</translation> </message> </context> <context> @@ -8082,27 +8085,27 @@ pentru a-l accesa dintr-un SO Linux. Această funcție necesită Guest Additions </message> <message> <source> (%1)</source> - <translation type="unfinished"></translation> + <translation> (%1)</translation> </message> <message> <source>&Restore Snapshot</source> - <translation type="unfinished"></translation> + <translation>&Restabilește instantaneu</translation> </message> <message> <source>&Delete Snapshot</source> - <translation type="unfinished"></translation> + <translation>Ș&terge instantaneu</translation> </message> <message> <source>Restore the selected snapshot of the virtual machine</source> - <translation type="unfinished"></translation> + <translation>Restabilește instantaneul selectat al mașinii virtuale</translation> </message> <message> <source>Delete the selected snapshot of the virtual machine</source> - <translation type="unfinished"></translation> + <translation>Șterge instantaneul selectat al mașinii virtuale</translation> </message> <message> <source> (%1 ago)</source> - <translation type="unfinished"></translation> + <translation> (acum %1)</translation> </message> </context> <context> @@ -8158,8 +8161,6 @@ pentru a-l accesa dintr-un SO Linux. Această funcție necesită Guest Additions <source>Warning: You are taking a snapshot of a running machine which has %n immutable image(s) attached to it. As long as you are working from this snapshot the immutable image(s) will not be reset to avoid loss of data.</source> <translation type="unfinished"> <numerusform></numerusform> - <numerusform></numerusform> - <numerusform></numerusform> </translation> </message> </context> @@ -8179,7 +8180,7 @@ pentru a-l accesa dintr-un SO Linux. Această funcție necesită Guest Additions </message> <message> <source>Text (*.txt);;All (*.*)</source> - <translation type="unfinished"></translation> + <translation>Text (*.txt);;Toate fișierele (*.*)</translation> </message> <message> <source>Select a file to open...</source> @@ -8771,19 +8772,19 @@ value.</qt></source> <message> <source>Not Available</source> <comment>details report (VRDP server port)</comment> - <translation type="unfinished"></translation> + <translation>Indisponibil</translation> </message> <message> <source>Storage Statistics</source> - <translation type="unfinished"></translation> + <translation>Statistici stocare</translation> </message> <message> <source>No Storage Devices</source> - <translation type="unfinished"></translation> + <translation>Lipsă dispozitive de stocare</translation> </message> <message> <source>Network Statistics</source> - <translation type="unfinished"></translation> + <translation>Statistici rețea</translation> </message> </context> <context> @@ -9395,7 +9396,7 @@ value.</qt></source> </message> <message> <source>&Remote Display</source> - <translation type="unfinished"></translation> + <translation>Ecran la &distanță</translation> </message> <message> <source>When checked, the VM will act as a Remote Desktop Protocol (RDP) server, allowing remote clients to connect and operate the VM (when it is running) using a standard RDP client.</source> @@ -9439,7 +9440,7 @@ value.</qt></source> </message> <message> <source>Enable &2D Video Acceleration</source> - <translation type="unfinished"></translation> + <translation>Activează accelerarea video &2D</translation> </message> <message> <source>The VRDP Server port number. You may specify <tt>0</tt> (zero), to select port 3389, the standard port for RDP.</source> @@ -9447,15 +9448,15 @@ value.</qt></source> </message> <message> <source>Mo&nitor Count:</source> - <translation type="unfinished"></translation> + <translation>&Număr monitoare:</translation> </message> <message> <source>Controls the amount of virtual monitors provided to the virtual machine.</source> - <translation type="unfinished"></translation> + <translation>Controlează numărul de monitoare virtuale oferite mașinii virtuale.</translation> </message> <message> <source><qt>%1</qt></source> - <translation type="unfinished"></translation> + <translation><qt>%1</qt></translation> </message> </context> <context> @@ -10853,11 +10854,11 @@ makes the guest see an audio card, however every access to it will be ignored.&l </message> <message> <source>If checked, show the Mini ToolBar at the top of the screen, rather than in its default position at the bottom of the screen.</source> - <translation type="unfinished"></translation> + <translation>Dacă este bifată, poziționează minibara în partea de sus a ecranului, deși poziția implicită este la baza ecranului.</translation> </message> <message> <source>Show At &Top Of Screen</source> - <translation type="unfinished"></translation> + <translation>Poziționează &sus</translation> </message> </context> <context> @@ -10928,7 +10929,7 @@ makes the guest see an audio card, however every access to it will be ignored.&l </message> <message> <source><nobr><b>%1</b></nobr><br><nobr>Bus:&nbsp;&nbsp;%2</nobr><br><nobr>Type:&nbsp;&nbsp;%3</nobr></source> - <translation type="unfinished"></translation> + <translation><nobr><b>%1</b></nobr><br><nobr>Magistrală:&nbsp;&nbsp;%2</nobr><br><nobr>Tip:&nbsp;&nbsp;%3</nobr></translation> </message> <message> <source><nobr>Expand/Collapse&nbsp;Item</nobr></source> @@ -10956,47 +10957,47 @@ makes the guest see an audio card, however every access to it will be ignored.&l </message> <message> <source>Add Controller</source> - <translation type="unfinished"></translation> + <translation>Adaugă controlor</translation> </message> <message> <source>Add IDE Controller</source> - <translation type="unfinished"></translation> + <translation>Adaugă controlor IDE</translation> </message> <message> <source>Add SATA Controller</source> - <translation type="unfinished"></translation> + <translation>Adaugă controlor SATA</translation> </message> <message> <source>Add SCSI Controller</source> - <translation type="unfinished"></translation> + <translation>Adaugă controlor SCSI</translation> </message> <message> <source>Add Floppy Controller</source> - <translation type="unfinished"></translation> + <translation>Adaugă controlor dischetă</translation> </message> <message> <source>Remove Controller</source> - <translation type="unfinished"></translation> + <translation>Șterge controlor</translation> </message> <message> <source>Add Attachment</source> - <translation type="unfinished">Adaugă atașament</translation> + <translation>Adaugă atașament</translation> </message> <message> <source>Add Hard Disk</source> - <translation type="unfinished"></translation> + <translation>Adaugă disc dur</translation> </message> <message> <source>Add CD/DVD Device</source> - <translation type="unfinished"></translation> + <translation>Adaugă dispozitiv CD/DVD</translation> </message> <message> <source>Add Floppy Device</source> - <translation type="unfinished"></translation> + <translation>Adaugă unitate de dischetă</translation> </message> <message> <source>Remove Attachment</source> - <translation type="unfinished">Șterge atașament</translation> + <translation>Șterge atașament</translation> </message> <message> <source>Adds a new controller to the end of the Storage Tree.</source> @@ -11020,39 +11021,39 @@ makes the guest see an audio card, however every access to it will be ignored.&l </message> <message> <source>SATA Controller</source> - <translation type="unfinished"></translation> + <translation>Controlor SATA</translation> </message> <message> <source>SCSI Controller</source> - <translation type="unfinished"></translation> + <translation>Controlor SCSI</translation> </message> <message> <source>Floppy Controller</source> - <translation type="unfinished"></translation> + <translation>Controlor unitate de dischetă</translation> </message> <message> <source>Hard &Disk:</source> - <translation type="unfinished"></translation> + <translation>Disc &dur:</translation> </message> <message> <source>&CD/DVD Device:</source> - <translation type="unfinished"></translation> + <translation>Dispozitiv &CD/DVD:</translation> </message> <message> <source>&Floppy Device:</source> - <translation type="unfinished"></translation> + <translation>Unitate de &dischetă:</translation> </message> <message> <source>&Storage Tree</source> - <translation type="unfinished"></translation> + <translation>Arbore de &stocare:</translation> </message> <message> <source>Contains all storage controllers for this machine and the virtual images and host drives attached to them.</source> - <translation type="unfinished"></translation> + <translation>Conține toate controlerele de stocare ale acestei mașini și imaginile virtuale și unitățile gazdă atașate la ele.</translation> </message> <message> <source>Information</source> - <translation type="unfinished"></translation> + <translation>Informație</translation> </message> <message> <source>The Storage Tree can contain several controllers of different types. This machine currently has no controllers.</source> @@ -11060,27 +11061,27 @@ makes the guest see an audio card, however every access to it will be ignored.&l </message> <message> <source>Attributes</source> - <translation type="unfinished"></translation> + <translation>Proprietăți</translation> </message> <message> <source>&Name:</source> - <translation type="unfinished">&Nume:</translation> + <translation>&Nume:</translation> </message> <message> <source>Changes the name of the storage controller currently selected in the Storage Tree.</source> - <translation type="unfinished"></translation> + <translation>Schimba numele controlorului de stocare selectat în Arborele de stocare.</translation> </message> <message> <source>&Type:</source> - <translation type="unfinished"></translation> + <translation>&Tip:</translation> </message> <message> <source>Selects the sub-type of the storage controller currently selected in the Storage Tree.</source> - <translation type="unfinished"></translation> + <translation>Alege subtipul controlorului de stocare selectat în Arborele de stocare</translation> </message> <message> <source>S&lot:</source> - <translation type="unfinished"></translation> + <translation>S&lot:</translation> </message> <message> <source>Selects the slot on the storage controller used by this attachment. The available slots depend on the type of the controller and other attachments on it.</source> @@ -11096,7 +11097,7 @@ makes the guest see an audio card, however every access to it will be ignored.&l </message> <message> <source>Open Virtual Media Manager</source> - <translation type="unfinished"></translation> + <translation>Deschide Administratorul medii virtuale</translation> </message> <message> <source>D&ifferencing Disks</source> @@ -11112,51 +11113,51 @@ makes the guest see an audio card, however every access to it will be ignored.&l </message> <message> <source>Virtual Size:</source> - <translation type="unfinished"></translation> + <translation>Dimensiune virtuală:</translation> </message> <message> <source>Actual Size:</source> - <translation type="unfinished"></translation> + <translation>Dimensiune reală:</translation> </message> <message> <source>Size:</source> - <translation type="unfinished"></translation> + <translation>Dimensiune:</translation> </message> <message> <source>Location:</source> - <translation type="unfinished"></translation> + <translation>Amplasare:</translation> </message> <message> <source>Type (Format):</source> - <translation type="unfinished"></translation> + <translation>Tip (Format):</translation> </message> <message> <source>Attached To:</source> - <translation type="unfinished"></translation> + <translation>Conectat la:</translation> </message> <message> <source>Allows to use host I/O caching capabilities.</source> - <translation type="unfinished"></translation> + <translation>Permite folosirea capabilităților de caching I/O ale gazdei.</translation> </message> <message> <source>Use host I/O cache</source> - <translation type="unfinished"></translation> + <translation>Folosește I/O cache gazdă</translation> </message> <message> <source>Add SAS Controller</source> - <translation type="unfinished"></translation> + <translation>Adaugă controlor SAS</translation> </message> <message> <source>SAS Controller</source> - <translation type="unfinished"></translation> + <translation>Controlor SAS</translation> </message> <message> <source>Storage Controller</source> - <translation type="unfinished"></translation> + <translation>Controlor stocare</translation> </message> <message> <source>Storage Controller 1</source> - <translation type="unfinished"></translation> + <translation>Controlor stocare 1</translation> </message> </context> <context> @@ -11207,11 +11208,11 @@ makes the guest see an audio card, however every access to it will be ignored.&l </message> <message> <source>Displays the MAC address of this adapter. It contains exactly 12 characters chosen from {0-9,A-F}. Note that the second character must be an even digit.</source> - <translation type="unfinished">Afișează adresa MAC a acestei plăci de rețea. Conține exact 12 caractere alese din {0-9,A-F}. Notați faptul că al doile caracter trebuie să fie un număr par.</translation> + <translation>Afișează adresa MAC a acestei plăci de rețea. Conține exact 12 caractere alese din {0-9,A-F}. Notați faptul că al doilea caracter trebuie să fie un număr par.</translation> </message> <message> <source>Generates a new random MAC address.</source> - <translation type="unfinished">Generează o nouă adresă MAC aleatoare.</translation> + <translation>Generează o nouă adresă MAC aleatoare.</translation> </message> <message> <source>&Generate</source> @@ -11219,7 +11220,7 @@ makes the guest see an audio card, however every access to it will be ignored.&l </message> <message> <source>Indicates whether the virtual network cable is plugged in on machine startup or not.</source> - <translation type="unfinished">Indică dacă rețeaua virtuală este conectată la mașină la pornire sau nu.</translation> + <translation>Indică dacă rețeaua virtuală este conectată sau nu la pornirea mașinii virtuale.</translation> </message> <message> <source>Ca&ble Connected</source> @@ -11277,7 +11278,7 @@ makes the guest see an audio card, however every access to it will be ignored.&l </message> <message> <source>Adapter &Type:</source> - <translation type="unfinished"></translation> + <translation>&Tip placă:</translation> </message> <message> <source>no bridged network adapter is selected</source> @@ -11294,11 +11295,11 @@ makes the guest see an audio card, however every access to it will be ignored.&l <message> <source>Not selected</source> <comment>network adapter name</comment> - <translation type="unfinished"></translation> + <translation>Neselectat</translation> </message> <message> <source>&Name:</source> - <translation type="unfinished">&Nume:</translation> + <translation>&Nume:</translation> </message> <message> <source>Selects the name of the network adapter for <b>Bridged Adapter</b> or <b>Host-only Adapter</b> attachments and the name of the network <b>Internal Network</b> attachments.</source> @@ -11306,19 +11307,19 @@ makes the guest see an audio card, however every access to it will be ignored.&l </message> <message> <source>A&dvanced</source> - <translation type="unfinished"></translation> + <translation>A&vansat</translation> </message> <message> <source>Shows or hides additional network adapter options.</source> - <translation type="unfinished"></translation> + <translation>Arată sau ascunde opțiuni adiționale pentru placa de rețea.</translation> </message> <message> <source>&Mac Address:</source> - <translation type="unfinished"></translation> + <translation>Adresă &MAC:</translation> </message> <message> <source>&Cable connected</source> - <translation type="unfinished">Ca&blu de rețea conectat</translation> + <translation>Ca&blu de rețea conectat</translation> </message> </context> <context> @@ -11412,11 +11413,11 @@ makes the guest see an audio card, however every access to it will be ignored.&l </message> <message> <source>Displays the IRQ number of this parallel port. This should be a whole number between <tt>0</tt> and <tt>255</tt>. Values greater than <tt>15</tt> may only be used if the <b>IO APIC</b> setting is enabled for this virtual machine.</source> - <translation type="unfinished"></translation> + <translation>Afișează numărul IRQ al acestui port paralel. Valori valide sunt întregi între <tt>0</tt> și <tt>255</tt>. Valorile mai mari decât <tt>15</tt> pot fi folosite numai dacă <b>IO ACPI</b> este activ pentru această mașină virtuală.</translation> </message> <message> <source>Displays the base I/O port address of this parallel port. Valid values are integer numbers in range from <tt>0</tt> to <tt>0xFFFF</tt>.</source> - <translation type="unfinished"></translation> + <translation>Afișează adresa portului I/O de bază pentru acest port paralel. Valori valide sunt întregi între <tt>0</tt> și <tt>0xFFFF</tt>.</translation> </message> </context> <context> @@ -11494,23 +11495,23 @@ makes the guest see an audio card, however every access to it will be ignored.&l </message> <message> <source> Global Folders</source> - <translation type="unfinished"></translation> + <translation>Dosare globale</translation> </message> <message> <source>&Add Shared Folder</source> - <translation type="unfinished"></translation> + <translation>&Adaugă dosar partajat</translation> </message> <message> <source>&Edit Shared Folder</source> - <translation type="unfinished"></translation> + <translation>&Modifică dosar partajat</translation> </message> <message> <source>&Remove Shared Folder</source> - <translation type="unfinished"></translation> + <translation>Ște&rge dosar partajat</translation> </message> <message> <source>&Folders List</source> - <translation type="unfinished"></translation> + <translation>&Listă dosare</translation> </message> </context> <context> @@ -11621,11 +11622,11 @@ makes the guest see an audio card, however every access to it will be ignored.&l </message> <message> <source>Displays the IRQ number of this serial port. This should be a whole number between <tt>0</tt> and <tt>255</tt>. Values greater than <tt>15</tt> may only be used if the <b>IO APIC</b> setting is enabled for this virtual machine.</source> - <translation type="unfinished"></translation> + <translation>Afișează numărul IRQ al acestui port paralel. Valori valide sunt întregi între <tt>0</tt> și <tt>255</tt>. Valorile mai mari decât <tt>15</tt> pot fi folosite numai dacă <b>IO ACPI</b> este activ pentru această mașină virtuală.</translation> </message> <message> <source>Displays the base I/O port address of this serial port. Valid values are integer numbers in range from <tt>0</tt> to <tt>0xFFFF</tt>.</source> - <translation type="unfinished"></translation> + <translation>Afișează adresa portului I/O de bază pentru acest port paralel. Valori valide sunt întregi între <tt>0</tt> și <tt>0xFFFF</tt>.</translation> </message> </context> <context> @@ -11647,15 +11648,15 @@ makes the guest see an audio card, however every access to it will be ignored.&l <name>VBoxVMSettingsSystem</name> <message> <source>you have assigned more than <b>%1%</b> of your computer's memory (<b>%2</b>) to the virtual machine. Not enough memory is left for your host operating system. Please select a smaller amount.</source> - <translation type="unfinished"></translation> + <translation>ați asociat mașinii virtuale mai mult de <b>%1%</b> din memoria computerului dvs (<b>%2</b>). Memoria rămasă pentru sistemul de operare gazdă este insuficientă. Vă rugăm selectați o cantitate mai mică.</translation> </message> <message> <source>you have assigned more than <b>%1%</b> of your computer's memory (<b>%2</b>) to the virtual machine. There might not be enough memory left for your host operating system. Continue at your own risk.</source> - <translation type="unfinished"></translation> + <translation>ați asociat mașinii virtuale mai mult de <b>%1%</b> din memoria computerului dvs (<b>%2</b>). Memoria rămasă pentru sistemul de operare gazdă ar putea fi insuficientă. Continuați pe propriul dvs. risc.</translation> </message> <message> <source>for performance reasons, the number of virtual CPUs attached to the virtual machine may not be more than twice the number of physical CPUs on the host (<b>%1</b>). Please reduce the number of virtual CPUs.</source> - <translation type="unfinished"></translation> + <translation>din motive de performanță, numărul de procesoare virtuale atașat la mașina virtuală nu poate fi mai mare decât de două ori numărulde procesoare fizice de pe gazdă (<b>%1</b>). Vă rugăm micșorați numărul de procesoare virtuale.</translation> </message> <message> <source>you have assigned more virtual CPUs to the virtual machine than the number of physical CPUs on your host system (<b>%1</b>). This is likely to degrade the performance of your virtual machine. Please consider reducing the number of virtual CPUs.</source> @@ -11753,27 +11754,27 @@ makes the guest see an audio card, however every access to it will be ignored.&l </message> <message> <source>When checked, the Physical Address Extension (PAE) feature of the host CPU will be exposed to the virtual machine.</source> - <translation type="unfinished">Când este bifat, CPU gazdă va expune opțiunea PAE (Extensie de adresă fizică) către mașina virtuală.</translation> + <translation>Când este bifat, procesorul gazdă va expune opțiunea PAE (extensie de adresă fizică) către mașina virtuală.</translation> </message> <message> <source>Enable PA&E/NX</source> - <translation type="unfinished">Activează PA&E/NX</translation> + <translation>Activează PA&E/NX</translation> </message> <message> <source>Acce&leration</source> - <translation type="unfinished"></translation> + <translation>Acce&lerare</translation> </message> <message> <source>Hardware Virtualization:</source> - <translation type="unfinished"></translation> + <translation>Virtualizare hardware:</translation> </message> <message> <source>When checked, the virtual machine will try to make use of the host CPU's hardware virtualization extensions such as Intel VT-x and AMD-V.</source> - <translation type="unfinished">Când este bifat, mașina virtuală va încerca să folosească extensiile de virtualizare hardware a CPU-ului, cum ar fi Intel VT-x sau AMD-V.</translation> + <translation>Când este bifat, mașina virtuală va încerca să folosească extensiile de virtualizare hardware a procesorului, cum ar fi Intel VT-x sau AMD-V.</translation> </message> <message> <source>Enable &VT-x/AMD-V</source> - <translation type="unfinished">Activează &VT-x/AMD-V</translation> + <translation>Activează &VT-x/AMD-V</translation> </message> <message> <source>When checked, the virtual machine will try to make use of the nested paging extension of Intel VT-x and AMD-V.</source> @@ -11786,7 +11787,7 @@ makes the guest see an audio card, however every access to it will be ignored.&l <message> <source><qt>%1&nbsp;CPUs</qt></source> <comment>%1 is host cpu count * 2 for now</comment> - <translation type="unfinished"><qt>%1&nbsp;CPU-uri</qt></translation> + <translation><qt>%1&nbsp;procesoare</qt></translation> </message> <message> <source>When checked, the guest will support the Extended Firmware Interface (EFI), which is required to boot certain guest OSes. Non-EFI aware OSes will not be able to boot if this option is activated.</source> diff --git a/src/VBox/Frontends/VirtualBox/nls/VirtualBox_ru.ts b/src/VBox/Frontends/VirtualBox/nls/VirtualBox_ru.ts index 2edbea197..23980fb72 100644 --- a/src/VBox/Frontends/VirtualBox/nls/VirtualBox_ru.ts +++ b/src/VBox/Frontends/VirtualBox/nls/VirtualBox_ru.ts @@ -396,7 +396,7 @@ <name>QIWizardPage</name> <message> <source>Use the <b>%1</b> button to go to the next page of the wizard and the <b>%2</b> button to return to the previous page. You can also press <b>%3</b> if you want to cancel the execution of this wizard.</p></source> - <translation type="unfinished"></translation> + <translation>Используйте кнопку <b>%1</b> чтобы перейти к следующей странице мастера, либо кнопку <b>%2</b> чтобы вернуться к предыдущей. Вы также можете воспользоваться кнопкой <b>%3</b> если хотите прервать работу мастера вовсе.</p></translation> </message> </context> <context> @@ -407,7 +407,7 @@ </message> <message> <source>The download process has been canceled by the user.</source> - <translation type="unfinished"></translation> + <translation>Процесс загрузки файла был прерван пользователем.</translation> </message> </context> <context> @@ -437,7 +437,7 @@ <name>UIDownloaderUserManual</name> <message> <source>Select folder to save User Manual to</source> - <translation type="unfinished"></translation> + <translation>Выберите каталог для размещения Руководства Пользователя</translation> </message> </context> <context> @@ -460,7 +460,7 @@ </message> <message> <source>Appliance Export Wizard</source> - <translation>Мастер экспорта конфигурации</translation> + <translation>Мастер экспорта конфигураций</translation> </message> <message> <source>Welcome to the Appliance Export Wizard!</source> @@ -583,116 +583,116 @@ p, li { white-space: pre-wrap; } <name>UIExportApplianceWzdPage1</name> <message> <source>Welcome to the Appliance Export Wizard!</source> - <translation type="unfinished">Добро пожаловать в мастер экспорта конфигурации!</translation> + <translation>Мастер экспорта конфигураций</translation> </message> <message> <source><p>This wizard will guide you through the process of exporting an appliance.</p><p>%1</p><p>Please select the virtual machines that should be added to the appliance. You can select more than one. Please note that these machines have to be turned off before they can be exported.</p></source> - <translation type="unfinished"></translation> + <translation><p>Данный мастер поможет Вам осуществить процесс экспорта конфигураций виртуальных машин.</p><p>%1</p><p>Пожалуйста выберете виртуальные машины, конфигурации которых должны быть экспортированы. Вы можете выбрать несколько виртуальных машин, но пожалуйста учтите, что выбранные машины должны быть выключены перед тем, как экспортирование станет возможным.</p></translation> </message> </context> <context> <name>UIExportApplianceWzdPage2</name> <message> <source>Here you can change additional configuration values of the selected virtual machines. You can modify most of the properties shown by double-clicking on the items.</source> - <translation type="unfinished">Здесь Вы можете изменить дополнительные параметры конфигурации выбранных виртуальных машин. Большинство из указанных параметров можно поменять двойным щелчком мыши на выбранном элементе.</translation> + <translation>Здесь Вы можете изменить дополнительные параметры конфигураций выбранных виртуальных машин. Большинство из указанных параметров можно изменить дважды щёлкнув мышью на выбранном элементе.</translation> </message> <message> <source>Appliance Export Settings</source> - <translation type="unfinished">Опции экспорта конфигурации</translation> + <translation>Опции экспорта конфигураций</translation> </message> </context> <context> <name>UIExportApplianceWzdPage3</name> <message> <source>Please specify the target for the OVF export. You can choose between a local file system export, uploading the OVF to the Sun Cloud service or an S3 storage server.</source> - <translation type="unfinished">Пожалуйста укажите точку экспорта OVF. Вы можете экспортировать OVF в локальную файловую систему, а также выгрузить OVF либо на сервер Sun Cloud либо на сервер хранилище S3.</translation> + <translation>Пожалуйста укажите точку экспорта OVF. Вы можете сохранить OVF в локальной файловой системе, а также выгрузить OVF используя сервис Sun Cloud либо на любой другой сервер-хранилище S3.</translation> </message> <message> <source>&Local Filesystem </source> - <translation type="unfinished">&Локальная файловая система</translation> + <translation>&Локальная файловая система</translation> </message> <message> <source>Sun &Cloud</source> - <translation type="unfinished">С&ервис Sun Cloud</translation> + <translation>С&ервис Sun Cloud</translation> </message> <message> <source>&Simple Storage System (S3)</source> - <translation type="unfinished">Сервер &хранилище S3</translation> + <translation>Сервер &хранилище S3</translation> </message> <message> <source>Appliance Export Settings</source> - <translation type="unfinished">Опции экспорта конфигурации</translation> + <translation>Опции экспорта конфигураций</translation> </message> </context> <context> <name>UIExportApplianceWzdPage4</name> <message> <source>&Username:</source> - <translation type="unfinished">&Имя пользователя:</translation> + <translation>&Имя пользователя:</translation> </message> <message> <source>&Password:</source> - <translation type="unfinished">&Пароль:</translation> + <translation>&Пароль:</translation> </message> <message> <source>&Hostname:</source> - <translation type="unfinished">Имя х&оста:</translation> + <translation>Имя х&оста:</translation> </message> <message> <source>&Bucket:</source> - <translation type="unfinished">Х&ранилище:</translation> + <translation>Х&ранилище:</translation> </message> <message> <source>&File:</source> - <translation type="unfinished">&Файл:</translation> + <translation>&Файл:</translation> </message> <message> <source>Write in legacy OVF 0.9 format for compatibility with other virtualization products.</source> - <translation type="unfinished">Сохранить в формате OVF 0.9 для совместимости с остальными продуктами виртуализации.</translation> + <translation>Сохранить в формате OVF 0.9 для совместимости с остальными программными средствами виртуализации.</translation> </message> <message> <source>&Write legacy OVF 0.9</source> - <translation type="unfinished">&Сохранить в формате OVF 0.9</translation> + <translation>&Сохранить в формате OVF 0.9</translation> </message> <message> <source>Appliance Export Settings</source> - <translation type="unfinished">Опции экспорта конфигурации</translation> + <translation>Опции экспорта конфигураций</translation> </message> <message> <source>Appliance</source> - <translation type="unfinished">Конфигурация</translation> + <translation>Конфигурация</translation> </message> <message> <source>Select a file to export into</source> - <translation type="unfinished">Укажите имя файла для экспорта конфигурации</translation> + <translation>Укажите имя файла для экспорта конфигураций</translation> </message> <message> <source>Open Virtualization Format (%1)</source> - <translation type="unfinished">Открытый Формат Виртуализации (%1)</translation> + <translation>Открытый Формат Виртуализации (%1)</translation> </message> <message> <source>Please choose a filename to export the OVF to.</source> - <translation type="unfinished">Пожалуйста укажите имя файла для экспорта OVF.</translation> + <translation>Пожалуйста укажите имя файла для экспорта OVF.</translation> </message> <message> <source>Please complete the additional fields like the username, password and the bucket, and provide a filename for the OVF target.</source> - <translation type="unfinished">Пожалуйста заполните дополнительные поля такие как имя пользователя, пароль и имя хранилища. В конце укажите имя файла-цели для экспорта OVF.</translation> + <translation>Пожалуйста заполните дополнительные поля такие как имя пользователя, пароль и имя хранилища. В конце укажите имя файла-цели для экспорта OVF.</translation> </message> <message> <source>Please complete the additional fields like the username, password, hostname and the bucket, and provide a filename for the OVF target.</source> - <translation type="unfinished">Пожалуйста заполните дополнительные поля такие как имя пользователя, пароль, имя хоста и имя хранилища. В конце укажите имя файла-цели для экспорта OVF.</translation> + <translation>Пожалуйста заполните дополнительные поля такие как имя пользователя, пароль, имя хоста и имя хранилища. В конце укажите имя файла-цели для экспорта OVF.</translation> </message> <message> <source>Checking files ...</source> - <translation type="unfinished">Проверка файлов ...</translation> + <translation>Проверка файлов ...</translation> </message> <message> <source>Removing files ...</source> - <translation type="unfinished">Удаление файлов ...</translation> + <translation>Удаление файлов ...</translation> </message> <message> <source>Exporting Appliance ...</source> - <translation type="unfinished">Экспорт конфигурации ...</translation> + <translation>Экспорт конфигураций ...</translation> </message> </context> <context> @@ -829,71 +829,71 @@ p, li { white-space: pre-wrap; } <name>UIFirstRunWzdPage1</name> <message> <source>Welcome to the First Run Wizard!</source> - <translation type="unfinished">Мастер первого запуска</translation> + <translation>Мастер первого запуска</translation> </message> <message> <source><p>You have started a newly created virtual machine for the first time. This wizard will help you to perform the steps necessary for installing an operating system of your choice onto this virtual machine.</p><p>%1</p></source> - <translation type="unfinished"></translation> + <translation><p>Вы запустили вновь созданную машину первый раз. Данный мастер поможет Вам осуществить установку выбранной Вами операционной системы на данную машину.</p><p>%1</p></translation> </message> <message> <source><p>You have started a newly created virtual machine for the first time. This wizard will help you to perform the steps necessary for booting an operating system of your choice on the virtual machine.</p><p>Note that you will not be able to install an operating system into this virtual machine right now because you did not attach any hard disk to it. If this is not what you want, you can cancel the execution of this wizard, select <b>Settings</b> from the <b>Machine</b> menu of the main VirtualBox window to access the settings dialog of this machine and change the hard disk configuration.</p><p>%1</p></source> - <translation type="unfinished"></translation> + <translation><p>Вы запустили вновь созданную машину первый раз. Данный мастер поможет Вам осуществить загрузку выбранной Вами операционной системы на данной машине.</p><p>Учтите, что в данный момент Вы не имеете возможности установить операционную систему на данную машину, поскольку Вы не подсоединили к ней ни одного жёсткого диска. Если это не то, что Вы планировали, Вы можете прервать выполнение данного мастера, выбрать <b>Свойства</b> из меню <b>Машина</b> главного окна VirtualBox для доступа к настройкам данной машины и исправить конфигурацию жёстких дисков по Вашему усмотрению.</p><p>%1</p></translation> </message> </context> <context> <name>UIFirstRunWzdPage2</name> <message> <source><p>Select the media which contains the setup program of the operating system you want to install. This media must be bootable, otherwise the setup program will not be able to start.</p></source> - <translation type="unfinished"><p>Выберите носитель, который содержит программу установки операционной системы, которую Вы хотите установить. Этот носитель должен быть загрузочным, иначе программа установки не сможет начать работу.</p></translation> + <translation><p>Выберите носитель, который содержит программу установки операционной системы, которую Вы хотите установить. Этот носитель должен быть загрузочным, иначе программа установки не сможет начать работу.</p></translation> </message> <message> <source><p>Select the media that contains the operating system you want to work with. This media must be bootable, otherwise the operating system will not be able to start.</p></source> - <translation type="unfinished"><p>Выберите носитель, который содержит операционную систему, с которой Вы хотите работать. Этот носитель должен быть загрузочным, иначе операционная система не сможет начать работу.</p></translation> + <translation><p>Выберите носитель, который содержит операционную систему, с которой Вы хотите работать. Этот носитель должен быть загрузочным, иначе операционная система не сможет начать работу.</p></translation> </message> <message> <source>Media Source</source> - <translation type="unfinished">Носитель</translation> + <translation>Носитель</translation> </message> <message> <source>Select Installation Media</source> - <translation type="unfinished">Выберите установочный носитель</translation> + <translation>Выберите установочный носитель</translation> </message> </context> <context> <name>UIFirstRunWzdPage3</name> <message> <source><p>You have selected the following media to boot from:</p></source> - <translation type="unfinished"><p>Вы выбрали следующий носитель для загрузки виртуальной машины:</p></translation> + <translation><p>Вы выбрали следующий носитель для загрузки виртуальной машины:</p></translation> </message> <message> <source><p>You have selected the following media to boot an operating system from:</p></source> - <translation type="unfinished"><p>Вы выбрали следующий носитель для загрузки операционной системы:</p></translation> + <translation><p>Вы выбрали следующий носитель для загрузки операционной системы:</p></translation> </message> <message> <source><p>If the above is correct, press the <b>Finish</b> button. Once you press it, the selected media will be temporarily mounted on the virtual machine and the machine will start execution.</p><p>Please note that when you close the virtual machine, the specified media will be automatically unmounted and the boot device will be set back to the first hard disk.</p><p>Depending on the type of the setup program, you may need to manually unmount (eject) the media after the setup program reboots the virtual machine, to prevent the installation process from starting again. You can do this by selecting the corresponding <b>Unmount...</b> action in the <b>Devices</b> menu.</p></source> - <translation type="unfinished"><p>Если вышесказанное верно, нажмите кнопку <b>Готово</b>. В результате этого действия, выбранное устройство будет временно подключено (диск вставлен) к виртуальной машине, после чего машина будет запущена.</p><p>Учтите, что как только Вы закроете виртуальную машину, данное устройство будет автоматически отключено (диск изъят) и машина в дальнейшем будет грузиться с первого из жестких дисков.</p><p>В зависимости от типа установочного приложения и для предотвращения его повторного запуска, Вам, возможно, придётся вручную отключить устройство (изъять диск) после того, как установочное приложение перезагрузит виртуальную машину. Вы можете выполнить данное действие выбрав соответствующий пункт <b>Извлечь...</b> меню <b>Устройства</b>.</p></translation> + <translation><p>Если вышесказанное верно, нажмите кнопку <b>Готово</b>. В результате этого действия, выбранное устройство будет временно подключено (диск вставлен) к виртуальной машине, после чего машина будет запущена.</p><p>Учтите, что как только Вы закроете виртуальную машину, данное устройство будет автоматически отключено (диск изъят) и машина в дальнейшем будет грузиться с первого из жестких дисков.</p><p>В зависимости от типа установочного приложения и для предотвращения его повторного запуска, Вам, возможно, придётся вручную отключить устройство (изъять диск) после того, как установочное приложение перезагрузит виртуальную машину. Вы можете выполнить данное действие выбрав соответствующий пункт <b>Извлечь...</b> меню <b>Устройства</b>.</p></translation> </message> <message> <source><p>If the above is correct, press the <b>Finish</b> button. Once you press it, the selected media will be mounted on the virtual machine and the machine will start execution.</p></source> - <translation type="unfinished"><p>Если приведенная выше информация верна, нажмите кнопку <b>Готово</b>. После этого, указанный носитель будет подключен к виртуальной машине, и машина начнет загрузку с этого носителя.</p></translation> + <translation><p>Если приведенная выше информация верна, нажмите кнопку <b>Готово</b>. После этого, указанный носитель будет подключен к виртуальной машине, и машина начнет загрузку с этого носителя.</p></translation> </message> <message> <source>Summary</source> - <translation type="unfinished">Итог</translation> + <translation>Итог</translation> </message> <message> <source>CD/DVD-ROM Device</source> - <translation type="unfinished">Привод оптических дисков</translation> + <translation>Привод оптических дисков</translation> </message> <message> <source>Type</source> <comment>summary</comment> - <translation type="unfinished">Тип</translation> + <translation>Тип</translation> </message> <message> <source>Source</source> <comment>summary</comment> - <translation type="unfinished">Носитель</translation> + <translation>Носитель</translation> </message> </context> <context> @@ -908,7 +908,7 @@ p, li { white-space: pre-wrap; } </message> <message> <source>Appliance Import Wizard</source> - <translation>Мастер импорта конфигурации</translation> + <translation>Мастер импорта конфигураций</translation> </message> <message> <source>Welcome to the Appliance Import Wizard!</source> @@ -963,30 +963,30 @@ p, li { white-space: pre-wrap; } <name>UIImportApplianceWzdPage1</name> <message> <source>Select an appliance to import</source> - <translation type="unfinished">Укажите файл конфигурации для импорта</translation> + <translation>Укажите файл конфигураций для импорта</translation> </message> <message> <source>Open Virtualization Format (%1)</source> - <translation type="unfinished">Открытый Формат Виртуализации (%1)</translation> + <translation>Открытый Формат Виртуализации (%1)</translation> </message> <message> <source>Welcome to the Appliance Import Wizard!</source> - <translation type="unfinished">Добро пожаловать в мастер импорта конфигурации!</translation> + <translation>Мастер импорта конфигураций</translation> </message> <message> <source><p>This wizard will guide you through importing an appliance.</p><p>%1</p><p>VirtualBox currently supports importing appliances saved in the Open Virtualization Format (OVF). To continue, select the file to import below:</p></source> - <translation type="unfinished"></translation> + <translation><p>Данный мастер поможет Вам осуществить процесс импорта конфигураций.</p><p>%1</p><p>VirtualBox в настоящий момент поддерживает импорт конфигураций, сохранённых в Открытом Виртуализационном Формате (OVF). Для того чтобы продолжить, Вам необходимо выбрать файл для импорта:</p></translation> </message> </context> <context> <name>UIImportApplianceWzdPage2</name> <message> <source>These are the virtual machines contained in the appliance and the suggested settings of the imported VirtualBox machines. You can change many of the properties shown by double-clicking on the items and disable others using the check boxes below.</source> - <translation type="unfinished">Далее перечислены виртуальные машины и их устройства, описанные в конфигурации, для импорта в VirtualBox. Большинство из указанных параметров можно изменить двойным щелчком мыши на выбранном элементе, либо отключить используя соответствующие галочки.</translation> + <translation>Далее перечислены виртуальные машины и их устройства, описанные в конфигурации, для импорта в VirtualBox. Большинство из указанных параметров можно изменить дважды щёлкнув мышью на выбранном элементе, либо отключить используя соответствующие галочки.</translation> </message> <message> <source>Appliance Import Settings</source> - <translation type="unfinished">Опции импорта конфигурации</translation> + <translation>Опции импорта конфигураций</translation> </message> </context> <context> @@ -1028,63 +1028,63 @@ p, li { white-space: pre-wrap; } <name>UIMachineLogic</name> <message> <source>VirtualBox OSE</source> - <translation type="unfinished">VirtualBox OSE</translation> + <translation>VirtualBox OSE</translation> </message> <message> <source> EXPERIMENTAL build %1r%2 - %3</source> - <translation type="unfinished">ЭКСПЕРИМЕНТАЛЬНАЯ версия %1r%2 - %3</translation> + <translation>ЭКСПЕРИМЕНТАЛЬНАЯ версия %1р%2 - %3</translation> </message> </context> <context> <name>UIMiniProcessWidgetAdditions</name> <message> <source>Cancel</source> - <translation type="unfinished">Отмена</translation> + <translation>Отмена</translation> </message> <message> <source>Cancel the VirtualBox Guest Additions CD image download</source> - <translation type="unfinished">Отменить скачивание CD-образа пакета Дополнений гостевой ОС</translation> + <translation>Отменить скачивание CD-образа пакета Дополнений гостевой ОС</translation> </message> <message> <source>Downloading the VirtualBox Guest Additions CD image from <nobr><b>%1</b>...</nobr></source> - <translation type="unfinished">Скачивается CD-образ пакета Дополнений гостевой ОС с <nobr><b>%1</b>...</nobr></translation> + <translation>Скачивается CD-образ пакета Дополнений гостевой ОС с <nobr><b>%1</b>...</nobr></translation> </message> </context> <context> <name>UIMiniProcessWidgetUserManual</name> <message> <source>Cancel</source> - <translation type="unfinished">Отмена</translation> + <translation>Отмена</translation> </message> <message> <source>Cancel the VirtualBox User Manual download</source> - <translation type="unfinished"></translation> + <translation>Отменить скачивание Руководства Пользователя</translation> </message> <message> <source>Downloading the VirtualBox User Manual</source> - <translation type="unfinished"></translation> + <translation>Скачивается Руководство Пользователя</translation> </message> <message> <source>Downloading the VirtualBox User Manual <nobr><b>%1</b>...</nobr></source> - <translation type="unfinished"></translation> + <translation>Скачивается Руководство Пользователя <nobr><b>%1</b>...</nobr></translation> </message> </context> <context> <name>UIMultiScreenLayout</name> <message> <source>Virtual Screen %1</source> - <translation type="unfinished"></translation> + <translation>Виртуальный экран %1</translation> </message> <message> <source>Use Host Screen %1</source> - <translation type="unfinished"></translation> + <translation>Использовать дисплей хоста %1</translation> </message> </context> <context> <name>UINewHDWzd</name> <message> <source>Create New Virtual Disk</source> - <translation>Создать новый виртуальный диск</translation> + <translation>Создать новый виртуальный жёсткий диск</translation> </message> <message> <source>Welcome to the Create New Virtual Disk Wizard!</source> @@ -1199,103 +1199,103 @@ p, li { white-space: pre-wrap; } <name>UINewHDWzdPage1</name> <message> <source>Welcome to the Create New Virtual Disk Wizard!</source> - <translation type="unfinished">Мастер создания нового виртуального диска</translation> + <translation>Мастер создания нового виртуального жёсткого диска</translation> </message> <message> <source><p>This wizard will help you to create a new virtual hard disk for your virtual machine.</p><p>%1</p></source> - <translation type="unfinished"></translation> + <translation><p>Данный мастер поможет Вам осуществить создание нового виртуального жёсткого диска для Вашей виртуальной машины.</p><p>%1</p></translation> </message> </context> <context> <name>UINewHDWzdPage2</name> <message> <source><p>Select the type of virtual hard disk you want to create.</p><p>A <b>dynamically expanding storage</b> initially occupies a very small amount of space on your physical hard disk. It will grow dynamically (up to the size specified) as the Guest OS claims disk space.</p><p>A <b>fixed-size storage</b> does not grow. It is stored in a file of approximately the same size as the size of the virtual hard disk. The creation of a fixed-size storage may take a long time depending on the storage size and the write performance of your harddisk.</p></source> - <translation type="unfinished"><p>Выберите тип виртуального жесткого диска, который Вы хотите создать.</p><p><b>Динамически расширяющийся образ</b> первоначально занимает очень мало места на физическом жестком диске. Он будет динамически расти (до заданного размера) по мере того, как гостевая ОС использует дисковое пространство.</p><p><b>Образ фиксированного размера</b> не увеличивается. Он хранится в файле примерно того же размера, что и размер виртуального жесткого диска. Создание жесткого диска фиксированного размера может занять длительное время, в зависимости от размера образа и производительности физического диска.</p></translation> + <translation><p>Выберите тип образа виртуального жёсткого диска, который Вы хотите создать.</p><p><b>Динамически расширяющийся образ</b> первоначально занимает очень мало места на физическом жёстком диске. Он будет динамически расти (до заданного размера) по мере того, как гостевая ОС использует дисковое пространство.</p><p><b>Образ фиксированного размера</b> не увеличивается. Он хранится в файле примерно того же размера, что и размер виртуального жёсткого диска. Создание жёсткого диска фиксированного размера может занять длительное время, в зависимости от размера образа и производительности физического диска.</p></translation> </message> <message> <source>Storage Type</source> - <translation type="unfinished">Тип файла</translation> + <translation>Тип образа виртуального жёсткого диска</translation> </message> <message> <source>&Dynamically expanding storage</source> - <translation type="unfinished">Д&инамически расширяющийся образ</translation> + <translation>Д&инамически расширяющийся образ</translation> </message> <message> <source>&Fixed-size storage</source> - <translation type="unfinished">Образ &фиксированного размера</translation> + <translation>Образ &фиксированного размера</translation> </message> <message> <source>Hard Disk Storage Type</source> - <translation type="unfinished">Тип виртуального диска</translation> + <translation>Тип образа виртуального жёсткого диска</translation> </message> </context> <context> <name>UINewHDWzdPage3</name> <message> <source><p>Press the <b>Select</b> button to select the location of a file to store the hard disk data or type a file name in the entry field.</p></source> - <translation type="unfinished"><p>Нажмите кнопку <b>Выбрать</b> для выбора расположения и имени файла виртуального жесткого диска или введите имя файла в поле ввода.</p></translation> + <translation><p>Нажмите кнопку <b>Выбрать</b> для выбора расположения и имени файла виртуального жёсткого диска или введите имя файла в поле ввода.</p></translation> </message> <message> <source>&Location</source> - <translation type="unfinished">&Расположение</translation> + <translation>&Расположение</translation> </message> <message> <source><p>Select the size of the virtual hard disk in megabytes. This size will be reported to the Guest OS as the maximum size of this hard disk.</p></source> - <translation type="unfinished"><p>Выберите размер виртуального жесткого диска в мегабайтах. Указанный размер будет фигурировать в гостевой ОС в качестве размера данного жесткого диска.</p></translation> + <translation><p>Выберите размер виртуального жёсткого диска в мегабайтах. Указанный размер будет фигурировать в гостевой ОС в качестве размера данного жёсткого диска.</p></translation> </message> <message> <source>&Size</source> - <translation type="unfinished">Р&азмер</translation> + <translation>Р&азмер</translation> </message> <message> <source>Virtual Disk Location and Size</source> - <translation type="unfinished">Местоположение и размер виртуального диска</translation> + <translation>Местоположение и размер виртуального жёсткого диска</translation> </message> <message> <source>Select a file for the new hard disk image file</source> - <translation type="unfinished">Выберите файл для образа нового жесткого диска</translation> + <translation>Выберите файл для образа нового жёсткого диска</translation> </message> <message> <source>Hard disk images (*.vdi)</source> - <translation type="unfinished">Образы жестких дисков (*.vdi)</translation> + <translation>Образы жёстких дисков (*.vdi)</translation> </message> <message> <source><nobr>%1 (%2 B)</nobr></source> - <translation type="unfinished"></translation> + <translation><nobr>%1 (%2 Б)</nobr></translation> </message> </context> <context> <name>UINewHDWzdPage4</name> <message> <source>You are going to create a new virtual hard disk with the following parameters:</source> - <translation type="unfinished">Вы собираетесь создать виртуальный жесткий диск со следующими параметрами:</translation> + <translation>Вы собираетесь создать виртуальный жёсткий диск со следующими параметрами:</translation> </message> <message> <source>Summary</source> - <translation type="unfinished">Итог</translation> + <translation>Итог</translation> </message> <message> <source>%1 B</source> - <translation type="unfinished"></translation> + <translation>%1 Б</translation> </message> <message> <source>Type</source> <comment>summary</comment> - <translation type="unfinished">Тип</translation> + <translation>Тип</translation> </message> <message> <source>Location</source> <comment>summary</comment> - <translation type="unfinished">Расположение</translation> + <translation>Расположение</translation> </message> <message> <source>Size</source> <comment>summary</comment> - <translation type="unfinished">Размер</translation> + <translation>Размер</translation> </message> <message> <source>If the above settings are correct, press the <b>%1</b> button. Once you press it, a new hard disk will be created.</source> - <translation type="unfinished"></translation> + <translation>Если приведенная выше информация верна, нажмите кнопку <b>%1</b>. После этого будет создан новый жёсткий диск.</translation> </message> </context> <context> @@ -1438,125 +1438,125 @@ p, li { white-space: pre-wrap; } <name>UINewVMWzdPage1</name> <message> <source>Welcome to the New Virtual Machine Wizard!</source> - <translation type="unfinished">Мастер создания новой виртуальной машины</translation> + <translation>Мастер создания новой виртуальной машины</translation> </message> <message> <source><p>This wizard will guide you through the steps that are necessary to create a new virtual machine for VirtualBox.</p><p>%1</p></source> - <translation type="unfinished"></translation> + <translation><p>Данный мастер поможет Вам осуществить создание новой виртуальной машины VirtualBox.</p><p>%1</p></translation> </message> </context> <context> <name>UINewVMWzdPage2</name> <message> <source><p>Enter a name for the new virtual machine and select the type of the guest operating system you plan to install onto the virtual machine.</p><p>The name of the virtual machine usually indicates its software and hardware configuration. It will be used by all VirtualBox components to identify your virtual machine.</p></source> - <translation type="unfinished"><p>Введите имя для новой виртуальной машины и выберите тип гостевой операционной системы, которую Вы планируете установить на эту машину.</p><p>Имя виртуальной машины обычно отражает ее программную и аппаратную конфигурацию. Это имя будет использоваться всеми приложениями VirtualBox для обозначения созданной виртуальной машины.</p></translation> + <translation><p>Введите имя для новой виртуальной машины и выберите тип гостевой операционной системы, которую Вы планируете установить на эту машину.</p><p>Имя виртуальной машины обычно отражает ее программную и аппаратную конфигурацию. Это имя будет использоваться всеми компонентами VirtualBox для обозначения данной виртуальной машины.</p></translation> </message> <message> <source>N&ame</source> - <translation type="unfinished">&Имя</translation> + <translation>&Имя</translation> </message> <message> <source>OS &Type</source> - <translation type="unfinished">&Тип ОС</translation> + <translation>&Тип ОС</translation> </message> <message> <source>VM Name and OS Type</source> - <translation type="unfinished">Имя машины и тип ОС</translation> + <translation>Имя машины и тип ОС</translation> </message> </context> <context> <name>UINewVMWzdPage3</name> <message> <source><p>Select the amount of base memory (RAM) in megabytes to be allocated to the virtual machine.</p></source> - <translation type="unfinished"><p>Выберите количество основной памяти (RAM) в мегабайтах, выделяемой виртуальной машине.</p></translation> + <translation><p>Выберите количество основной памяти (RAM или ОЗУ) в мегабайтах, выделяемой виртуальной машине.</p></translation> </message> <message> <source>Base &Memory Size</source> - <translation type="unfinished"></translation> + <translation>&Размер основной памяти</translation> </message> <message> <source>MB</source> - <translation type="unfinished">МБ</translation> + <translation>МБ</translation> </message> <message> <source>Memory</source> - <translation type="unfinished">Память</translation> + <translation>Память</translation> </message> <message> <source>The recommended base memory size is <b>%1</b> MB.</source> - <translation type="unfinished">Рекомендуемый размер основной памяти: <b>%1</b> Мб.</translation> + <translation>Рекомендуемый размер основной памяти: <b>%1</b> МБ.</translation> </message> <message> <source>MB</source> <comment>size suffix MBytes=1024 KBytes</comment> - <translation type="unfinished">МБ</translation> + <translation>МБ</translation> </message> </context> <context> <name>UINewVMWzdPage4</name> <message> <source><p>Select a hard disk image to be used as the boot hard disk of the virtual machine. You can either create a new hard disk using the <b>New</b> button or select an existing hard disk image from the drop-down list or by pressing the <b>Existing</b> button (to invoke the Virtual Media Manager dialog).</p><p>If you need a more complicated hard disk setup, you can also skip this step and attach hard disks later using the VM Settings dialog.</p></source> - <translation type="unfinished"><p>Выберите жесткий диск, который будет загрузочным диском виртуальной машины. Вы можете создать новый жесткий диск, нажав кнопку <b>Создать</b>, либо выбрать существующий из выпадающего списка или из Менеджера виртуальных носителей (который откроется при нажатии на кнопку <b>Существующий</b>).</p><p>Если Вам требуется более сложная конфигурация жестких дисков, то можно пропустить этот шаг и подсоединить жесткие диски позднее с помощью диалога Свойств машины.</p></translation> + <translation><p>Выберите жёсткий диск, который будет загрузочным диском виртуальной машины. Вы можете создать новый жёсткий диск, выбрав опцию <b>Создать новый жёсткий диск</b>, либо указать существующий, выбрав опцию <b>Использовать существующий жёсткий диск</b>, а затем выбрать диск из выпадающего списка или из <b>Менеджера виртуальных носителей</b> (который откроется при нажатии на кнопку справа от списка).</p><p>Если Вам требуется более сложная конфигурация жёстких дисков, то можно пропустить этот шаг и подсоединить жёсткие диски позднее с помощью диалога настроек машины.</p></translation> </message> <message> - <source>Boot Hard &Disk (Primary Master)</source> - <translation type="unfinished">&Загрузочный жёсткий диск (первичный мастер)</translation> + <source>Boot Hard &Disk</source> + <translation>&Загрузочный жёсткий диск</translation> </message> <message> <source>&Create new hard disk</source> - <translation type="unfinished">&Создать новый жёсткий диск</translation> + <translation>&Создать новый жёсткий диск</translation> </message> <message> <source>&Use existing hard disk</source> - <translation type="unfinished">&Использовать существующий жёсткий диск</translation> + <translation>&Использовать существующий жёсткий диск</translation> </message> <message> <source>Virtual Hard Disk</source> - <translation type="unfinished">Виртуальный жесткий диск</translation> + <translation>Виртуальный жёсткий диск</translation> </message> <message> <source>The recommended size of the boot hard disk is <b>%1</b> MB.</source> - <translation type="unfinished">Рекомендуемый размер загрузочного жесткого диска: <b>%1</b> Мб.</translation> + <translation>Рекомендуемый размер загрузочного жёсткого диска: <b>%1</b> МБ.</translation> </message> </context> <context> <name>UINewVMWzdPage5</name> <message> <source><p>You are going to create a new virtual machine with the following parameters:</p></source> - <translation type="unfinished"><p>Вы собираетесь создать виртуальную машину со следующими параметрами:</p></translation> + <translation><p>Вы собираетесь создать виртуальную машину со следующими параметрами:</p></translation> </message> <message> <source>Summary</source> - <translation type="unfinished">Итог</translation> + <translation>Итог</translation> </message> <message> <source>Name</source> <comment>summary</comment> - <translation type="unfinished">Имя</translation> + <translation>Имя</translation> </message> <message> <source>OS Type</source> <comment>summary</comment> - <translation type="unfinished">Тип ОС</translation> + <translation>Тип ОС</translation> </message> <message> <source>Base Memory</source> <comment>summary</comment> - <translation type="unfinished">Основная память</translation> + <translation>Основная память</translation> </message> <message> <source>MB</source> <comment>size suffix MBytes=1024KBytes</comment> - <translation type="unfinished">МБ</translation> + <translation>МБ</translation> </message> <message> <source>Boot Hard Disk</source> <comment>summary</comment> - <translation type="unfinished">Загрузочный жесткий диск</translation> + <translation>Загрузочный жёсткий диск</translation> </message> <message> <source><p>If the above is correct press the <b>%1</b> button. Once you press it, a new virtual machine will be created. </p><p>Note that you can alter these and all other setting of the created virtual machine at any time using the <b>Settings</b> dialog accessible through the menu of the main window.</p></source> - <translation type="unfinished"></translation> + <translation><p>Если приведенная выше информация верна, нажмите кнопку <b>%1</b>. После этого будет создана новая виртуальная машина. </p><p>Обратите внимание, что эти и другие параметры созданной машины можно будет изменить в любое время с помощью диалога <b>Свойства</b>, доступ к которому можно получить через меню главного окна VirtualBox.</p></translation> </message> </context> <context> @@ -1706,12 +1706,12 @@ p, li { white-space: pre-wrap; } <message> <source>MB</source> <comment>size suffix MBytes=1024 KBytes</comment> - <translation type="unfinished">МБ</translation> + <translation>МБ</translation> </message> <message> <source>MB</source> <comment>size suffix MBytes=1024KBytes</comment> - <translation type="unfinished">МБ</translation> + <translation>МБ</translation> </message> </context> <context> @@ -2276,48 +2276,48 @@ p, li { white-space: pre-wrap; } </message> <message> <source>Dock Icon</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Иконка дока</translation> </message> <message> <source>Show Application Icon</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Показать иконку приложения</translation> </message> <message> <source>Show Monitor Preview</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Предпросмотр монитора</translation> </message> <message> <source><br><nobr><b>Adapter %1 (%2)</b>: %3 cable %4</nobr></source> <comment>Network adapters tooltip</comment> - <translation type="unfinished"></translation> + <translation><br><nobr><b>Адаптер %1 (%2)</b>: %3 кабель %4</nobr></translation> </message> <message> <source>ACPI Sh&utdown</source> - <translation type="unfinished"></translation> + <translation>В&ыключить через ACPI</translation> </message> <message> <source>&View</source> - <translation type="unfinished"></translation> + <translation>&Вид</translation> </message> <message> <source>Preview Monitor %1</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Предпросмотр монитора %1</translation> </message> <message> <source>No CD/DVD devices attached to that VM</source> - <translation type="unfinished"></translation> + <translation>Нет подсоединенных приводов оптических дисков</translation> </message> <message> <source>No floppy devices attached to that VM</source> - <translation type="unfinished"></translation> + <translation>Нет подсоединенных приводов гибких дисков</translation> </message> <message> <source>No USB Devices Connected</source> - <translation type="unfinished"></translation> + <translation>Нет подсоединенных USB устройств</translation> </message> <message> <source>No supported devices connected to the host PC</source> - <translation type="unfinished">Нет поддерживаемых устройств, подключенных к основному ПК</translation> + <translation>Нет поддерживаемых устройств, подключенных к хосту</translation> </message> </context> <context> @@ -2480,11 +2480,11 @@ p, li { white-space: pre-wrap; } </message> <message> <source>Reset Host Key</source> - <translation type="unfinished"></translation> + <translation>Сбросить</translation> </message> <message> <source>Resets the key used as a Host Key in the VM window.</source> - <translation type="unfinished"></translation> + <translation>Сбрасывает назначенную хост-клавишу в значение 'не установлено'.</translation> </message> </context> <context> @@ -3768,7 +3768,7 @@ p, li { white-space: pre-wrap; } <message> <source>Disabled</source> <comment>details report (2D Video Acceleration)</comment> - <translation>Отключено</translation> + <translation>Выключено</translation> </message> <message> <source>2D Video Acceleration</source> @@ -4003,81 +4003,81 @@ p, li { white-space: pre-wrap; } <message> <source>Screens</source> <comment>details report</comment> - <translation type="unfinished"></translation> + <translation>Мониторы</translation> </message> <message> <source>VDE network, '%1'</source> <comment>details report (network)</comment> - <translation type="unfinished"></translation> + <translation>VDE-сеть, '%1'</translation> </message> <message> <source>SAS</source> <comment>StorageBus</comment> - <translation type="unfinished"></translation> + <translation>SAS</translation> </message> <message> <source>VDE Adapter</source> <comment>NetworkAttachmentType</comment> - <translation type="unfinished"></translation> + <translation>VDE-Адаптер</translation> </message> <message> <source>LsiLogic SAS</source> <comment>StorageControllerType</comment> - <translation type="unfinished"></translation> + <translation>LsiLogic SAS</translation> </message> <message> <source>^(?:(?:(\d+)(?:\s?(B|KB|MB|GB|TB|PB))?)|(?:(\d*)%1(\d{1,2})(?:\s?(KB|MB|GB|TB|PB))))$</source> <comment>regexp for matching ####[.##] B|KB|MB|GB|TB|PB, %1=decimal point</comment> - <translation type="unfinished"></translation> + <translation>^(?:(?:(\d+)(?:\s?(Б|КБ|МБ|ГБ|ТБ|ПБ))?)|(?:(\d*)%1(\d{1,2})(?:\s?(КБ|МБ|ГБ|ТБ|ПБ))))$</translation> </message> <message> <source>B</source> <comment>size suffix Bytes</comment> - <translation type="unfinished"></translation> + <translation>Б</translation> </message> <message> <source>KB</source> <comment>size suffix KBytes=1024 Bytes</comment> - <translation type="unfinished"></translation> + <translation>КБ</translation> </message> <message> <source>MB</source> <comment>size suffix MBytes=1024 KBytes</comment> - <translation type="unfinished">МБ</translation> + <translation>МБ</translation> </message> <message> <source>GB</source> <comment>size suffix GBytes=1024 MBytes</comment> - <translation type="unfinished"></translation> + <translation>ГБ</translation> </message> <message> <source>TB</source> <comment>size suffix TBytes=1024 GBytes</comment> - <translation type="unfinished"></translation> + <translation>ТБ</translation> </message> <message> <source>PB</source> <comment>size suffix PBytes=1024 TBytes</comment> - <translation type="unfinished"></translation> + <translation>ПБ</translation> </message> <message> <source>Enabled</source> <comment>nested paging</comment> - <translation type="unfinished"></translation> + <translation>Включено</translation> </message> <message> <source>Disabled</source> <comment>nested paging</comment> - <translation type="unfinished"></translation> + <translation>Выключено</translation> </message> <message> <source>Nested Paging</source> - <translation type="unfinished"></translation> + <translation>Nested Paging</translation> </message> <message> <source>Shareable</source> <comment>DiskType</comment> - <translation type="unfinished"></translation> + <translation>С общим доступом</translation> </message> </context> <context> @@ -5344,51 +5344,51 @@ p, li { white-space: pre-wrap; } </message> <message> <source><p>VT-x/AMD-V hardware acceleration is not available on your system. Your 64-bit guest will fail to detect a 64-bit CPU and will not be able to boot.</source> - <translation type="unfinished"></translation> + <translation><p>Аппаратное ускорение (VT-x/AMD-V) не доступно в Вашей системе. Ваша 64х-битная гостевая операционная система не сможет определить 64х-битный процессор и, таким образом, не сможет загрузиться.</translation> </message> <message> <source><p>VT-x/AMD-V hardware acceleration is not available on your system. Certain guests (e.g. OS/2 and QNX) require this feature and will fail to boot without it.</p></source> - <translation type="unfinished"></translation> + <translation><p>Аппаратное ускорение (VT-x/AMD-V) не доступно в Вашей системе. Некоторым операционным системам (таким как OS/2 и QNX) данный функционал необходим, они не смогут загрузиться без него.</p></translation> </message> <message> <source><p>Deleting the snapshot %1 will temporarily need more disk space. In the worst case the size of image %2 will grow by %3, however on this filesystem there is only %4 free.</p><p>Running out of disk space during the merge operation can result in corruption of the image and the VM configuration, i.e. loss of the VM and its data.</p><p>You may continue with deleting the snapshot at your own risk.</p></source> - <translation type="unfinished"></translation> + <translation><p>Для удаление снимка %1 временно понадобится некоторое количество свободного дискового пространства. В самом худшем случае размер образа %2 увеличится на %3, однако в данной системе доступно лишь %4.</p><p>В случае нехватки свободного места в процессе операции объединения образов, может произойти критическая ошибка, что приведёт к повреждению образа и конфигурации виртуальной машины, иными словами - к потере данной машины и её данных.</p><p>Однако, Вы все же можете попытаться удалить данный снимок на свой страх и риск.</p></translation> </message> <message> <source><p>Could not change the guest screen to this host screen due to insufficient guest video memory.</p><p>You should configure the virtual machine to have at least <b>%1</b> of video memory.</p></source> - <translation type="unfinished"></translation> + <translation><p>Не удалось сопоставить монитор гостевой машины с данным монитором хоста из-за нехватки видео-памяти.</p><p>Вам следует настроить виртуальную машину таким образом, что бы она имела как минимум <b>%1</b> видео-памяти.</p></translation> </message> <message> <source><p>Could not change the guest screen to this host screen due to insufficient guest video memory.</p><p>You should configure the virtual machine to have at least <b>%1</b> of video memory.</p><p>Press <b>Ignore</b> to switch the screen anyway or press <b>Cancel</b> to cancel the operation.</p></source> - <translation type="unfinished"></translation> + <translation><p>Не удалось сопоставить монитор гостевой машины с данным монитором хоста из-за нехватки видео-памяти.</p><p>Вам следует настроить виртуальную машину таким образом, что бы она имела как минимум <b>%1</b> видео-памяти.</p><p>Нажмите кнопку <b>Игнорировать</b> чтобы попытаться это сделать в любом случае или <b>Отмена</b> чтобы прервать данную операцию.</p></translation> </message> <message> <source><p>Can not switch the guest display to fullscreen mode. You have more virtual screens configured than physical screens are attached to your host.</p><p>Please either lower the virtual screens in your VM configuration or attach additional screens to your host.</p></source> - <translation type="unfinished"></translation> + <translation><p>Не удалось переключить гостевую операционную систему в режим полного экрана. Данная машина настроена на поддержку большего количества виртуальных мониторов, чем реально имеется на Вашем хосте.</p><p>Пожалуйста уменьшите количество виртуальных мониторов в настройках Вашей машины, либо подключите дополнительные мониторы к Вашему хосту.</p></translation> </message> <message> <source><p>Can not switch the guest display to seamless mode. You have more virtual screens configured than physical screens are attached to your host.</p><p>Please either lower the virtual screens in your VM configuration or attach additional screens to your host.</p></source> - <translation type="unfinished"></translation> + <translation><p>Не удалось переключить гостевую операционную систему в режим интеграции экрана. Данная машина настроена на поддержку большего количества виртуальных мониторов, чем реально имеется на Вашем хосте.</p><p>Пожалуйста уменьшите количество виртуальных мониторов в настройках Вашей машины, либо подключите дополнительные мониторы к Вашему хосту.</p></translation> </message> <message> <source><p>Could not find the VirtualBox User Manual <nobr><b>%1</b>.</nobr></p><p>Do you wish to download this file from the Internet?</p></source> - <translation type="unfinished"></translation> + <translation><p>Не удалось обнаружить Руководство Пользователя VirtualBox <nobr><b>%1</b>.</nobr></p><p>Не желаете ли загрузить данный документ с сайта в сети Интернет?</p></translation> </message> <message> <source><p>Are you sure you want to download the VirtualBox User Manual from <nobr><a href="%1">%2</a></nobr> (size %3 bytes)?</p></source> - <translation type="unfinished"></translation> + <translation><p>Вы уверены, что хотите загрузить Руководство Пользователя VirtualBox, находящееся по адресу <nobr><a href="%1">%2</a></nobr> (размер %3 б)?</p></translation> </message> <message> <source><p>Failed to download the VirtualBox User Manual from <nobr><a href="%1">%2</a>.</nobr></p><p>%3</p></source> - <translation type="unfinished"></translation> + <translation><p>Не удалось загрузить Руководство Пользователя VirtualBox, находящееся по адресу <nobr><a href="%1">%2</a>.</nobr></p><p>%3</p></translation> </message> <message> <source><p>The VirtualBox User Manual has been successfully downloaded from <nobr><a href="%1">%2</a></nobr> and saved locally as <nobr><b>%3</b>.</nobr></p></source> - <translation type="unfinished"></translation> + <translation><p>Руководство Пользователя VirtualBox было успешно загружено с сетевого адреса <nobr><a href="%1">%2</a></nobr> и сохранено локально по адресу <nobr><b>%3</b>.</nobr></p></translation> </message> <message> <source><p>The VirtualBox User Manual has been successfully downloaded from <nobr><a href="%1">%2</a></nobr> but can't be saved locally as <nobr><b>%3</b>.</nobr></p><p>Please choose another location for that file.</p></source> - <translation type="unfinished"></translation> + <translation><p>Руководство Пользователя VirtualBox было успешно загружено с сетевого адреса <nobr><a href="%1">%2</a></nobr>, но не может быть сохранено локально по адресу <nobr><b>%3</b>.</nobr></p><p>Пожалуйста укажите иное местоположение для данного файла.</p></translation> </message> </context> <context> @@ -6585,15 +6585,15 @@ p, li { white-space: pre-wrap; } </message> <message> <source>Mo&nitor Count:</source> - <translation type="unfinished"></translation> + <translation>Количество &мониторов:</translation> </message> <message> <source>Controls the amount of virtual monitors provided to the virtual machine.</source> - <translation type="unfinished"></translation> + <translation>Задаёт количество виртуальных мониторов, подключенных к данной виртуальной машине.</translation> </message> <message> <source><qt>%1</qt></source> - <translation type="unfinished"></translation> + <translation><qt>%1</qt></translation> </message> </context> <context> @@ -6680,7 +6680,7 @@ p, li { white-space: pre-wrap; } </message> <message> <source>you have enabled a USB HID (Human Interface Device). This will not work unless USB emulation is also enabled. This will be done automatically when you accept the VM Settings by pressing the OK button.</source> - <translation type="unfinished"></translation> + <translation>Вы включили поддержку USB HID (устройства пользовательского интерфейса). Данная опция не работает без активированной USB эмуляции, поэтому USB эмуляция будет активирована в момент сохранения настроек виртуальной машины при закрытии данного диалога.</translation> </message> </context> <context> @@ -7245,27 +7245,27 @@ p, li { white-space: pre-wrap; } </message> <message> <source>Allows to use host I/O caching capabilities.</source> - <translation type="unfinished"></translation> + <translation>Позволяет использовать функции кеширования операций ввода/вывода данного хоста.</translation> </message> <message> <source>Use host I/O cache</source> - <translation type="unfinished"></translation> + <translation>Кеширование операций ввода/вывода</translation> </message> <message> <source>Add SAS Controller</source> - <translation type="unfinished"></translation> + <translation>Добавить SAS контроллер</translation> </message> <message> <source>SAS Controller</source> - <translation type="unfinished"></translation> + <translation>SAS контроллер</translation> </message> <message> <source>Storage Controller</source> - <translation type="unfinished"></translation> + <translation>Контроллер</translation> </message> <message> <source>Storage Controller 1</source> - <translation type="unfinished"></translation> + <translation>Контроллер 1</translation> </message> </context> <context> @@ -8008,23 +8008,23 @@ p, li { white-space: pre-wrap; } </message> <message> <source>If checked, the RTC device will report the time in UTC, otherwise in local (host) time. Unix usually expects the hardware clock to be set to UTC.</source> - <translation type="unfinished"></translation> + <translation>Если стоит галочка, часы Вашего хоста отобразят время по шкале всемирного координированного времени (UTC), иначе будет отображено локальное время хоста. Unix-подобные системы обычно придерживаются системы UTC.</translation> </message> <message> <source>Hardware clock in &UTC time</source> - <translation type="unfinished"></translation> + <translation>Часы в системе &UTC</translation> </message> <message> <source>Controls the number of virtual CPUs in the virtual machine. You need hardware virtualization support on your host system to use more than one virtual CPU.</source> - <translation type="unfinished"></translation> + <translation>Контролирует количество процессоров виртуальной машины. Вам необходима поддержка аппаратной виртуализации для задействования более одного процессора в виртуальной машине.</translation> </message> <message> <source>If checked, an absolute pointing device (a USB tablet) will be supported. Otherwise, only a standard PS/2 mouse will be emulated.</source> - <translation type="unfinished"></translation> + <translation>Если стоит галочка, будут поддерживаться абсолютные устройства позиционирования (такие как USB планшет). В противном случае, эмулированы будут лишь стандартные PS/2 мыши.</translation> </message> <message> <source>Enable &absolute pointing device</source> - <translation type="unfinished"></translation> + <translation>&Абсолютные устройства позиционирования</translation> </message> </context> <context> diff --git a/src/VBox/Frontends/VirtualBox/nls/VirtualBox_sk.ts b/src/VBox/Frontends/VirtualBox/nls/VirtualBox_sk.ts index 8143ffe6a..d1ba46758 100644 --- a/src/VBox/Frontends/VirtualBox/nls/VirtualBox_sk.ts +++ b/src/VBox/Frontends/VirtualBox/nls/VirtualBox_sk.ts @@ -1,6 +1,6 @@ <?xml version="1.0" encoding="utf-8"?> -<!DOCTYPE TS> -<TS version="2.0" language="sk"> +<!DOCTYPE TS><TS version="1.1" language="sk"> +<defaultcodec></defaultcodec> <context> <name>@@@</name> <message> @@ -125,7 +125,7 @@ </message> <message> <source>Unknown error %2 during initialization of the Runtime</source> - <translation type="unfinished"></translation> + <translation>Vyskytla sa neznáma chyba %2 pri spúšťaní</translation> </message> <message> <source>Kernel driver not accessible</source> @@ -141,7 +141,7 @@ </message> <message> <source>This error means that the kernel driver was either not able to allocate enough memory or that some mapping operation failed.</source> - <translation type="unfinished"></translation> + <translation>Táto chyba znamená, že ovládač jadra nebol schopný alokovať dostatok pamäte alebo zlyhala operácia mapovania.</translation> </message> </context> <context> @@ -440,7 +440,7 @@ <name>QIWizardPage</name> <message> <source>Use the <b>%1</b> button to go to the next page of the wizard and the <b>%2</b> button to return to the previous page. You can also press <b>%3</b> if you want to cancel the execution of this wizard.</p></source> - <translation type="unfinished"></translation> + <translation>Použite tlačidlo <b>%1</b> pre prechod na ďalšiu stránku sprievodcu a tlačidlo <b>%2</b> pre návrat na predchádzajúcu stránku. Ak chcete sprievodcu prerušiť, stlačte tlačidlo <b>%3</b>.</p></translation> </message> </context> <context> @@ -491,7 +491,7 @@ </message> <message> <source>The download process has been canceled by the user.</source> - <translation type="unfinished"></translation> + <translation>Proces sťahovania bol zrušený používateľom.</translation> </message> </context> <context> @@ -521,7 +521,7 @@ <name>UIDownloaderUserManual</name> <message> <source>Select folder to save User Manual to</source> - <translation type="unfinished"></translation> + <translation>Vyberte priečinok pre uloženie používateľskej príručky</translation> </message> </context> <context> @@ -536,7 +536,7 @@ </message> <message> <source>Appliance Export Wizard</source> - <translation type="unfinished"></translation> + <translation>Sprievodca exportom appliance</translation> </message> <message> <source>< &Back</source> @@ -607,116 +607,116 @@ <name>UIExportApplianceWzdPage1</name> <message> <source>Welcome to the Appliance Export Wizard!</source> - <translation type="unfinished"></translation> + <translation>Víta vás sprievodca exportom appliance!</translation> </message> <message> <source><p>This wizard will guide you through the process of exporting an appliance.</p><p>%1</p><p>Please select the virtual machines that should be added to the appliance. You can select more than one. Please note that these machines have to be turned off before they can be exported.</p></source> - <translation type="unfinished"></translation> + <translation><p>Tento sprievodca vás prevedie procesom exportu appliance.</p><p>%1</p><p>Vyberte prosím virtuálny počítač, ktorý bude pridaný do appliance. Môžete vybrať viac ako jeden. Majte prosím na pamäti, že pred exportom budú tieto virtuálne počítače vypnuté.</p></translation> </message> </context> <context> <name>UIExportApplianceWzdPage2</name> <message> <source>Here you can change additional configuration values of the selected virtual machines. You can modify most of the properties shown by double-clicking on the items.</source> - <translation type="unfinished"></translation> + <translation>Tu môžete zmeniť ďalšie nastavenia konfigurácie pre vybrané virtuálne počítače. Väčšinu zobrazených vlastností zmeníte dvojklikom na danú položku.</translation> </message> <message> <source>Appliance Export Settings</source> - <translation type="unfinished"></translation> + <translation>Nastavenia exportu appliance</translation> </message> </context> <context> <name>UIExportApplianceWzdPage3</name> <message> <source>Please specify the target for the OVF export. You can choose between a local file system export, uploading the OVF to the Sun Cloud service or an S3 storage server.</source> - <translation type="unfinished"></translation> + <translation>Zadajte, prosím, cieľ pre export OVF. Môžete si vybrať medzi lokálnym súborovým systémom, nahraním OVF na Sun Cloud alebo použitím služby S3 pre ukladanie.</translation> </message> <message> <source>&Local Filesystem </source> - <translation type="unfinished">&Miestny súborový systém </translation> + <translation>&Miestny súborový systém </translation> </message> <message> <source>Sun &Cloud</source> - <translation type="unfinished"></translation> + <translation>Sun &Cloud</translation> </message> <message> <source>&Simple Storage System (S3)</source> - <translation type="unfinished"></translation> + <translation>&Jednoduchý systém na ukladanie (S3)</translation> </message> <message> <source>Appliance Export Settings</source> - <translation type="unfinished"></translation> + <translation>Nastavenia exportu appliance</translation> </message> </context> <context> <name>UIExportApplianceWzdPage4</name> <message> <source>&Username:</source> - <translation type="unfinished">&Meno užívateľa:</translation> + <translation>&Meno používateľa:</translation> </message> <message> <source>&Password:</source> - <translation type="unfinished">&Heslo:</translation> + <translation>&Heslo:</translation> </message> <message> <source>&Hostname:</source> - <translation type="unfinished">&Hostiteľ:</translation> + <translation>&Názov hostiteľa:</translation> </message> <message> <source>&Bucket:</source> - <translation type="unfinished">&Sektor:</translation> + <translation>&Sektor:</translation> </message> <message> <source>&File:</source> - <translation type="unfinished">&Súbor:</translation> + <translation>&Súbor:</translation> </message> <message> <source>Write in legacy OVF 0.9 format for compatibility with other virtualization products.</source> - <translation type="unfinished">Uložiť v staršom formáte OVF 0.9 kvôli kompatibilite so staršími virtualizačnými produktami.</translation> + <translation>Uložiť v staršom formáte OVF 0.9 kvôli kompatibilite so staršími virtualizačnými produktami.</translation> </message> <message> <source>&Write legacy OVF 0.9</source> - <translation type="unfinished">&Uložiť vo formáte OVF 0.9</translation> + <translation>&Uložiť vo formáte OVF 0.9</translation> </message> <message> <source>Appliance Export Settings</source> - <translation type="unfinished"></translation> + <translation>Nastavenia exportu appliance</translation> </message> <message> <source>Appliance</source> - <translation type="unfinished"></translation> + <translation>Appliance</translation> </message> <message> <source>Select a file to export into</source> - <translation type="unfinished">Vyberte súbor pre export</translation> + <translation>Vyberte súbor pre export</translation> </message> <message> <source>Open Virtualization Format (%1)</source> - <translation type="unfinished">Formát Open Virtualization Format (%1)</translation> + <translation>Formát Open Virtualization Format (%1)</translation> </message> <message> <source>Please choose a filename to export the OVF to.</source> - <translation type="unfinished">Prosím, vyberte názov súboru pre export OVF.</translation> + <translation>Prosím, vyberte názov súboru pre export OVF.</translation> </message> <message> <source>Please complete the additional fields like the username, password and the bucket, and provide a filename for the OVF target.</source> - <translation type="unfinished"></translation> + <translation>Vyplňte, prosím, nasledujúce položky ako je meno používateľa, heslo a sektor. Nakoniec zadajte cieľ, kam sa bude OVF exportovať.</translation> </message> <message> <source>Please complete the additional fields like the username, password, hostname and the bucket, and provide a filename for the OVF target.</source> - <translation type="unfinished"></translation> + <translation>Prosím, vyplňte nasledujúce položky ako je meno používateľa, jeho heslo, názov hostiteľa a sektor. Nakoniec zadajte cieľ, kam sa bude OVF exportovať.</translation> </message> <message> <source>Checking files ...</source> - <translation type="unfinished">Kontrolujem súbory ...</translation> + <translation>Kontrolujem súbory ...</translation> </message> <message> <source>Removing files ...</source> - <translation type="unfinished">Odstraňujem súbory ...</translation> + <translation>Odstraňujem súbory ...</translation> </message> <message> <source>Exporting Appliance ...</source> - <translation type="unfinished"></translation> + <translation>Export appliance...</translation> </message> </context> <context> @@ -844,11 +844,11 @@ <name>UIFirstRunWzdPage1</name> <message> <source>Welcome to the First Run Wizard!</source> - <translation type="unfinished">Vitajte v Sprievodcovi prvým spustením!</translation> + <translation>Vitajte v Sprievodcovi prvým spustením!</translation> </message> <message> <source><p>You have started a newly created virtual machine for the first time. This wizard will help you to perform the steps necessary for installing an operating system of your choice onto this virtual machine.</p><p>%1</p></source> - <translation type="unfinished"></translation> + <translation><p>Spustili ste po prvýkrát čerstvo vytvorený virtuálny počítač. Tento sprievodca vám pomôže urobiť kroky potrebné pre inštaláciu vybraného operačného systému do tohto virtuálneho počítača.</p><p>%1</p></translation> </message> <message> <source><p>You have started a newly created virtual machine for the first time. This wizard will help you to perform the steps necessary for booting an operating system of your choice on the virtual machine.</p><p>Note that you will not be able to install an operating system into this virtual machine right now because you did not attach any hard disk to it. If this is not what you want, you can cancel the execution of this wizard, select <b>Settings</b> from the <b>Machine</b> menu of the main VirtualBox window to access the settings dialog of this machine and change the hard disk configuration.</p><p>%1</p></source> @@ -859,56 +859,56 @@ <name>UIFirstRunWzdPage2</name> <message> <source><p>Select the media which contains the setup program of the operating system you want to install. This media must be bootable, otherwise the setup program will not be able to start.</p></source> - <translation type="unfinished"><p>Vyberte médium, ktoré obsahuje inštalačný program pre operačný systém, ktorý chcete nainštalovať. Toto médium musí byť bootovateľné, inak inštalačný program nebude možné spustiť.</p></translation> + <translation><p>Vyberte médium, ktoré obsahuje inštalačný program pre operačný systém, ktorý chcete nainštalovať. Toto médium musí byť bootovateľné, inak inštalačný program nebude možné spustiť.</p></translation> </message> <message> <source><p>Select the media that contains the operating system you want to work with. This media must be bootable, otherwise the operating system will not be able to start.</p></source> - <translation type="unfinished"><p>Vyberte médium, ktoré obsahuje inštalačný program pre operačný systém, ktorý chcete nainštalovať. Toto médium musí byť bootovateľné, inak inštalačný program nebude možné spustiť.</p></translation> + <translation><p>Vyberte médium, ktoré obsahuje inštalačný program pre operačný systém, ktorý chcete nainštalovať. Toto médium musí byť bootovateľné, inak inštalačný program nebude možné spustiť.</p></translation> </message> <message> <source>Media Source</source> - <translation type="unfinished">Zdroj média</translation> + <translation>Zdroj média</translation> </message> <message> <source>Select Installation Media</source> - <translation type="unfinished">Vyberte inštalačné médium</translation> + <translation>Vyberte inštalačné médium</translation> </message> </context> <context> <name>UIFirstRunWzdPage3</name> <message> <source><p>You have selected the following media to boot from:</p></source> - <translation type="unfinished"><p>Vybrali ste bootovanie z nasledujúcich médii:</p></translation> + <translation><p>Vybrali ste nasledujúce médiá pre bootovanie:</p></translation> </message> <message> <source><p>You have selected the following media to boot an operating system from:</p></source> - <translation type="unfinished"><p>Vybrali ste bootovanie operačného systmu z nasledujúcich médii:</p></translation> + <translation><p>Vybrali ste bootovanie operačného systému z nasledujúcich médii:</p></translation> </message> <message> <source><p>If the above is correct, press the <b>Finish</b> button. Once you press it, the selected media will be temporarily mounted on the virtual machine and the machine will start execution.</p><p>Please note that when you close the virtual machine, the specified media will be automatically unmounted and the boot device will be set back to the first hard disk.</p><p>Depending on the type of the setup program, you may need to manually unmount (eject) the media after the setup program reboots the virtual machine, to prevent the installation process from starting again. You can do this by selecting the corresponding <b>Unmount...</b> action in the <b>Devices</b> menu.</p></source> - <translation type="unfinished"><p>Ak sú vyššie uvedené údaje správne, stlačte tlačidlo <b>Dokončiť</b>. Keď ho stlačíte, vybrané médium bude dočasne pripojené k virtuálnemu stroju a stroj bude spustený.</p><p>Majte na pamäti, že pri ukončení virtuálneho stroja bude špecifikované médium automaticky odpojené a bootovateľné zariadenie bude znovu nastavené na prvý pevný disk.</p><p>V závislosti na type inštalačného programu budete možno musieť manuálne odpojiť (vybrať) médium predtým, ako inštalácia reštartuje virtuálny stroj, aby ste tak zabránili opätovnému spusteniu inštalácie. Môžete tak učiniť výberom zodpovedajúcej akcie <b>Odpojiť...</b> z ponuky <b>Zariadenia</b>.</p></translation> + <translation><p>Ak sú vyššie uvedené údaje správne, stlačte tlačidlo <b>Dokončiť</b>. Keď ho stlačíte, vybrané médium bude dočasne pripojené k virtuálnemu stroju a stroj bude spustený.</p><p>Majte na pamäti, že pri ukončení virtuálneho stroja bude špecifikované médium automaticky odpojené a bootovateľné zariadenie bude znovu nastavené na prvý pevný disk.</p><p>V závislosti na type inštalačného programu budete možno musieť manuálne odpojiť (vybrať) médium predtým, ako inštalácia reštartuje virtuálny stroj, aby ste tak zabránili opätovnému spusteniu inštalácie. Môžete tak učiniť výberom zodpovedajúcej akcie <b>Odpojiť...</b> z ponuky <b>Zariadenia</b>.</p></translation> </message> <message> <source><p>If the above is correct, press the <b>Finish</b> button. Once you press it, the selected media will be mounted on the virtual machine and the machine will start execution.</p></source> - <translation type="unfinished"><p>Ak sú vyššie uvedené nastavenia správne, stlačte tlačidlo <b>Dokončiť</b>. Keď ho stlačíte, vybrané médium bude pripojené pre virtuálny stroj a stroj bude spustený.</p> </translation> + <translation><p>Ak sú vyššie uvedené nastavenia správne, stlačte tlačidlo <b>Dokončiť</b>. Keď ho stlačíte, vybrané médium bude pripojené k virtuálnemu stroju a stroj bude spustený.</p></translation> </message> <message> <source>Summary</source> - <translation type="unfinished">Zhrnutie</translation> + <translation>Zhrnutie</translation> </message> <message> <source>CD/DVD-ROM Device</source> - <translation type="unfinished">Zariadenie CD/DVD-ROM</translation> + <translation>Mechanika CD/DVD-ROM</translation> </message> <message> <source>Type</source> <comment>summary</comment> - <translation type="unfinished">Typ</translation> + <translation>Typ</translation> </message> <message> <source>Source</source> <comment>summary</comment> - <translation type="unfinished">Zdroj</translation> + <translation>Zdroj</translation> </message> </context> <context> @@ -919,7 +919,7 @@ </message> <message> <source>Appliance Import Wizard</source> - <translation type="unfinished"></translation> + <translation>Sprievodca importom appliance</translation> </message> <message> <source>< &Back</source> @@ -946,19 +946,19 @@ <name>UIImportApplianceWzdPage1</name> <message> <source>Select an appliance to import</source> - <translation type="unfinished"></translation> + <translation>Vyberte appliance pre import</translation> </message> <message> <source>Open Virtualization Format (%1)</source> - <translation type="unfinished">Formát Open Virtualization Format (%1)</translation> + <translation>Formát Open Virtualization Format (%1)</translation> </message> <message> <source>Welcome to the Appliance Import Wizard!</source> - <translation type="unfinished"></translation> + <translation>Víta vás sprievodca importom appliance!</translation> </message> <message> <source><p>This wizard will guide you through importing an appliance.</p><p>%1</p><p>VirtualBox currently supports importing appliances saved in the Open Virtualization Format (OVF). To continue, select the file to import below:</p></source> - <translation type="unfinished"></translation> + <translation><p>Tento sprievodca vás prevedie importom appliance.</p><p>%1</p><p>VirtualBox momentálne podporuje import appliancí uložených vo formáte Open Virtualization Format (OVF). Pre pokračovanie vyberte súbor pre import nižšie:</p></translation> </message> </context> <context> @@ -969,18 +969,18 @@ </message> <message> <source>Appliance Import Settings</source> - <translation type="unfinished"></translation> + <translation>Nastavenia importu appliance</translation> </message> </context> <context> <name>UIImportLicenseViewer</name> <message> <source><b>The virtual system "%1" requires that you agree to the terms and conditions of the software license agreement shown below.</b><br /><br />Click <b>Agree</b> to continue or click <b>Disagree</b> to cancel the import.</source> - <translation type="unfinished"></translation> + <translation><b>Virtuálny systém "%1" vyžaduje súhlas s podmienkami používania uvedenými v softvérovej licencii zobrazenej nižšie.</b><br /><br />Kliknite na <b>Súhlasím</b> pre pokračovanie alebo na <b>Nesúhlasím</b> pre prerušenie importu.</translation> </message> <message> <source>Software License Agreement</source> - <translation type="unfinished"></translation> + <translation>Zmluva o používaní softvéru</translation> </message> <message> <source>&Disagree</source> @@ -1011,56 +1011,56 @@ <name>UIMachineLogic</name> <message> <source>VirtualBox OSE</source> - <translation type="unfinished">VirtualBox OSE</translation> + <translation>VirtualBox OSE</translation> </message> <message> <source> EXPERIMENTAL build %1r%2 - %3</source> - <translation type="unfinished"> EXPERIMENTÁLNY build %1r%2 - %3</translation> + <translation> EXPERIMENTÁLNE zostavenie %1r%2 - %3</translation> </message> </context> <context> <name>UIMiniProcessWidgetAdditions</name> <message> <source>Cancel</source> - <translation type="unfinished">Zrušiť</translation> + <translation>Zrušiť</translation> </message> <message> <source>Cancel the VirtualBox Guest Additions CD image download</source> - <translation type="unfinished"></translation> + <translation>Zrušiť sťahovanie obrazu CD s Hosťovskými doplnkami VirtualBoxu</translation> </message> <message> <source>Downloading the VirtualBox Guest Additions CD image from <nobr><b>%1</b>...</nobr></source> - <translation type="unfinished"></translation> + <translation>Sťahujem obraz CD s Hosťovskými doplnkami VirtualBoxu <nobr><b>%1</b>...</nobr></translation> </message> </context> <context> <name>UIMiniProcessWidgetUserManual</name> <message> <source>Cancel</source> - <translation type="unfinished">Zrušiť</translation> + <translation>Zrušiť</translation> </message> <message> <source>Cancel the VirtualBox User Manual download</source> - <translation type="unfinished"></translation> + <translation>Zrušiť sťahovanie používateľskej príručky VirtualBoxu</translation> </message> <message> <source>Downloading the VirtualBox User Manual</source> - <translation type="unfinished"></translation> + <translation>Sťahujem používateľskú príručku VirtualBoxu</translation> </message> <message> <source>Downloading the VirtualBox User Manual <nobr><b>%1</b>...</nobr></source> - <translation type="unfinished"></translation> + <translation>Sťahujem príručku užívateľa pre VirtualBoxu <nobr><b>%1</b>...</nobr></translation> </message> </context> <context> <name>UIMultiScreenLayout</name> <message> <source>Virtual Screen %1</source> - <translation type="unfinished"></translation> + <translation>Virtuálna obrazovka %1</translation> </message> <message> <source>Use Host Screen %1</source> - <translation type="unfinished"></translation> + <translation>Použiť obrazovku hostiteľa %1</translation> </message> </context> <context> @@ -1268,11 +1268,11 @@ ako veľkosť virtuálneho pevného disku.</p></translation> <name>UINewHDWzdPage1</name> <message> <source>Welcome to the Create New Virtual Disk Wizard!</source> - <translation type="unfinished">Vitajte v sprievodcovi vytvorením nového virtuálneho disku!</translation> + <translation>Vitajte v sprievodcovi vytvorením nového virtuálneho disku!</translation> </message> <message> <source><p>This wizard will help you to create a new virtual hard disk for your virtual machine.</p><p>%1</p></source> - <translation type="unfinished"></translation> + <translation><p>Tento sprievodca vám pomôže vytvoriť nový virtuálny disk pre virtuálny stroj>.</p><p>%1</p></translation> </message> </context> <context> @@ -1283,88 +1283,88 @@ ako veľkosť virtuálneho pevného disku.</p></translation> </message> <message> <source>Storage Type</source> - <translation type="unfinished">Typ úložiska</translation> + <translation>Typ úložiska</translation> </message> <message> <source>&Dynamically expanding storage</source> - <translation type="unfinished">&Dynamicky sa zväčšujúce úložisko</translation> + <translation>&Dynamicky sa zväčšujúce úložisko</translation> </message> <message> <source>&Fixed-size storage</source> - <translation type="unfinished">Ú&ložisko s fixnou veľkosťou</translation> + <translation>Ú&ložisko s fixnou veľkosťou</translation> </message> <message> <source>Hard Disk Storage Type</source> - <translation type="unfinished">Typ úložiska pevného disku</translation> + <translation>Typ úložiska pevného disku</translation> </message> </context> <context> <name>UINewHDWzdPage3</name> <message> <source><p>Press the <b>Select</b> button to select the location of a file to store the hard disk data or type a file name in the entry field.</p></source> - <translation type="unfinished"><p>Stlačte tlačidlo <b>Výber</b> a vyberte umiestnenie súboru, ktoré bude slúžiť na ukladanie dát pevného disku alebo napíšte jeho meno do poľa vstupu.</p></translation> + <translation><p>Stlačte tlačidlo <b>Výber</b> a vyberte umiestnenie súboru, ktoré bude slúžiť na ukladanie dát pevného disku alebo napíšte jeho meno do vstupného poľa.</p></translation> </message> <message> <source>&Location</source> - <translation type="unfinished">&Umiestnenie</translation> + <translation>&Umiestnenie</translation> </message> <message> <source><p>Select the size of the virtual hard disk in megabytes. This size will be reported to the Guest OS as the maximum size of this hard disk.</p></source> - <translation type="unfinished"><p>Vyberte veľkosť virtuálneho pevného disku v megabajtoch. Túto veľkosť bude vidieť OS hosťa ako maximálnu veľkosť pevného disku.</p></translation> + <translation><p>Vyberte veľkosť virtuálneho pevného disku v megabajtoch. Túto veľkosť bude vidieť OS hosťa ako maximálnu veľkosť pevného disku.</p></translation> </message> <message> <source>&Size</source> - <translation type="unfinished">&Veľkosť</translation> + <translation>&Veľkosť</translation> </message> <message> <source>Virtual Disk Location and Size</source> - <translation type="unfinished">Umiestnenie a veľkosť virtuálneho disku</translation> + <translation>Umiestnenie a veľkosť virtuálneho disku</translation> </message> <message> <source>Select a file for the new hard disk image file</source> - <translation type="unfinished">Vyberte súbor pre obraz nového pevného disku</translation> + <translation>Vyberte súbor pre obraz nového pevného disku</translation> </message> <message> <source>Hard disk images (*.vdi)</source> - <translation type="unfinished">Obrazy pevných diskov (*.vdi)</translation> + <translation>Obrazy pevných diskov (*.vdi)</translation> </message> <message> <source><nobr>%1 (%2 B)</nobr></source> - <translation type="unfinished"></translation> + <translation><nobr>%1 (%2 B)</nobr></translation> </message> </context> <context> <name>UINewHDWzdPage4</name> <message> <source>You are going to create a new virtual hard disk with the following parameters:</source> - <translation type="unfinished">Chystáte sa vytvoriť nový virtuálny pevný disk s nasledujúcimi parametrami:</translation> + <translation>Chystáte sa vytvoriť nový virtuálny pevný disk s nasledujúcimi parametrami:</translation> </message> <message> <source>Summary</source> - <translation type="unfinished">Zhrnutie</translation> + <translation>Zhrnutie</translation> </message> <message> <source>%1 B</source> - <translation type="unfinished"></translation> + <translation>%1 B</translation> </message> <message> <source>Type</source> <comment>summary</comment> - <translation type="unfinished">Typ</translation> + <translation>Typ</translation> </message> <message> <source>Location</source> <comment>summary</comment> - <translation type="unfinished">Umiestnenie</translation> + <translation>Umiestnenie</translation> </message> <message> <source>Size</source> <comment>summary</comment> - <translation type="unfinished">Veľkosť</translation> + <translation>Veľkosť</translation> </message> <message> <source>If the above settings are correct, press the <b>%1</b> button. Once you press it, a new hard disk will be created.</source> - <translation type="unfinished"></translation> + <translation>Ak sú vyššie uvedené udaje v poriadku, stlačte tlačidlo <b>%1</b>. Po jeho stlačení bude vytvorený nový obraz pevného disku.</translation> </message> </context> <context> @@ -1608,58 +1608,58 @@ preskočiť a pripojiť pevné disky neskôr pomocou dialógu Nastavenia virtuá <name>UINewVMWzdPage1</name> <message> <source>Welcome to the New Virtual Machine Wizard!</source> - <translation type="unfinished">Vitajte v sprievodcovi vytvorením nového virtuálneho stroja!</translation> + <translation>Vitajte v sprievodcovi vytvorením nového virtuálneho stroja!</translation> </message> <message> <source><p>This wizard will guide you through the steps that are necessary to create a new virtual machine for VirtualBox.</p><p>%1</p></source> - <translation type="unfinished"></translation> + <translation><p>Tento sprievodca vás prevedie všetkými krokmi, ktoré sú potrebné pre vytvorenie nového virtuálneho stroja pre VirtualBox.</p><p>%1</p></translation> </message> </context> <context> <name>UINewVMWzdPage2</name> <message> <source><p>Enter a name for the new virtual machine and select the type of the guest operating system you plan to install onto the virtual machine.</p><p>The name of the virtual machine usually indicates its software and hardware configuration. It will be used by all VirtualBox components to identify your virtual machine.</p></source> - <translation type="unfinished"><p>Zadajte názov nového virtuálneho stroja a vyberte typ hosťovaného operačného systému, ktorý naň hodláte inštalovať.</p><p>Názov virtuálneho počítača obvykle indikuje jeho softvérovú a hardvérovú konfiguráciu. Bude použité ďalšími komponentami VirtualBoxu pre identifikáciu vášho virtuálneho stroja.</p></translation> + <translation><p>Zadajte názov nového virtuálneho stroja a vyberte typ hosťovaného operačného systému, ktorý naň hodláte inštalovať.</p><p>Názov virtuálneho počítača obvykle indikuje jeho softvérovú a hardvérovú konfiguráciu. Bude použité ďalšími komponentami VirtualBoxu pre identifikáciu vášho virtuálneho stroja.</p></translation> </message> <message> <source>N&ame</source> - <translation type="unfinished">&Názov</translation> + <translation>&Názov</translation> </message> <message> <source>OS &Type</source> - <translation type="unfinished">&Typ OS</translation> + <translation>&Typ OS</translation> </message> <message> <source>VM Name and OS Type</source> - <translation type="unfinished">Názov virtuálneho stroja a typ úložiska</translation> + <translation>Názov virtuálneho stroja a typ OS</translation> </message> </context> <context> <name>UINewVMWzdPage3</name> <message> <source><p>Select the amount of base memory (RAM) in megabytes to be allocated to the virtual machine.</p></source> - <translation type="unfinished"><p>Zvoľte veľkosť základnej pamäte (RAM) v megabajtoch, ktorá sa alokuje pre virtuálny stroj.</p></translation> + <translation><p>Zvoľte veľkosť základnej pamäte (RAM) v megabajtoch, ktorá sa alokuje pre virtuálny stroj.</p></translation> </message> <message> <source>Base &Memory Size</source> - <translation type="unfinished">Veľkosť &základnej pamäte</translation> + <translation>Veľkosť &základnej pamäte</translation> </message> <message> <source>MB</source> - <translation type="unfinished">MB</translation> + <translation>MB</translation> </message> <message> <source>Memory</source> - <translation type="unfinished">Pamäť</translation> + <translation>Pamäť</translation> </message> <message> <source>The recommended base memory size is <b>%1</b> MB.</source> - <translation type="unfinished">Odporúčaná veľkosť základnej pamäťe je <b>%1</b> MB.</translation> + <translation>Odporúčaná veľkosť základnej pamäťe je <b>%1</b> MB.</translation> </message> <message> <source>MB</source> <comment>size suffix MBytes=1024 KBytes</comment> - <translation type="unfinished">MB</translation> + <translation>MB</translation> </message> </context> <context> @@ -1670,63 +1670,63 @@ preskočiť a pripojiť pevné disky neskôr pomocou dialógu Nastavenia virtuá </message> <message> <source>Boot Hard &Disk (Primary Master)</source> - <translation type="unfinished">Boo&tovací pevný disk (Primary Master)</translation> + <translation>Boo&tovací pevný disk (Primary Master)</translation> </message> <message> <source>&Create new hard disk</source> - <translation type="unfinished">&Vytvoriť nový pevný disk</translation> + <translation>&Vytvoriť nový pevný disk</translation> </message> <message> <source>&Use existing hard disk</source> - <translation type="unfinished">&Použiť existujúci pevný disk</translation> + <translation>&Použiť existujúci pevný disk</translation> </message> <message> <source>Virtual Hard Disk</source> - <translation type="unfinished">Virtuálny pevný disk</translation> + <translation>Virtuálny pevný disk</translation> </message> <message> <source>The recommended size of the boot hard disk is <b>%1</b> MB.</source> - <translation type="unfinished">Odporúčaná veľkosť bootovacieho pevného disku je <b>%1</b> MB.</translation> + <translation>Odporúčaná veľkosť bootovacieho pevného disku je <b>%1</b> MB.</translation> </message> </context> <context> <name>UINewVMWzdPage5</name> <message> <source><p>You are going to create a new virtual machine with the following parameters:</p></source> - <translation type="unfinished"><p>Chystáte sa vytvoriť nový virtuálny pevný disk s nasledujúcimi parametrami:</p></translation> + <translation><p>Chystáte sa vytvoriť nový virtuálny pevný disk s nasledujúcimi parametrami:</p></translation> </message> <message> <source>Summary</source> - <translation type="unfinished">Zhrnutie</translation> + <translation>Zhrnutie</translation> </message> <message> <source>Name</source> <comment>summary</comment> - <translation type="unfinished">Názov</translation> + <translation>Názov</translation> </message> <message> <source>OS Type</source> <comment>summary</comment> - <translation type="unfinished">Typ OS</translation> + <translation>Typ OS</translation> </message> <message> <source>Base Memory</source> <comment>summary</comment> - <translation type="unfinished">Základná pamäť</translation> + <translation>Základná pamäť</translation> </message> <message> <source>MB</source> <comment>size suffix MBytes=1024KBytes</comment> - <translation type="unfinished">MB</translation> + <translation>MB</translation> </message> <message> <source>Boot Hard Disk</source> <comment>summary</comment> - <translation type="unfinished">Bootovací pevný disk</translation> + <translation>Bootovací pevný disk</translation> </message> <message> <source><p>If the above is correct press the <b>%1</b> button. Once you press it, a new virtual machine will be created. </p><p>Note that you can alter these and all other setting of the created virtual machine at any time using the <b>Settings</b> dialog accessible through the menu of the main window.</p></source> - <translation type="unfinished"></translation> + <translation><p>Ak sú vyššie uvedené údaje v poriadku, stlačte tlačidlo <b>%1</b> Potom sa začne vytvárať virtuálny stroj.</p><p>Poznámka: Všetky tieto i dodatočené nastavenia pre virtuálny stroj môžete kedykoľvek zmeniť v dialógovom okne <b>Nastavenia</b>, ktoré vyvoláte z ponuky v hlavnom menu.</p></translation> </message> </context> <context> @@ -1950,12 +1950,12 @@ verzia %1</translation> <message> <source>MB</source> <comment>size suffix MBytes=1024 KBytes</comment> - <translation type="unfinished">MB</translation> + <translation>MB</translation> </message> <message> <source>MB</source> <comment>size suffix MBytes=1024KBytes</comment> - <translation type="unfinished">MB</translation> + <translation>MB</translation> </message> </context> <context> @@ -9798,11 +9798,11 @@ je zobrazený <b>tučným</b> písmom. Voľbou <i>Štandardný </message> <message> <source>Controls the working mode of this serial port. If you select <b>Disconnected</b>, the guest OS will detect the serial port but will not be able to operate it.</source> - <translation type="unfinished"></translation> + <translation>Ovláda pracovný režim tohto sériového portu. Ak vyberiete <b>Odpojený</b>, OS hosťa nájde sériový port, ale nebude schopný ho ovládať.</translation> </message> <message> <source>If checked, the pipe specified in the <b>Port Path</b> field will be created by the virtual machine when it starts. Otherwise, the virtual machine will assume that the pipe exists and try to use it.</source> - <translation type="unfinished"></translation> + <translation type="unfinished">Ak je zaškrtnuté, rúra uvedená v poli <b>Cesta portu</b> bude vytvorená virtuálnym strojom pri spustení. Inak sa virtuálny počítač pokúsi použiť existujúcu rúru.</translation> </message> <message> <source>&Create Pipe</source> diff --git a/src/VBox/Frontends/VirtualBox/nls/VirtualBox_zh_CN.ts b/src/VBox/Frontends/VirtualBox/nls/VirtualBox_zh_CN.ts index 570d7aa40..0f183d2fb 100644 --- a/src/VBox/Frontends/VirtualBox/nls/VirtualBox_zh_CN.ts +++ b/src/VBox/Frontends/VirtualBox/nls/VirtualBox_zh_CN.ts @@ -1,6 +1,6 @@ <?xml version="1.0" encoding="utf-8"?> -<!DOCTYPE TS><TS version="1.1" language="zh_CN"> -<defaultcodec></defaultcodec> +<!DOCTYPE TS> +<TS version="2.0" language="zh_CN"> <context> <name>@@@</name> <message> diff --git a/src/VBox/Frontends/VirtualBox/src/VBoxConsoleView.cpp b/src/VBox/Frontends/VirtualBox/src/VBoxConsoleView.cpp index 8e1c72af3..3dfec9cf5 100644 --- a/src/VBox/Frontends/VirtualBox/src/VBoxConsoleView.cpp +++ b/src/VBox/Frontends/VirtualBox/src/VBoxConsoleView.cpp @@ -1,4 +1,4 @@ -/* $Id: VBoxConsoleView.cpp 28960 2010-05-02 19:36:26Z vboxsync $ */ +/* $Id: VBoxConsoleView.cpp 29542 2010-05-17 13:41:20Z vboxsync $ */ /** @file * * VBox frontends: Qt GUI ("VirtualBox"): @@ -29,6 +29,7 @@ #include "VBoxFrameBuffer.h" #include "VBoxGlobal.h" #include "VBoxProblemReporter.h" +#include "VBox/com/array.h" #ifdef Q_WS_PM #include "QIHotKeyEdit.h" @@ -208,22 +209,20 @@ class MousePointerChangeEvent : public QEvent public: MousePointerChangeEvent (bool visible, bool alpha, uint xhot, uint yhot, uint width, uint height, - const uchar *shape) : + ComSafeArrayIn(BYTE,pShape)) : QEvent ((QEvent::Type) VBoxDefs::MousePointerChangeEventType), - vis (visible), alph (alpha), xh (xhot), yh (yhot), w (width), h (height), - data (NULL) + vis (visible), alph (alpha), xh (xhot), yh (yhot), w (width), h (height) { - // make a copy of shape - uint dataSize = ((((width + 7) / 8 * height) + 3) & ~3) + width * 4 * height; - - if (shape) { - data = new uchar [dataSize]; - memcpy ((void *) data, (void *) shape, dataSize); + com::SafeArray <BYTE> aShape(ComSafeArrayInArg (pShape)); + size_t cbShapeSize = aShape.size(); + if (cbShapeSize > 0) + { + shape.resize(cbShapeSize); + ::memcpy(shape.raw(), aShape.raw(), cbShapeSize); } } ~MousePointerChangeEvent() { - if (data) delete[] data; } bool isVisible() const { return vis; } bool hasAlpha() const { return alph; } @@ -231,11 +230,11 @@ public: uint yHot() const { return yh; } uint width() const { return w; } uint height() const { return h; } - const uchar *shapeData() const { return data; } + const uchar *shapeData() const { return shape.size() > 0 ? shape.raw() : NULL; } private: bool vis, alph; uint xh, yh, w, h; - const uchar *data; + com::SafeArray <uint8_t> shape; }; /** Guest mouse absolute positioning capability change event. */ @@ -422,12 +421,12 @@ public: STDMETHOD(OnMousePointerShapeChange) (BOOL visible, BOOL alpha, ULONG xhot, ULONG yhot, ULONG width, ULONG height, - BYTE *shape) + ComSafeArrayIn(BYTE,shape)) { QApplication::postEvent (mView, new MousePointerChangeEvent (visible, alpha, xhot, yhot, - width, height, shape)); + width, height, ComSafeArrayInArg(shape))); return S_OK; } diff --git a/src/VBox/Frontends/VirtualBox/src/VBoxConsoleWnd.cpp b/src/VBox/Frontends/VirtualBox/src/VBoxConsoleWnd.cpp index 872538129..e25761f18 100644 --- a/src/VBox/Frontends/VirtualBox/src/VBoxConsoleWnd.cpp +++ b/src/VBox/Frontends/VirtualBox/src/VBoxConsoleWnd.cpp @@ -1,4 +1,4 @@ -/* $Id: VBoxConsoleWnd.cpp 28800 2010-04-27 08:22:32Z vboxsync $ */ +/* $Id: VBoxConsoleWnd.cpp 29471 2010-05-14 13:22:16Z vboxsync $ */ /** @file * * VBox frontends: Qt GUI ("VirtualBox"): @@ -3265,7 +3265,7 @@ void VBoxConsoleWnd::updateAppearanceOf (int aElement) "<br><nobr><b>%3:</b> %4</nobr>", "Virtualization Stuff LED") .arg (VBoxGlobal::tr ("VT-x/AMD-V", "details report"), virtualization) - .arg (VBoxVMInformationDlg::tr ("Nested Paging"), nestedPaging)); + .arg (VBoxVMInformationDlg::tr ("Nested Paging", "details report"), nestedPaging)); int cpuCount = console.GetMachine().GetCPUCount(); if (cpuCount > 1) diff --git a/src/VBox/Frontends/VirtualBox/src/VBoxFBOverlay.cpp b/src/VBox/Frontends/VirtualBox/src/VBoxFBOverlay.cpp index 35f639fae..eacd3ed85 100644 --- a/src/VBox/Frontends/VirtualBox/src/VBoxFBOverlay.cpp +++ b/src/VBox/Frontends/VirtualBox/src/VBoxFBOverlay.cpp @@ -2315,9 +2315,9 @@ int VBoxVHWAImage::vhwaSurfaceCreate (struct _VBOXVHWACMD_SURF_CREATE *pCmd) QRect(0, 0, surfSize.width(), surfSize.height()), mViewport, format, - pSrcBltCKey, pDstBltCKey, pSrcOverlayCKey, pDstOverlayCKey + pSrcBltCKey, pDstBltCKey, pSrcOverlayCKey, pDstOverlayCKey, #ifdef VBOXVHWA_USE_TEXGROUP - , 0 + 0, #endif fFlags); } diff --git a/src/VBox/Frontends/VirtualBox/src/VBoxMediaManagerDlg.cpp b/src/VBox/Frontends/VirtualBox/src/VBoxMediaManagerDlg.cpp index 216249a5f..f3a604b1b 100644 --- a/src/VBox/Frontends/VirtualBox/src/VBoxMediaManagerDlg.cpp +++ b/src/VBox/Frontends/VirtualBox/src/VBoxMediaManagerDlg.cpp @@ -1,4 +1,4 @@ -/* $Id: VBoxMediaManagerDlg.cpp 28800 2010-04-27 08:22:32Z vboxsync $ */ +/* $Id: VBoxMediaManagerDlg.cpp 29526 2010-05-17 10:59:21Z vboxsync $ */ /** @file * * VBox frontends: Qt4 GUI ("VirtualBox"): @@ -504,10 +504,13 @@ void VBoxMediaManagerDlg::showModeless (QWidget *aCenterWidget /* = 0 */, bool a { mModelessDialog = new VBoxMediaManagerDlg (0, Qt::Window); mModelessDialog->centerAccording (aCenterWidget); - connect (vboxGlobal().mainWindow(), SIGNAL (closing()), mModelessDialog, SLOT (close())); mModelessDialog->setAttribute (Qt::WA_DeleteOnClose); mModelessDialog->setup (VBoxDefs::MediumType_All, false /* aDoSelect */, aRefresh); + /* Setup 'closing' connection if main window is VBoxSelectorWnd: */ + if (vboxGlobal().mainWindow() && vboxGlobal().mainWindow()->inherits("VBoxSelectorWnd")) + connect(vboxGlobal().mainWindow(), SIGNAL(closing()), mModelessDialog, SLOT(close())); + /* listen to events that may change the media status and refresh * the contents of the modeless dialog */ /// @todo refreshAll() may be slow, so it may be better to analyze diff --git a/src/VBox/Frontends/VirtualBox/src/VBoxVMInformationDlg.cpp b/src/VBox/Frontends/VirtualBox/src/VBoxVMInformationDlg.cpp index 24c09b50d..07a7cd5f5 100644 --- a/src/VBox/Frontends/VirtualBox/src/VBoxVMInformationDlg.cpp +++ b/src/VBox/Frontends/VirtualBox/src/VBoxVMInformationDlg.cpp @@ -1,4 +1,4 @@ -/* $Id: VBoxVMInformationDlg.cpp 28800 2010-04-27 08:22:32Z vboxsync $ */ +/* $Id: VBoxVMInformationDlg.cpp 29526 2010-05-17 10:59:21Z vboxsync $ */ /** @file * * VBox frontends: Qt4 GUI ("VirtualBox"): @@ -48,7 +48,6 @@ void VBoxVMInformationDlg::createInformationDlg(UIMachineWindow *pMachineWindow) VBoxVMInformationDlg *id = new VBoxVMInformationDlg(pMachineWindow, Qt::Window); id->centerAccording (pMachineWindow->machineWindow()); // TODO_NEW_CORE: this seems not necessary, cause we set WA_DeleteOnClose. - connect (vboxGlobal().mainWindow(), SIGNAL (closing()), id, SLOT (close())); id->setAttribute (Qt::WA_DeleteOnClose); mSelfArray [machine.GetName()] = id; } @@ -145,7 +144,6 @@ void VBoxVMInformationDlg::createInformationDlg (const CSession &aSession, VBoxC /* Creating new information dialog if there is no one existing */ VBoxVMInformationDlg *id = new VBoxVMInformationDlg (aConsole, aSession, Qt::Window); id->centerAccording (aConsole); - connect (vboxGlobal().mainWindow(), SIGNAL (closing()), id, SLOT (close())); id->setAttribute (Qt::WA_DeleteOnClose); mSelfArray [machine.GetName()] = id; } diff --git a/src/VBox/Frontends/VirtualBox/src/globals/VBoxGlobal.cpp b/src/VBox/Frontends/VirtualBox/src/globals/VBoxGlobal.cpp index 05faba282..c4e63e2a6 100644 --- a/src/VBox/Frontends/VirtualBox/src/globals/VBoxGlobal.cpp +++ b/src/VBox/Frontends/VirtualBox/src/globals/VBoxGlobal.cpp @@ -1,4 +1,4 @@ -/* $Id: VBoxGlobal.cpp 29334 2010-05-11 10:29:44Z vboxsync $ */ +/* $Id: VBoxGlobal.cpp 29607 2010-05-18 09:44:38Z vboxsync $ */ /** @file * * VBox frontends: Qt GUI ("VirtualBox"): @@ -1770,25 +1770,31 @@ QString VBoxGlobal::details (const CMedium &aMedium, bool aPredictDiff) QString VBoxGlobal::details (const CUSBDevice &aDevice) const { QString sDetails; - QString m = aDevice.GetManufacturer().trimmed(); - QString p = aDevice.GetProduct().trimmed(); - if (m.isEmpty() && p.isEmpty()) - { - sDetails = - tr ("Unknown device %1:%2", "USB device details") - .arg (QString().sprintf ("%04hX", aDevice.GetVendorId())) - .arg (QString().sprintf ("%04hX", aDevice.GetProductId())); - } + if (aDevice.isNull()) + sDetails = tr("Unknown device", "USB device details"); else { - if (p.toUpper().startsWith (m.toUpper())) - sDetails = p; + QString m = aDevice.GetManufacturer().trimmed(); + QString p = aDevice.GetProduct().trimmed(); + + if (m.isEmpty() && p.isEmpty()) + { + sDetails = + tr ("Unknown device %1:%2", "USB device details") + .arg (QString().sprintf ("%04hX", aDevice.GetVendorId())) + .arg (QString().sprintf ("%04hX", aDevice.GetProductId())); + } else - sDetails = m + " " + p; + { + if (p.toUpper().startsWith (m.toUpper())) + sDetails = p; + else + sDetails = m + " " + p; + } + ushort r = aDevice.GetRevision(); + if (r != 0) + sDetails += QString().sprintf (" [%04hX]", r); } - ushort r = aDevice.GetRevision(); - if (r != 0) - sDetails += QString().sprintf (" [%04hX]", r); return sDetails.trimmed(); } @@ -1899,7 +1905,7 @@ QString VBoxGlobal::detailsReport (const CMachine &aMachine, bool aWithLinks) static const char *sSectionItemTpl1 = "<tr><td width=40%><nobr><i>%1</i></nobr></td><td/><td/></tr>"; static const char *sSectionItemTpl2 = - "<tr><td width=40%><nobr>%1</nobr></td><td/><td>%2</td></tr>"; + "<tr><td width=40%><nobr>%1:</nobr></td><td/><td>%2</td></tr>"; static const char *sSectionItemTpl3 = "<tr><td width=40%><nobr>%1</nobr></td><td/><td/></tr>"; diff --git a/src/VBox/Frontends/VirtualBox/src/runtime/UIMachineLogic.cpp b/src/VBox/Frontends/VirtualBox/src/runtime/UIMachineLogic.cpp index 4c35168b0..74086ece7 100644 --- a/src/VBox/Frontends/VirtualBox/src/runtime/UIMachineLogic.cpp +++ b/src/VBox/Frontends/VirtualBox/src/runtime/UIMachineLogic.cpp @@ -1,4 +1,4 @@ -/* $Id: UIMachineLogic.cpp 29014 2010-05-04 13:17:17Z vboxsync $ */ +/* $Id: UIMachineLogic.cpp 29445 2010-05-13 11:16:40Z vboxsync $ */ /** @file * * VBox frontends: Qt GUI ("VirtualBox"): @@ -991,7 +991,12 @@ void UIMachineLogic::sltTakeSnapshot() /* Restore the running state if needed. */ if (!fWasPaused) + { + /* Make sure machine-state-change callback is processed: */ + QApplication::sendPostedEvents(uisession(), UIConsoleEventType_StateChange); + /* Unpause VM: */ uisession()->unpause(); + } } void UIMachineLogic::sltShowInformationDialog() diff --git a/src/VBox/Frontends/VirtualBox/src/runtime/UIMachineView.cpp b/src/VBox/Frontends/VirtualBox/src/runtime/UIMachineView.cpp index 76b18a2dc..2c0e354e0 100644 --- a/src/VBox/Frontends/VirtualBox/src/runtime/UIMachineView.cpp +++ b/src/VBox/Frontends/VirtualBox/src/runtime/UIMachineView.cpp @@ -1,4 +1,4 @@ -/* $Id: UIMachineView.cpp 29410 2010-05-12 11:32:52Z vboxsync $ */ +/* $Id: UIMachineView.cpp 29558 2010-05-17 15:05:22Z vboxsync $ */ /** @file * * VBox frontends: Qt GUI ("VirtualBox"): @@ -614,6 +614,13 @@ void UIMachineView::prepareFrameBuffer() /* always perform SetFramebuffer to ensure 3D gets notified */ display.SetFramebuffer(m_uScreenId, CFramebuffer(m_pFrameBuffer)); } + +#ifdef Q_WS_X11 + /* Processing pseudo resize-event to synchronize frame-buffer with stored framebuffer size: */ + QSize size = guestSizeHint(); + UIResizeEvent event(FramebufferPixelFormat_Opaque, NULL, 0, 0, size.width(), size.height()); + frameBuffer()->resizeEvent(&event); +#endif /* Q_WS_X11 */ } void UIMachineView::prepareCommon() diff --git a/src/VBox/Frontends/VirtualBox/src/runtime/UISession.cpp b/src/VBox/Frontends/VirtualBox/src/runtime/UISession.cpp index 2953b3b6a..b6134970d 100644 --- a/src/VBox/Frontends/VirtualBox/src/runtime/UISession.cpp +++ b/src/VBox/Frontends/VirtualBox/src/runtime/UISession.cpp @@ -1,4 +1,4 @@ -/* $Id: UISession.cpp 29219 2010-05-07 14:58:50Z vboxsync $ */ +/* $Id: UISession.cpp 29545 2010-05-17 14:04:53Z vboxsync $ */ /** @file * * VBox frontends: Qt GUI ("VirtualBox"): @@ -54,21 +54,14 @@ class UIMousePointerShapeChangeEvent : public QEvent { public: - UIMousePointerShapeChangeEvent(bool bIsVisible, bool bIsAlpha, uint uXHot, uint uYHot, uint uWidth, uint uHeight, const uchar *pShape) + UIMousePointerShapeChangeEvent(bool bIsVisible, bool bIsAlpha, uint uXHot, uint uYHot, uint uWidth, uint uHeight, const QVector<uint8_t>& shape) : QEvent((QEvent::Type)UIConsoleEventType_MousePointerShapeChange) - , m_bIsVisible(bIsVisible), m_bIsAlpha(bIsAlpha), m_uXHot(uXHot), m_uYHot(uYHot), m_uWidth(uWidth), m_uHeight(uHeight), m_pData(0) + , m_bIsVisible(bIsVisible), m_bIsAlpha(bIsAlpha), m_uXHot(uXHot), m_uYHot(uYHot), m_uWidth(uWidth), m_uHeight(uHeight), m_shape(shape) { - uint dataSize = ((((m_uWidth + 7) / 8 * m_uHeight) + 3) & ~3) + m_uWidth * 4 * m_uHeight; - if (pShape) - { - m_pData = new uchar[dataSize]; - memcpy((void*)m_pData, (void*)pShape, dataSize); - } } virtual ~UIMousePointerShapeChangeEvent() { - if (m_pData) delete[] m_pData; } bool isVisible() const { return m_bIsVisible; } @@ -77,13 +70,13 @@ public: uint yHot() const { return m_uYHot; } uint width() const { return m_uWidth; } uint height() const { return m_uHeight; } - const uchar *shapeData() const { return m_pData; } + const uchar *shapeData() const { return m_shape.size() > 0 ? m_shape.data() : NULL; } private: bool m_bIsVisible, m_bIsAlpha; uint m_uXHot, m_uYHot, m_uWidth, m_uHeight; - const uchar *m_pData; + QVector<uint8_t> m_shape; }; /* Guest mouse absolute positioning capability change event: */ @@ -385,9 +378,13 @@ public: VBOX_SCRIPTABLE_DISPATCH_IMPL(IConsoleCallback) - STDMETHOD(OnMousePointerShapeChange)(BOOL bIsVisible, BOOL bAlpha, ULONG uXHot, ULONG uYHot, ULONG uWidth, ULONG uHeight, BYTE *pShape) + STDMETHOD(OnMousePointerShapeChange)(BOOL bIsVisible, BOOL bAlpha, ULONG uXHot, ULONG uYHot, ULONG uWidth, ULONG uHeight, ComSafeArrayIn(BYTE, pShape)) { - QApplication::postEvent(m_pEventHandler, new UIMousePointerShapeChangeEvent(bIsVisible, bAlpha, uXHot, uYHot, uWidth, uHeight, pShape)); + com::SafeArray<BYTE> aShape(ComSafeArrayInArg(pShape)); + QVector<uint8_t> shapeVec(static_cast<int>(aShape.size())); + for (int i = 0; i < shapeVec.size(); ++i) + shapeVec[i] = aShape[i]; + QApplication::postEvent(m_pEventHandler, new UIMousePointerShapeChangeEvent(bIsVisible, bAlpha, uXHot, uYHot, uWidth, uHeight, shapeVec)); return S_OK; } @@ -558,7 +555,7 @@ UISession::UISession(UIMachine *pMachine, CSession &sessionReference) #endif /* Common flags: */ , m_fIsFirstTimeStarted(false) - , m_fIsIgnoreRutimeMediumsChanging(false) + , m_fIsIgnoreRuntimeMediumsChanging(false) , m_fIsGuestResizeIgnored(false) , m_fIsSeamlessModeRequested(false) /* Guest additions flags: */ @@ -797,8 +794,10 @@ QMenuBar* UISession::newMenuBar(UIMainMenuType fOptions /* = UIMainMenuType_ALL bool UISession::setPause(bool fOn) { - if (isPaused() == fOn) - return true; + /* Commenting it out as isPaused() could reflect + * quite obsolete state due to synchronization: */ + //if (isPaused() == fOn) + // return true; CConsole console = session().GetConsole(); @@ -1190,7 +1189,7 @@ void UISession::loadSessionSettings() /* Ignore mediums mounted at runtime? */ strSettings = machine.GetExtraData(VBoxDefs::GUI_SaveMountedAtRuntime); if (strSettings == "no") - m_fIsIgnoreRutimeMediumsChanging = true; + m_fIsIgnoreRuntimeMediumsChanging = true; /* Should guest autoresize? */ strSettings = machine.GetExtraData(VBoxDefs::GUI_AutoresizeGuest); diff --git a/src/VBox/Frontends/VirtualBox/src/runtime/UISession.h b/src/VBox/Frontends/VirtualBox/src/runtime/UISession.h index f35a11849..48445bf50 100644 --- a/src/VBox/Frontends/VirtualBox/src/runtime/UISession.h +++ b/src/VBox/Frontends/VirtualBox/src/runtime/UISession.h @@ -98,7 +98,7 @@ public: machineState() == KMachineState_Teleporting || machineState() == KMachineState_LiveSnapshotting; } bool isFirstTimeStarted() const { return m_fIsFirstTimeStarted; } - bool isIgnoreRuntimeMediumsChanging() const { return m_fIsIgnoreRutimeMediumsChanging; } + bool isIgnoreRuntimeMediumsChanging() const { return m_fIsIgnoreRuntimeMediumsChanging; } bool isGuestResizeIgnored() const { return m_fIsGuestResizeIgnored; } bool isSeamlessModeRequested() const { return m_fIsSeamlessModeRequested; } @@ -230,7 +230,7 @@ private: /* Common flags: */ bool m_fIsFirstTimeStarted : 1; - bool m_fIsIgnoreRutimeMediumsChanging : 1; + bool m_fIsIgnoreRuntimeMediumsChanging : 1; bool m_fIsGuestResizeIgnored : 1; bool m_fIsSeamlessModeRequested : 1; diff --git a/src/VBox/Frontends/VirtualBox/src/runtime/normal/UIMachineWindowNormal.cpp b/src/VBox/Frontends/VirtualBox/src/runtime/normal/UIMachineWindowNormal.cpp index d2f0c3a06..dcbbc4a06 100644 --- a/src/VBox/Frontends/VirtualBox/src/runtime/normal/UIMachineWindowNormal.cpp +++ b/src/VBox/Frontends/VirtualBox/src/runtime/normal/UIMachineWindowNormal.cpp @@ -1,4 +1,4 @@ -/* $Id: UIMachineWindowNormal.cpp 29339 2010-05-11 10:52:38Z vboxsync $ */ +/* $Id: UIMachineWindowNormal.cpp 29558 2010-05-17 15:05:22Z vboxsync $ */ /** @file * * VBox frontends: Qt GUI ("VirtualBox"): @@ -560,16 +560,15 @@ void UIMachineWindowNormal::loadWindowSettings() } /* Normalize view to the optimal size: - Note: Cause of the async behavior of some Linux WM's we have to - delay this a little bit. On Mac OS X this is not necessary and - create even wrong resize events. So there we set the geometry - immediately. */ + * Note: Cause of the async behavior of X11 (at least GNOME) we have to delay this a little bit. + * On Mac OS X and MS Windows this is not necessary and create even wrong resize events. + * So there we set the geometry immediately. */ if (machineView()) -#if defined(Q_WS_MAC) || defined(Q_WS_WIN) - machineView()->normalizeGeometry(true); -#else /* Q_WS_MAC || Q_WS_WIN */ +#ifdef Q_WS_X11 QTimer::singleShot(0, machineView(), SLOT(sltNormalizeGeometry())); -#endif /* Q_WS_MAC || Q_WS_WIN */ +#else /* Q_WS_X11 */ + machineView()->normalizeGeometry(true); +#endif /* !Q_WS_X11 */ } /* Load availability settings: */ diff --git a/src/VBox/Frontends/VirtualBox/src/settings/vm/VBoxVMSettingsHD.cpp b/src/VBox/Frontends/VirtualBox/src/settings/vm/VBoxVMSettingsHD.cpp index 147eb8e6a..05f77d948 100644 --- a/src/VBox/Frontends/VirtualBox/src/settings/vm/VBoxVMSettingsHD.cpp +++ b/src/VBox/Frontends/VirtualBox/src/settings/vm/VBoxVMSettingsHD.cpp @@ -1,4 +1,4 @@ -/* $Id: VBoxVMSettingsHD.cpp 29199 2010-05-07 12:04:23Z vboxsync $ */ +/* $Id: VBoxVMSettingsHD.cpp 29480 2010-05-14 15:24:19Z vboxsync $ */ /** @file * * VBox frontends: Qt4 GUI ("VirtualBox"): @@ -1795,9 +1795,7 @@ void VBoxVMSettingsHD::getFrom (const CMachine &aMachine) QModelIndex ctrIndex = mStorageModel->addController (controllerName, controller.GetBus(), controller.GetControllerType()); QUuid ctrId = QUuid (mStorageModel->data (ctrIndex, StorageModel::R_ItemId).toString()); - bool useIoCache = true; - if (controller.GetIoBackend() == KIoBackendType_Unbuffered) - useIoCache = false; + bool useIoCache = controller.GetUseHostIOCache(); mStorageModel->setData (ctrIndex, useIoCache, StorageModel::R_CtrIoCache); @@ -1843,7 +1841,7 @@ void VBoxVMSettingsHD::putBackTo() bool useIoCache = mStorageModel->data (ctrIndex, StorageModel::R_CtrIoCache).toBool(); CStorageController ctr = mMachine.AddStorageController (ctrName, ctrBusType); ctr.SetControllerType (ctrType); - ctr.SetIoBackend(useIoCache ? KIoBackendType_Buffered : KIoBackendType_Unbuffered); + ctr.SetUseHostIOCache(useIoCache); int maxUsedPort = -1; for (int j = 0; j < mStorageModel->rowCount (ctrIndex); ++ j) { diff --git a/src/VBox/Frontends/VirtualBox/src/widgets/VBoxApplianceEditorWgt.cpp b/src/VBox/Frontends/VirtualBox/src/widgets/VBoxApplianceEditorWgt.cpp index c3f81c5ad..ddf6d7817 100644 --- a/src/VBox/Frontends/VirtualBox/src/widgets/VBoxApplianceEditorWgt.cpp +++ b/src/VBox/Frontends/VirtualBox/src/widgets/VBoxApplianceEditorWgt.cpp @@ -1,4 +1,4 @@ -/* $Id: VBoxApplianceEditorWgt.cpp 29405 2010-05-12 10:20:34Z vboxsync $ */ +/* $Id: VBoxApplianceEditorWgt.cpp 29484 2010-05-14 16:08:20Z vboxsync $ */ /** @file * * VBox frontends: Qt4 GUI ("VirtualBox"): @@ -396,7 +396,7 @@ QWidget * HardwareItem::createEditor (QWidget *aParent, const QStyleOptionViewIt { QSpinBox *e = new QSpinBox (aParent); e->setRange (VBoxApplianceEditorWgt::minGuestRAM(), VBoxApplianceEditorWgt::maxGuestRAM()); - e->setSuffix (" " + VBoxApplianceEditorWgt::tr ("MB", "size suffix MBytes=1024KBytes")); + e->setSuffix (" " + VBoxApplianceEditorWgt::tr ("MB", "size suffix MBytes=1024 KBytes")); editor = e; break; } diff --git a/src/VBox/Frontends/VirtualBox/src/wizards/firstrun/UIFirstRunWzdPage2.ui b/src/VBox/Frontends/VirtualBox/src/wizards/firstrun/UIFirstRunWzdPage2.ui index 2a7d81dd9..62b0b76b2 100644 --- a/src/VBox/Frontends/VirtualBox/src/wizards/firstrun/UIFirstRunWzdPage2.ui +++ b/src/VBox/Frontends/VirtualBox/src/wizards/firstrun/UIFirstRunWzdPage2.ui @@ -1,7 +1,7 @@ <?xml version="1.0" encoding="UTF-8"?> <ui version="4.0"> <comment> - VBox frontends: Qt4 GUI ("VirtualBox"): + VBox frontends: Qt4 GUI ("VirtualBox"): Copyright (C) 2009-2010 Oracle Corporation @@ -9,7 +9,7 @@ available from http://www.virtualbox.org. This file is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License (GPL) as published by the Free Software - Foundation, in version 2 as it comes in the "COPYING" file of the + Foundation, in version 2 as it comes in the "COPYING" file of the VirtualBox OSE distribution. VirtualBox OSE is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY of any kind. </comment> @@ -30,7 +30,7 @@ </sizepolicy> </property> <layout class="QVBoxLayout" name="m_pLayout1"> - <property name="bottomMargin" > + <property name="bottomMargin"> <number>0</number> </property> <item> @@ -74,10 +74,13 @@ </item> <item> <spacer name="m_pSpacer1"> + <property name="orientation"> + <enum>Qt::Vertical</enum> + </property> <property name="sizeHint" stdset="0"> <size> <width>0</width> - <height>62</height> + <height>0</height> </size> </property> </spacer> diff --git a/src/VBox/Frontends/VirtualBox/src/wizards/firstrun/UIFirstRunWzdPage3.ui b/src/VBox/Frontends/VirtualBox/src/wizards/firstrun/UIFirstRunWzdPage3.ui index 1003a8b9f..4b68f0895 100644 --- a/src/VBox/Frontends/VirtualBox/src/wizards/firstrun/UIFirstRunWzdPage3.ui +++ b/src/VBox/Frontends/VirtualBox/src/wizards/firstrun/UIFirstRunWzdPage3.ui @@ -1,7 +1,7 @@ <?xml version="1.0" encoding="UTF-8"?> <ui version="4.0"> <comment> - VBox frontends: Qt4 GUI ("VirtualBox"): + VBox frontends: Qt4 GUI ("VirtualBox"): Copyright (C) 2009-2010 Oracle Corporation @@ -9,7 +9,7 @@ available from http://www.virtualbox.org. This file is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License (GPL) as published by the Free Software - Foundation, in version 2 as it comes in the "COPYING" file of the + Foundation, in version 2 as it comes in the "COPYING" file of the VirtualBox OSE distribution. VirtualBox OSE is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY of any kind. </comment> @@ -20,7 +20,7 @@ <x>0</x> <y>0</y> <width>600</width> - <height>600</height> + <height>661</height> </rect> </property> <property name="sizePolicy"> @@ -30,7 +30,7 @@ </sizepolicy> </property> <layout class="QVBoxLayout" name="m_pLayout1"> - <property name="bottomMargin" > + <property name="bottomMargin"> <number>0</number> </property> <item> @@ -97,10 +97,13 @@ </item> <item> <spacer name="m_pSpacer1"> + <property name="orientation"> + <enum>Qt::Vertical</enum> + </property> <property name="sizeHint" stdset="0"> <size> <width>0</width> - <height>117</height> + <height>0</height> </size> </property> </spacer> diff --git a/src/VBox/Frontends/VirtualBox/src/wizards/newhd/UINewHDWzd.cpp b/src/VBox/Frontends/VirtualBox/src/wizards/newhd/UINewHDWzd.cpp index dd4732430..4f44ae0f1 100644 --- a/src/VBox/Frontends/VirtualBox/src/wizards/newhd/UINewHDWzd.cpp +++ b/src/VBox/Frontends/VirtualBox/src/wizards/newhd/UINewHDWzd.cpp @@ -1,4 +1,4 @@ -/* $Id: UINewHDWzd.cpp 29350 2010-05-11 13:09:21Z vboxsync $ */ +/* $Id: UINewHDWzd.cpp 29437 2010-05-12 21:40:07Z vboxsync $ */ /** @file * * VBox frontends: Qt4 GUI ("VirtualBox"): @@ -444,9 +444,9 @@ void UINewHDWzdPage4::retranslateUi() summary += QString ( - "<tr><td><nobr>%1 </nobr></td><td><nobr>%2</nobr></td></tr>" - "<tr><td><nobr>%3 </nobr></td><td><nobr>%4</nobr></td></tr>" - "<tr><td><nobr>%5 </nobr></td><td><nobr>%6 (%7)</nobr></td></tr>" + "<tr><td><nobr>%1: </nobr></td><td><nobr>%2</nobr></td></tr>" + "<tr><td><nobr>%3: </nobr></td><td><nobr>%4</nobr></td></tr>" + "<tr><td><nobr>%5: </nobr></td><td><nobr>%6 (%7)</nobr></td></tr>" ) .arg (tr("Type", "summary"), type) .arg (tr("Location", "summary"), location) diff --git a/src/VBox/Frontends/VirtualBox/src/wizards/newvm/UINewVMWzd.cpp b/src/VBox/Frontends/VirtualBox/src/wizards/newvm/UINewVMWzd.cpp index 85939e67d..dcf6b3bb1 100644 --- a/src/VBox/Frontends/VirtualBox/src/wizards/newvm/UINewVMWzd.cpp +++ b/src/VBox/Frontends/VirtualBox/src/wizards/newvm/UINewVMWzd.cpp @@ -1,4 +1,4 @@ -/* $Id: UINewVMWzd.cpp 29350 2010-05-11 13:09:21Z vboxsync $ */ +/* $Id: UINewVMWzd.cpp 29437 2010-05-12 21:40:07Z vboxsync $ */ /** @file * * VBox frontends: Qt4 GUI ("VirtualBox"): @@ -574,9 +574,9 @@ void UINewVMWzdPage5::retranslateUi() summary += QString ( - "<tr><td><nobr>%1 </nobr></td><td>%2</td></tr>" - "<tr><td><nobr>%3 </nobr></td><td>%4</td></tr>" - "<tr><td><nobr>%5 </nobr></td><td>%6 %7</td></tr>" + "<tr><td><nobr>%1: </nobr></td><td>%2</td></tr>" + "<tr><td><nobr>%3: </nobr></td><td>%4</td></tr>" + "<tr><td><nobr>%5: </nobr></td><td>%6 %7</td></tr>" ) .arg(tr("Name", "summary"), name) .arg(tr("OS Type", "summary"), type) @@ -589,7 +589,7 @@ void UINewVMWzdPage5::retranslateUi() if (!field("hardDiskId").toString().isNull()) { summary += QString( - "<tr><td><nobr>%8 </nobr></td><td><nobr>%9</nobr></td></tr>") + "<tr><td><nobr>%8: </nobr></td><td><nobr>%9</nobr></td></tr>") .arg(tr("Boot Hard Disk", "summary"), field("hardDiskName").toString()); /* Extend summary to 4 lines */ setSummaryFieldLinesNumber(m_pSummaryText, 4); diff --git a/src/VBox/Frontends/VirtualBox/src/wizards/registration/UIRegistrationWzd.cpp b/src/VBox/Frontends/VirtualBox/src/wizards/registration/UIRegistrationWzd.cpp index 05084e66b..22936a4db 100644 --- a/src/VBox/Frontends/VirtualBox/src/wizards/registration/UIRegistrationWzd.cpp +++ b/src/VBox/Frontends/VirtualBox/src/wizards/registration/UIRegistrationWzd.cpp @@ -1,4 +1,4 @@ -/* $Id: UIRegistrationWzd.cpp 28800 2010-04-27 08:22:32Z vboxsync $ */ +/* $Id: UIRegistrationWzd.cpp 29526 2010-05-17 10:59:21Z vboxsync $ */ /** @file * * VBox frontends: Qt4 GUI ("VirtualBox"): @@ -417,8 +417,9 @@ UIRegistrationWzd::UIRegistrationWzd(UIRegistrationWzd **ppSelf) assignWatermark(":/vmw_new_user.png"); #endif /* Q_WS_MAC */ - /* Setup connections */ - connect(vboxGlobal().mainWindow(), SIGNAL(closing()), this, SLOT(reject())); + /* Setup 'closing' connection if main window is VBoxSelectorWnd: */ + if (vboxGlobal().mainWindow() && vboxGlobal().mainWindow()->inherits("VBoxSelectorWnd")) + connect(vboxGlobal().mainWindow(), SIGNAL(closing()), this, SLOT(reject())); } UIRegistrationWzd::~UIRegistrationWzd() |
