Browse Source

Add state classes for Abstract(Single)ComponentContainer

Change-Id: I6939fbc6f7aed0897f50b19f85fb62d0b8368cc7
tags/8.0.0.alpha8
Henri Sara 7 years ago
parent
commit
051bac514c

+ 6
- 0
client/src/main/java/com/vaadin/client/ui/AbstractComponentConnector.java View File

import com.vaadin.shared.MouseEventDetails; import com.vaadin.shared.MouseEventDetails;
import com.vaadin.shared.ui.ComponentStateUtil; import com.vaadin.shared.ui.ComponentStateUtil;
import com.vaadin.shared.ui.TabIndexState; import com.vaadin.shared.ui.TabIndexState;
import com.vaadin.shared.ui.ui.UIState;


public abstract class AbstractComponentConnector extends AbstractConnector public abstract class AbstractComponentConnector extends AbstractConnector
implements ComponentConnector, HasErrorIndicator { implements ComponentConnector, HasErrorIndicator {
// + Util.getSimpleName(getWidget()) // + Util.getSimpleName(getWidget())
// + " which does not implement Focusable"); // + " which does not implement Focusable");
} }
} else if (getState() instanceof UIState
&& getWidget() instanceof Focusable) {
// UI behaves like a component with TabIndexState
((Focusable) getWidget())
.setTabIndex(((UIState) getState()).tabIndex);
} }
Profiler.leave( Profiler.leave(
"AbstractComponentConnector.onStateChanged update tab index"); "AbstractComponentConnector.onStateChanged update tab index");

+ 11
- 0
server/src/main/java/com/vaadin/ui/AbstractComponentContainer.java View File



import com.vaadin.server.ComponentSizeValidator; import com.vaadin.server.ComponentSizeValidator;
import com.vaadin.shared.Registration; import com.vaadin.shared.Registration;
import com.vaadin.shared.ui.AbstractComponentContainerState;


/** /**
* Extension to {@link AbstractComponent} that defines the default * Extension to {@link AbstractComponent} that defines the default
public Iterator<Component> getComponentIterator() { public Iterator<Component> getComponentIterator() {
return iterator(); return iterator();
} }

@Override
protected AbstractComponentContainerState getState() {
return (AbstractComponentContainerState) super.getState();
}

@Override
protected AbstractComponentContainerState getState(boolean markAsDirty) {
return (AbstractComponentContainerState) super.getState(markAsDirty);
}
} }

+ 14
- 0
server/src/main/java/com/vaadin/ui/AbstractSingleComponentContainer.java View File

import com.vaadin.server.VaadinService; import com.vaadin.server.VaadinService;
import com.vaadin.server.VaadinSession; import com.vaadin.server.VaadinSession;
import com.vaadin.shared.Registration; import com.vaadin.shared.Registration;
import com.vaadin.shared.ui.AbstractSingleComponentContainerState;
import com.vaadin.ui.declarative.DesignContext; import com.vaadin.ui.declarative.DesignContext;
import com.vaadin.ui.declarative.DesignException; import com.vaadin.ui.declarative.DesignException;


design.appendChild(childNode); design.appendChild(childNode);
} }
} }

@Override
protected AbstractSingleComponentContainerState getState() {
return (AbstractSingleComponentContainerState) super.getState();
}

@Override
protected AbstractSingleComponentContainerState getState(
boolean markAsDirty) {
return (AbstractSingleComponentContainerState) super.getState(
markAsDirty);
}

} }

+ 27
- 0
shared/src/main/java/com/vaadin/shared/ui/AbstractComponentContainerState.java View File

/*
* Copyright 2000-2016 Vaadin Ltd.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not
* use this file except in compliance with the License. You may obtain a copy of
* the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
* License for the specific language governing permissions and limitations under
* the License.
*/

package com.vaadin.shared.ui;

import com.vaadin.shared.AbstractComponentState;

/**
* Default shared state implementation for AbstractComponentContainer.
*
* @since 8.0
*/
public class AbstractComponentContainerState extends AbstractComponentState {
}

+ 7
- 3
shared/src/main/java/com/vaadin/shared/ui/AbstractLayoutState.java View File

*/ */
package com.vaadin.shared.ui; package com.vaadin.shared.ui;


import com.vaadin.shared.AbstractComponentState;

public class AbstractLayoutState extends AbstractComponentState {
/**
* Shared state for AbstractLayout.
*
* @author Vaadin Ltd
* @since 7.0
*/
public class AbstractLayoutState extends AbstractComponentContainerState {


} }

+ 28
- 0
shared/src/main/java/com/vaadin/shared/ui/AbstractSingleComponentContainerState.java View File

/*
* Copyright 2000-2016 Vaadin Ltd.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not
* use this file except in compliance with the License. You may obtain a copy of
* the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
* License for the specific language governing permissions and limitations under
* the License.
*/

package com.vaadin.shared.ui;

import com.vaadin.shared.AbstractComponentState;

/**
* Default shared state implementation for AbstractSingleComponentContainer.
*
* @since 8.0
*/
public class AbstractSingleComponentContainerState
extends AbstractComponentState {
}

+ 2
- 2
shared/src/main/java/com/vaadin/shared/ui/loginform/LoginFormState.java View File



package com.vaadin.shared.ui.loginform; package com.vaadin.shared.ui.loginform;


import com.vaadin.shared.AbstractComponentState;
import com.vaadin.shared.Connector; import com.vaadin.shared.Connector;
import com.vaadin.shared.communication.URLReference; import com.vaadin.shared.communication.URLReference;
import com.vaadin.shared.ui.AbstractSingleComponentContainerState;


public class LoginFormState extends AbstractComponentState {
public class LoginFormState extends AbstractSingleComponentContainerState {
public Connector userNameFieldConnector; public Connector userNameFieldConnector;
public Connector passwordFieldConnector; public Connector passwordFieldConnector;
public Connector loginButtonConnector; public Connector loginButtonConnector;

+ 2
- 2
shared/src/main/java/com/vaadin/shared/ui/panel/PanelState.java View File

*/ */
package com.vaadin.shared.ui.panel; package com.vaadin.shared.ui.panel;


import com.vaadin.shared.AbstractComponentState;
import com.vaadin.shared.annotations.NoLayout; import com.vaadin.shared.annotations.NoLayout;
import com.vaadin.shared.ui.AbstractSingleComponentContainerState;


public class PanelState extends AbstractComponentState {
public class PanelState extends AbstractSingleComponentContainerState {
{ {
primaryStyleName = "v-panel"; primaryStyleName = "v-panel";
} }

+ 2
- 2
shared/src/main/java/com/vaadin/shared/ui/splitpanel/AbstractSplitPanelState.java View File



import java.io.Serializable; import java.io.Serializable;


import com.vaadin.shared.AbstractComponentState;
import com.vaadin.shared.Connector; import com.vaadin.shared.Connector;
import com.vaadin.shared.ui.AbstractComponentContainerState;


public class AbstractSplitPanelState extends AbstractComponentState {
public class AbstractSplitPanelState extends AbstractComponentContainerState {
public Connector firstChild = null; public Connector firstChild = null;
public Connector secondChild = null; public Connector secondChild = null;
public SplitterState splitterState = new SplitterState(); public SplitterState splitterState = new SplitterState();

+ 2
- 2
shared/src/main/java/com/vaadin/shared/ui/tabsheet/TabsheetState.java View File

import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;


import com.vaadin.shared.AbstractComponentState;
import com.vaadin.shared.annotations.DelegateToWidget; import com.vaadin.shared.annotations.DelegateToWidget;
import com.vaadin.shared.annotations.NoLayout; import com.vaadin.shared.annotations.NoLayout;
import com.vaadin.shared.ui.AbstractComponentContainerState;


public class TabsheetState extends AbstractComponentState {
public class TabsheetState extends AbstractComponentContainerState {
public static final String PRIMARY_STYLE_NAME = "v-tabsheet"; public static final String PRIMARY_STYLE_NAME = "v-tabsheet";


{ {

+ 9
- 2
shared/src/main/java/com/vaadin/shared/ui/ui/UIState.java View File

import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;


import com.vaadin.shared.annotations.NoLayout;
import com.vaadin.shared.communication.PushMode; import com.vaadin.shared.communication.PushMode;
import com.vaadin.shared.ui.TabIndexState;
import com.vaadin.shared.ui.AbstractSingleComponentContainerState;

public class UIState extends AbstractSingleComponentContainerState {
/**
* The <i>tabulator index</i> of the field.
*/
@NoLayout
public int tabIndex = 0;


public class UIState extends TabIndexState {
public TooltipConfigurationState tooltipConfiguration = new TooltipConfigurationState(); public TooltipConfigurationState tooltipConfiguration = new TooltipConfigurationState();
public LoadingIndicatorConfigurationState loadingIndicatorConfiguration = new LoadingIndicatorConfigurationState(); public LoadingIndicatorConfigurationState loadingIndicatorConfiguration = new LoadingIndicatorConfigurationState();
public int pollInterval = -1; public int pollInterval = -1;

+ 2
- 2
uitest/src/main/java/com/vaadin/tests/widgetset/client/UseStateFromHierachyChangeConnectorState.java View File



package com.vaadin.tests.widgetset.client; package com.vaadin.tests.widgetset.client;


import com.vaadin.shared.AbstractComponentState;
import com.vaadin.shared.Connector; import com.vaadin.shared.Connector;
import com.vaadin.shared.ui.AbstractSingleComponentContainerState;


public class UseStateFromHierachyChangeConnectorState public class UseStateFromHierachyChangeConnectorState
extends AbstractComponentState {
extends AbstractSingleComponentContainerState {
public Connector child; public Connector child;
} }

Loading…
Cancel
Save