Search in sources :

Example 1 with ConsolePopupModel

use of org.ovirt.engine.ui.uicommonweb.models.ConsolePopupModel in project ovirt-engine by oVirt.

the class ConsolePopupPresenterWidget method initView.

private void initView(ConsolePopupModel model) {
    listenOnRadioButtons();
    VmConsoles vmConsoles = model.getVmConsoles();
    getView().setSpiceAvailable(vmConsoles.canSelectProtocol(ConsoleProtocol.SPICE));
    getView().setVncAvailable(vmConsoles.canSelectProtocol(ConsoleProtocol.VNC));
    getView().setRdpAvailable(vmConsoles.canSelectProtocol(ConsoleProtocol.RDP));
    ConsoleProtocol selectedProtocol = vmConsoles.getSelectedProcotol();
    boolean rdpPreselected = ConsoleProtocol.RDP.equals(selectedProtocol);
    boolean spicePreselected = ConsoleProtocol.SPICE.equals(selectedProtocol);
    boolean vncPreselected = ConsoleProtocol.VNC.equals(selectedProtocol);
    getView().selectSpice(spicePreselected);
    getView().selectRdp(rdpPreselected);
    getView().selectVnc(vncPreselected);
    getView().showSpicePanel(spicePreselected);
    getView().showRdpPanel(rdpPreselected);
    getView().showVncPanel(vncPreselected);
    getView().setDisableSmartcardVisible(model.getVmConsoles().getVm().isSmartcardEnabled());
    ConsoleClient spice = model.getVmConsoles().getConsoleModel(SpiceConsoleModel.class).getSpiceImpl();
    if (spice != null) {
        if (!spice.getOptions().isWanOptionsEnabled()) {
            getView().selectWanOptionsEnabled(false);
        }
        spiceProxyUserPreference = vmConsoles.getConsoleModel(SpiceConsoleModel.class).getSpiceImpl().getOptions().isSpiceProxyEnabled();
    }
    getView().setNoVncEnabled(consoleUtils.webBasedClientsSupported(), constants.webBasedClientsUnsupported());
    if (!consoleUtils.isBrowserPluginSupported(ConsoleProtocol.RDP)) {
        getView().setRdpPluginImplEnabled(false, constants.rdpPluginNotSupportedByBrowser());
    }
    spiceProxyDefinedOnCluster = consoleUtils.isSpiceProxyDefined(vmConsoles.getVm());
    handleSpiceProxyAvailability();
    getView().selectVncImplementation(vmConsoles.getConsoleModel(VncConsoleModel.class).getClientConsoleMode());
    getView().selectRdpImplementation(vmConsoles.getConsoleModel(RdpConsoleModel.class).getClientConsoleMode());
    wanOptionsAvailable = vmConsoles.getConsoleModel(SpiceConsoleModel.class).isWanOptionsAvailableForMyVm();
    if (wanOptionsAvailable) {
        getView().setWanOptionsVisible(true);
    } else {
        getView().setWanOptionsVisible(false);
    }
    getView().setAdditionalConsoleAvailable(vmConsoles.canSelectProtocol(ConsoleProtocol.RDP));
    getView().setSpiceConsoleAvailable(vmConsoles.canSelectProtocol(ConsoleProtocol.SPICE));
    registerHandler(getView().getConsoleClientResourcesAnchor().addClickHandler(event -> {
        // $NON-NLS-1$ $NON-NLS-2$
        Window.open(dynamicMessages.consoleClientResourcesUrl(), "_blank", "resizable=yes,scrollbars=yes");
    }));
    registerHandler(getView().getSpiceProxyEnabledCheckBox().addValueChangeHandler(booleanValueChangeEvent -> spiceProxyUserPreference = booleanValueChangeEvent.getValue()));
    final boolean enableUsbAutoshareEnabled = model.getVmConsoles().getVm().getUsbPolicy() == UsbPolicy.ENABLED_NATIVE;
    if (enableUsbAutoshareEnabled) {
        getView().getEnableUsbAutoshare().setEnabled(true);
    } else {
        getView().getEnableUsbAutoshare().disable(constants.enableUsbSupportNotAvailable());
    }
}
Also used : DynamicMessages(org.ovirt.engine.ui.uicommonweb.DynamicMessages) UsbPolicy(org.ovirt.engine.core.common.businessentities.UsbPolicy) CommonApplicationConstants(org.ovirt.engine.ui.common.CommonApplicationConstants) Inject(com.google.inject.Inject) IEventListener(org.ovirt.engine.ui.uicompat.IEventListener) ConsoleUtils(org.ovirt.engine.ui.uicommonweb.ConsoleUtils) HasValueChangeHandlers(com.google.gwt.event.logical.shared.HasValueChangeHandlers) ConsoleOptions(org.ovirt.engine.core.common.console.ConsoleOptions) RdpConsoleModel(org.ovirt.engine.ui.uicommonweb.models.vms.RdpConsoleModel) AssetProvider(org.ovirt.engine.ui.common.gin.AssetProvider) AbstractModelBoundPopupPresenterWidget(org.ovirt.engine.ui.common.presenter.AbstractModelBoundPopupPresenterWidget) Window(com.google.gwt.user.client.Window) EventArgs(org.ovirt.engine.ui.uicompat.EventArgs) SpiceConsoleModel(org.ovirt.engine.ui.uicommonweb.models.vms.SpiceConsoleModel) ConsoleProtocol(org.ovirt.engine.ui.uicommonweb.models.ConsoleProtocol) ConsoleClient(org.ovirt.engine.ui.uicommonweb.models.vms.ConsoleClient) GenEvent(com.gwtplatform.dispatch.annotation.GenEvent) EventBus(com.google.gwt.event.shared.EventBus) ConsoleOptionsFrontendPersister(org.ovirt.engine.ui.uicommonweb.ConsoleOptionsFrontendPersister) ConsolePopupModel(org.ovirt.engine.ui.uicommonweb.models.ConsolePopupModel) UICommand(org.ovirt.engine.ui.uicommonweb.UICommand) VmConsoles(org.ovirt.engine.ui.uicommonweb.models.VmConsoles) HasClickHandlers(com.google.gwt.event.dom.client.HasClickHandlers) VmConsolesImpl(org.ovirt.engine.ui.uicommonweb.models.VmConsolesImpl) HasEnabledWithHints(org.ovirt.engine.ui.common.widget.HasEnabledWithHints) VncConsoleModel(org.ovirt.engine.ui.uicommonweb.models.vms.VncConsoleModel) ConsoleProtocol(org.ovirt.engine.ui.uicommonweb.models.ConsoleProtocol) SpiceConsoleModel(org.ovirt.engine.ui.uicommonweb.models.vms.SpiceConsoleModel) VmConsoles(org.ovirt.engine.ui.uicommonweb.models.VmConsoles) ConsoleClient(org.ovirt.engine.ui.uicommonweb.models.vms.ConsoleClient)

Example 2 with ConsolePopupModel

use of org.ovirt.engine.ui.uicommonweb.models.ConsolePopupModel in project ovirt-engine by oVirt.

the class VmListModel method editConsole.

private void editConsole() {
    if (getWindow() != null || getSelectedItem() == null) {
        return;
    }
    final VmConsoles activeVmConsoles = consolesFactory.getVmConsolesForVm(getSelectedItem());
    final ConsolePopupModel model = new ConsolePopupModel();
    model.setVmConsoles(activeVmConsoles);
    model.setHelpTag(HelpTag.editConsole);
    // $NON-NLS-1$
    model.setHashName("editConsole");
    setWindow(model);
    // $NON-NLS-1$
    final UICommand saveCommand = UICommand.createDefaultOkUiCommand("OnEditConsoleSave", this);
    model.getCommands().add(saveCommand);
    // $NON-NLS-1$
    final UICommand cancelCommand = UICommand.createCancelUiCommand("Cancel", this);
    model.getCommands().add(cancelCommand);
}
Also used : ConsolePopupModel(org.ovirt.engine.ui.uicommonweb.models.ConsolePopupModel) UICommand(org.ovirt.engine.ui.uicommonweb.UICommand) VmConsoles(org.ovirt.engine.ui.uicommonweb.models.VmConsoles)

Aggregations

UICommand (org.ovirt.engine.ui.uicommonweb.UICommand)2 ConsolePopupModel (org.ovirt.engine.ui.uicommonweb.models.ConsolePopupModel)2 VmConsoles (org.ovirt.engine.ui.uicommonweb.models.VmConsoles)2 HasClickHandlers (com.google.gwt.event.dom.client.HasClickHandlers)1 HasValueChangeHandlers (com.google.gwt.event.logical.shared.HasValueChangeHandlers)1 EventBus (com.google.gwt.event.shared.EventBus)1 Window (com.google.gwt.user.client.Window)1 Inject (com.google.inject.Inject)1 GenEvent (com.gwtplatform.dispatch.annotation.GenEvent)1 UsbPolicy (org.ovirt.engine.core.common.businessentities.UsbPolicy)1 ConsoleOptions (org.ovirt.engine.core.common.console.ConsoleOptions)1 CommonApplicationConstants (org.ovirt.engine.ui.common.CommonApplicationConstants)1 AssetProvider (org.ovirt.engine.ui.common.gin.AssetProvider)1 AbstractModelBoundPopupPresenterWidget (org.ovirt.engine.ui.common.presenter.AbstractModelBoundPopupPresenterWidget)1 HasEnabledWithHints (org.ovirt.engine.ui.common.widget.HasEnabledWithHints)1 ConsoleOptionsFrontendPersister (org.ovirt.engine.ui.uicommonweb.ConsoleOptionsFrontendPersister)1 ConsoleUtils (org.ovirt.engine.ui.uicommonweb.ConsoleUtils)1 DynamicMessages (org.ovirt.engine.ui.uicommonweb.DynamicMessages)1 ConsoleProtocol (org.ovirt.engine.ui.uicommonweb.models.ConsoleProtocol)1 VmConsolesImpl (org.ovirt.engine.ui.uicommonweb.models.VmConsolesImpl)1