/* Copyright (C) 2000 Free Software Foundation This file is part of libgcj. This software is copyrighted work licensed under the terms of the Libgcj License. Please consult the file "LIBGCJ_LICENSE" for details. */ /* Status: Incomplete. Needs a Locale lookup table. */ package java.awt; import java.util.Locale; import java.util.ResourceBundle; public class ComponentOrientation implements java.io.Serializable { // Here is a wild guess. private static int HORIZONTAL_ID = 1 << 0, LEFT_TO_RIGHT_ID = 1 << 1; public static final ComponentOrientation LEFT_TO_RIGHT = new ComponentOrientation(HORIZONTAL_ID & LEFT_TO_RIGHT_ID); public static final ComponentOrientation RIGHT_TO_LEFT = new ComponentOrientation(HORIZONTAL_ID); public static final ComponentOrientation UNKNOWN = new ComponentOrientation(0); // FIXME: This field is from the serialization spec, but what are the // correct values? int orientation; ComponentOrientation(int orientation) { this.orientation = orientation; } public boolean isHorizontal() { return ((orientation & HORIZONTAL_ID) != 0); } public boolean isLeftToRight() { return ((orientation & LEFT_TO_RIGHT_ID) != 0); } public static ComponentOrientation getOrientation(Locale locale) { // FIXME: Use a table to look this up. return LEFT_TO_RIGHT; } public static ComponentOrientation getOrientation(ResourceBundle bdl) { ComponentOrientation r; try { Object obj = bdl.getObject("Orientation"); r = (ComponentOrientation) obj; if (r != null) return r; } catch (Exception x) { // Fall through } try { Locale l = bdl.getLocale(); r = getOrientation(l); if (r != null) return r; } catch (Exception x) { // Fall through } return (getOrientation (Locale.getDefault ())); } }