
package consulo.ui.layout;

import consulo.ui.Component;
import consulo.ui.annotation.RequiredUIAccess;
import consulo.ui.internal.UIInternal;

import javax.annotation.Nonnull;
import javax.annotation.Nullable;

/**
 * @author VISTALL
 * @since 2019-02-18
 */
public interface ThreeComponentSplitLayout extends Layout {
  @Nonnull
  static ThreeComponentSplitLayout create(@Nonnull SplitLayoutPosition position) {
    return UIInternal.get()._ThreeComponentSplitLayout_create(position);
  }

  @RequiredUIAccess
  @Nonnull
  ThreeComponentSplitLayout setFirstComponent(@Nullable Component component);

  @RequiredUIAccess
  @Nonnull
  ThreeComponentSplitLayout setCenterComponent(@Nullable Component component);

  @RequiredUIAccess
  @Nonnull
  ThreeComponentSplitLayout setSecondComponent(@Nullable Component component);
}
