blob: 8cc0664ba5449a28cd2b865c55ffc296c4cb5bd5 [file] [log] [blame]
/* 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 ()));
}
}