Changeset 47401 in vbox for trunk/src/VBox/Frontends/VirtualBox
- Timestamp:
- Jul 25, 2013 7:12:24 PM (12 years ago)
- svn:sync-xref-src-repo-rev:
- 87551
- Location:
- trunk/src/VBox/Frontends/VirtualBox/src
- Files:
-
- 9 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Frontends/VirtualBox/src/globals/VBoxGlobal.cpp
r47376 r47401 1512 1512 QString item; 1513 1513 1514 CUSBController ctl = aMachine.GetUSBController();1515 1514 CUSBDeviceFilters flts = aMachine.GetUSBDeviceFilters(); 1516 if ( !ctl.isNull() 1517 && !flts.isNull() 1518 && ctl.GetProxyAvailable()) 1515 if ( !flts.isNull() 1516 && aMachine.GetUSBProxyAvailable()) 1519 1517 { 1520 1518 /* the USB controller may be unavailable (i.e. in VirtualBox OSE) */ 1521 1519 1522 if (ctl.GetEnabled()) 1520 ULONG cOhciCtls = aMachine.GetUSBControllerCountByType(KUSBControllerType_OHCI); 1521 1522 if (cOhciCtls) 1523 1523 { 1524 1524 CUSBDeviceFilterVector coll = flts.GetDeviceFilters(); -
trunk/src/VBox/Frontends/VirtualBox/src/runtime/UIIndicatorsPool.cpp
r47149 r47401 39 39 #include "CNetworkAdapter.h" 40 40 #include "CUSBController.h" 41 #include "CUSBDeviceFilters.h" 41 42 #include "CUSBDevice.h" 42 43 #include "CSharedFolder.h" … … 388 389 QString strFullData; 389 390 390 const CUSBController &usbctl = machine.GetUSBController(); 391 setState(!usbctl.isNull() && usbctl.GetEnabled() && usbctl.GetProxyAvailable() ? KDeviceActivity_Idle : KDeviceActivity_Null); 392 if (!usbctl.isNull() && usbctl.GetEnabled()) 391 392 /* 393 * Check whether there is at least one OHCI USB controllers with 394 * an available proxy. 395 */ 396 const CUSBDeviceFilters &filters = machine.GetUSBDeviceFilters(); 397 ULONG cOhciCtls = machine.GetUSBControllerCountByType(KUSBControllerType_OHCI); 398 bool fUSBEnabled = !filters.isNull() && cOhciCtls && machine.GetUSBProxyAvailable(); 399 400 setState(fUSBEnabled ? KDeviceActivity_Idle : KDeviceActivity_Null); 401 if (fUSBEnabled) 393 402 { 394 403 const CConsole &console = m_session.GetConsole(); -
trunk/src/VBox/Frontends/VirtualBox/src/runtime/UISession.cpp
r47396 r47401 68 68 #include "CVRDEServer.h" 69 69 #include "CUSBController.h" 70 #include "CUSBDeviceFilters.h" 70 71 #include "CSnapshot.h" 71 72 … … 1296 1297 /* USB stuff: */ 1297 1298 { 1298 /* Get USB controller: */ 1299 const CUSBController &usbController = machine.GetUSBController(); 1300 bool fUSBControllerEnabled = !usbController.isNull() && usbController.GetEnabled() && usbController.GetProxyAvailable(); 1299 /* 1300 * Check whether there is at least one OHCI USB controllers with 1301 * an available proxy. 1302 */ 1303 const CUSBDeviceFilters &filters = machine.GetUSBDeviceFilters(); 1304 ULONG cOhciCtls = machine.GetUSBControllerCountByType(KUSBControllerType_OHCI); 1305 bool fUSBEnabled = !filters.isNull() && cOhciCtls && machine.GetUSBProxyAvailable(); 1306 1301 1307 /* Show/Hide USB menu depending on controller availability, activity and USB-proxy presence: */ 1302 gActionPool->action(UIActionIndexRuntime_Menu_USBDevices)->setVisible(fUSB ControllerEnabled);1308 gActionPool->action(UIActionIndexRuntime_Menu_USBDevices)->setVisible(fUSBEnabled); 1303 1309 } 1304 1310 } -
trunk/src/VBox/Frontends/VirtualBox/src/runtime/normal/UIMachineWindowNormal.cpp
r46831 r47401 47 47 #include "CMediumAttachment.h" 48 48 #include "CUSBController.h" 49 #include "CUSBDeviceFilters.h" 49 50 50 51 UIMachineWindowNormal::UIMachineWindowNormal(UIMachineLogic *pMachineLogic, ulong uScreenId) … … 488 489 if (indicatorsPool()->indicator(IndicatorType_USB)) 489 490 { 490 const CUSBController &usbController = m.GetUSBController(); 491 if ( usbController.isNull() 492 || !usbController.GetEnabled() 493 || !usbController.GetProxyAvailable()) 491 const CUSBDeviceFilters &filters = m.GetUSBDeviceFilters(); 492 ULONG cOhciCtls = m.GetUSBControllerCountByType(KUSBControllerType_OHCI); 493 bool fUSBEnabled = !filters.isNull() && cOhciCtls && m.GetUSBProxyAvailable(); 494 495 if (!fUSBEnabled) 494 496 { 495 497 /* Hide USB menu: */ … … 499 501 { 500 502 /* Toggle USB LED: */ 501 indicatorsPool()->indicator(IndicatorType_USB)->setState( 502 usbController.GetEnabled() ? KDeviceActivity_Idle : KDeviceActivity_Null); 503 indicatorsPool()->indicator(IndicatorType_USB)->setState(KDeviceActivity_Idle); 503 504 } 504 505 } -
trunk/src/VBox/Frontends/VirtualBox/src/selector/graphics/details/UIGDetailsElements.cpp
r47376 r47401 889 889 { 890 890 /* Iterate over all the USB filters: */ 891 const CUSB Controller &ctl = machine().GetUSBController();892 if (! ctl.isNull() && ctl.GetProxyAvailable())891 const CUSBDeviceFilters &filters = machine().GetUSBDeviceFilters(); 892 if (!filters.isNull() && machine().GetUSBProxyAvailable()) 893 893 { 894 894 const CUSBDeviceFilters &flts = machine().GetUSBDeviceFilters(); 895 if (!flts.isNull() && ctl.GetEnabled())895 if (!flts.isNull() && machine().GetUSBControllerCountByType(KUSBControllerType_OHCI)) 896 896 { 897 897 const CUSBDeviceFilterVector &coll = flts.GetDeviceFilters(); -
trunk/src/VBox/Frontends/VirtualBox/src/selector/graphics/details/UIGDetailsSet.cpp
r45287 r47401 29 29 /* COM includes: */ 30 30 #include "CUSBController.h" 31 #include "CUSBDeviceFilters.h" 31 32 32 33 UIGDetailsSet::UIGDetailsSet(UIGDetailsItem *pParent) … … 96 97 97 98 /* Fetch USB controller restrictions: */ 98 const CUSB Controller &ctl = m_machine.GetUSBController();99 if ( ctl.isNull() || !ctl.GetProxyAvailable())99 const CUSBDeviceFilters &filters = m_machine.GetUSBDeviceFilters(); 100 if (filters.isNull() || !m_machine.GetUSBProxyAvailable()) 100 101 { 101 102 QString strElementTypeOpened = gpConverter->toInternalString(DetailsElementType_USB); -
trunk/src/VBox/Frontends/VirtualBox/src/settings/UISettingsDialogSpecific.cpp
r47263 r47401 858 858 if (pSystemPage && pSystemPage->isHIDEnabled()) 859 859 { 860 CUSBController controller = m_machine.GetUSBController();861 if (!c ontroller.isNull())862 controller.SetEnabled(true);860 ULONG cOhciCtls = m_machine.GetUSBControllerCountByType(KUSBControllerType_OHCI); 861 if (!cOhciCtls) 862 m_machine.AddUSBController("OHCI", KUSBControllerType_OHCI); 863 863 } 864 864 … … 1124 1124 if (!isPageAvailable(MachineSettingsPageType_Ports)) 1125 1125 return false; 1126 /* Check if USB is implemented: */ 1127 if (!m_machine.GetUSBProxyAvailable()) 1128 return false; 1126 1129 /* Get the USB controller object: */ 1127 CUSBController controller = m_machine.GetUSBController();1130 CUSBControllerVector controllerColl = m_machine.GetUSBControllers(); 1128 1131 /* Show the machine error message if any: */ 1129 if (!m_machine.isReallyOk() && !controller.isNull() && controller.GetEnabled()) 1132 if ( !m_machine.isReallyOk() 1133 && controllerColl.size() > 0 1134 && m_machine.GetUSBControllerCountByType(KUSBControllerType_OHCI)) 1130 1135 msgCenter().warnAboutUnaccessibleUSB(m_machine, parentWidget()); 1131 /* Check if USB is implemented: */1132 if (controller.isNull() || !controller.GetProxyAvailable())1133 return false;1134 1136 break; 1135 1137 } -
trunk/src/VBox/Frontends/VirtualBox/src/settings/machine/UIMachineSettingsUSB.cpp
r47376 r47401 294 294 295 295 /* Check if controller is valid: */ 296 const CUSB Controller &controller = m_machine.GetUSBController();297 if (! controller.isNull())296 const CUSBDeviceFilters &filters = m_machine.GetUSBDeviceFilters(); 297 if (!filters.isNull()) 298 298 { 299 299 /* Gather USB values: */ 300 usbData.m_fUSBEnabled = controller.GetEnabled();301 usbData.m_fEHCIEnabled = controller.GetEnabledEHCI();300 usbData.m_fUSBEnabled = m_machine.GetUSBControllerCountByType(KUSBControllerType_OHCI) > 0; 301 usbData.m_fEHCIEnabled = m_machine.GetUSBControllerCountByType(KUSBControllerType_EHCI) > 0; 302 302 303 303 /* For each USB filter: */ 304 const CUSBDeviceFilter s &filters = m_machine.GetUSBDeviceFilters();305 if (!filters.isNull())304 const CUSBDeviceFilterVector &coll = filters.GetDeviceFilters(); 305 for (int iFilterIndex = 0; iFilterIndex < coll.size(); ++iFilterIndex) 306 306 { 307 const CUSBDeviceFilterVector &coll = filters.GetDeviceFilters(); 308 for (int iFilterIndex = 0; iFilterIndex < coll.size(); ++iFilterIndex) 307 /* Prepare USB filter data: */ 308 UIDataSettingsMachineUSBFilter usbFilterData; 309 310 /* Check if filter is valid: */ 311 const CUSBDeviceFilter &filter = coll[iFilterIndex]; 312 if (!filter.isNull()) 309 313 { 310 /* Prepare USB filter data: */ 311 UIDataSettingsMachineUSBFilter usbFilterData; 312 313 /* Check if filter is valid: */ 314 const CUSBDeviceFilter &filter = coll[iFilterIndex]; 315 if (!filter.isNull()) 316 { 317 usbFilterData.m_fActive = filter.GetActive(); 318 usbFilterData.m_strName = filter.GetName(); 319 usbFilterData.m_strVendorId = filter.GetVendorId(); 320 usbFilterData.m_strProductId = filter.GetProductId(); 321 usbFilterData.m_strRevision = filter.GetRevision(); 322 usbFilterData.m_strManufacturer = filter.GetManufacturer(); 323 usbFilterData.m_strProduct = filter.GetProduct(); 324 usbFilterData.m_strSerialNumber = filter.GetSerialNumber(); 325 usbFilterData.m_strPort = filter.GetPort(); 326 usbFilterData.m_strRemote = filter.GetRemote(); 327 } 328 329 /* Cache USB filter data: */ 330 m_cache.child(iFilterIndex).cacheInitialData(usbFilterData); 314 usbFilterData.m_fActive = filter.GetActive(); 315 usbFilterData.m_strName = filter.GetName(); 316 usbFilterData.m_strVendorId = filter.GetVendorId(); 317 usbFilterData.m_strProductId = filter.GetProductId(); 318 usbFilterData.m_strRevision = filter.GetRevision(); 319 usbFilterData.m_strManufacturer = filter.GetManufacturer(); 320 usbFilterData.m_strProduct = filter.GetProduct(); 321 usbFilterData.m_strSerialNumber = filter.GetSerialNumber(); 322 usbFilterData.m_strPort = filter.GetPort(); 323 usbFilterData.m_strRemote = filter.GetRemote(); 331 324 } 325 326 /* Cache USB filter data: */ 327 m_cache.child(iFilterIndex).cacheInitialData(usbFilterData); 332 328 } 333 329 } … … 491 487 { 492 488 /* Check if controller is valid: */ 493 CUSB Controller controller = m_machine.GetUSBController();494 if (! controller.isNull())489 CUSBDeviceFilters filters = m_machine.GetUSBDeviceFilters(); 490 if (!filters.isNull()) 495 491 { 496 492 /* Get USB data from cache: */ 497 CUSBDeviceFilters filters = m_machine.GetUSBDeviceFilters(); 493 498 494 const UIDataSettingsMachineUSB &usbData = m_cache.data(); 499 495 /* Store USB data: */ 500 496 if (isMachineOffline()) 501 497 { 502 controller.SetEnabled(usbData.m_fUSBEnabled); 503 controller.SetEnabledEHCI(usbData.m_fEHCIEnabled); 498 ULONG cOhciCtls = m_machine.GetUSBControllerCountByType(KUSBControllerType_OHCI); 499 ULONG cEhciCtls = m_machine.GetUSBControllerCountByType(KUSBControllerType_EHCI); 500 501 if (!cOhciCtls && usbData.m_fUSBEnabled) 502 m_machine.AddUSBController("OHCI", KUSBControllerType_OHCI); 503 else if (cOhciCtls && !usbData.m_fUSBEnabled) 504 m_machine.RemoveUSBController("OHCI"); 505 506 if (!cEhciCtls && usbData.m_fEHCIEnabled) 507 m_machine.AddUSBController("EHCI", KUSBControllerType_EHCI); 508 else if (cEhciCtls && !usbData.m_fEHCIEnabled) 509 m_machine.RemoveUSBController("EHCI"); 504 510 } 505 511 /* Store USB filters data: */ 506 if ( isMachineInValidMode() 507 && !filters.isNull()) 512 if (isMachineInValidMode()) 508 513 { 509 514 /* For each USB filter data set: */ -
trunk/src/VBox/Frontends/VirtualBox/src/wizards/newvm/UIWizardNewVM.cpp
r45316 r47401 30 30 #include "CAudioAdapter.h" 31 31 #include "CUSBController.h" 32 #include "CUSBDeviceFilters.h" 32 33 #include "CExtPackManager.h" 33 34 #include "CStorageController.h" … … 94 95 95 96 /* Enable the OHCI and EHCI controller by default for new VMs. (new in 2.2): */ 96 CUSBController usbController = m_machine.GetUSBController(); 97 if (!usbController.isNull() && type.GetRecommendedUSB() && usbController.GetProxyAvailable()) 98 { 99 usbController.SetEnabled(true); 97 CUSBDeviceFilters usbDeviceFilters = m_machine.GetUSBDeviceFilters(); 98 bool fOhciEnabled = false; 99 if (!usbDeviceFilters.isNull() && type.GetRecommendedUSB() && m_machine.GetUSBProxyAvailable()) 100 { 101 m_machine.AddUSBController("OHCI", KUSBControllerType_OHCI); 102 fOhciEnabled = true; 100 103 /* USB 2.0 is only available if the proper ExtPack is installed. 101 104 * Note. Configuring EHCI here and providing messages about … … 105 108 CExtPackManager manager = vboxGlobal().virtualBox().GetExtensionPackManager(); 106 109 if (manager.IsExtPackUsable(GUI_ExtPackName)) 107 usbController.SetEnabledEHCI(true);110 m_machine.AddUSBController("EHCI", KUSBControllerType_EHCI); 108 111 } 109 112 … … 162 165 m_machine.SetKeyboardHIDType(KKeyboardHIDType_USBKeyboard); 163 166 m_machine.SetPointingHIDType(KPointingHIDType_USBMouse); 164 if (! usbController.isNull())165 usbController.SetEnabled(true);167 if (!fOhciEnabled && !usbDeviceFilters.isNull()) 168 m_machine.AddUSBController("OHCI", KUSBControllerType_OHCI); 166 169 } 167 170 … … 169 172 { 170 173 m_machine.SetPointingHIDType(KPointingHIDType_USBTablet); 171 if (! usbController.isNull())172 usbController.SetEnabled(true);174 if (!fOhciEnabled && !usbDeviceFilters.isNull()) 175 m_machine.AddUSBController("OHCI", KUSBControllerType_OHCI); 173 176 } 174 177
Note:
See TracChangeset
for help on using the changeset viewer.