Class JSheet
- java.lang.Object
-
- java.awt.Component
-
- java.awt.Container
-
- java.awt.Window
-
- java.awt.Dialog
-
- javax.swing.JDialog
-
- org.jhotdraw.gui.JSheet
-
- All Implemented Interfaces:
- java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, javax.accessibility.Accessible, javax.swing.RootPaneContainer, javax.swing.WindowConstants
public class JSheet extends javax.swing.JDialogJSheet is a document modal dialog which is displayed below the title bar of a JFrame.A JSheet blocks input on its owner window, while it is visible.
Unlike application modal dialogs, the show method of a JSheet does return immediately, when the JSheet has become visible. Applications need to use a SheetListener to get the return value of a JSheet.
Requires Java 1.4.
Caveats: We are using an unsupported API call to make the JSheet translucent. This API may go away in future versions of the Macintosh Runtime for Java. In such a case, we (hopefully) just end up with a non-opaque sheet.
- See Also:
- Serialized Form
-
-
Nested Class Summary
-
Field Summary
-
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
-
-
Constructor Summary
Constructors Constructor and Description JSheet(java.awt.Dialog owner)Creates a new JSheet.JSheet(java.awt.Frame owner)Creates a new JSheet.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method and Description voidaddNotify()voidaddSheetListener(SheetListener l)Adds a sheet listener.voiddispose()voidhide()booleanisAnimated()If this returns true, the JSheet uses a transition effect when shown and when hidden.voidremoveSheetListener(SheetListener l)Removes a sheet listener.static voidrequestUserAttention(boolean requestCritical)Requests attention from user.voidsetAnimated(boolean newValue)If this is set to true, the JSheet uses a transition effect when shown and when hidden.voidshow()static voidshowConfirmSheet(java.awt.Component parentComponent, java.lang.Object message, int optionType, int messageType, javax.swing.Icon icon, SheetListener listener)Brings up a sheet with a specified icon, where the number of choices is determined by theoptionTypeparameter.static voidshowConfirmSheet(java.awt.Component parentComponent, java.lang.Object message, int optionType, int messageType, SheetListener listener)Brings up a sheet where the number of choices is determined by theoptionTypeparameter, where themessageTypeparameter determines the icon to display.static voidshowConfirmSheet(java.awt.Component parentComponent, java.lang.Object message, int optionType, SheetListener listener)Brings up a sheet where the number of choices is determined by theoptionTypeparameter.static voidshowConfirmSheet(java.awt.Component parentComponent, java.lang.Object message, SheetListener listener)Brings up a sheet with the options Yes, No and Cancel.static voidshowInputSheet(java.awt.Component parentComponent, java.lang.Object message, int messageType, javax.swing.Icon icon, java.lang.Object[] selectionValues, java.lang.Object initialSelectionValue, SheetListener listener)Prompts the user for input in a sheet where the initial selection, possible selections, and all other options can be specified.static voidshowInputSheet(java.awt.Component parentComponent, java.lang.Object message, int messageType, SheetListener listener)Shows a sheet requesting input from the user parented toparentComponentand message typemessageType.static voidshowInputSheet(java.awt.Component parentComponent, java.lang.Object message, java.lang.Object initialSelectionValue, SheetListener listener)Shows a question-message sheet requesting input from the user and parented toparentComponent.static voidshowInputSheet(java.awt.Component parentComponent, java.lang.Object message, SheetListener listener)Shows a question-message sheet requesting input from the user parented toparentComponent.static voidshowMessageSheet(java.awt.Component parentComponent, java.lang.Object message)Brings up an information-message sheet.static voidshowMessageSheet(java.awt.Component parentComponent, java.lang.Object message, int messageType)Brings up a sheet that displays a message using a default icon determined by themessageTypeparameter.static voidshowMessageSheet(java.awt.Component parentComponent, java.lang.Object message, int messageType, javax.swing.Icon icon, SheetListener listener)Brings up a sheet displaying a message, specifying all parameters.static voidshowMessageSheet(java.awt.Component parentComponent, java.lang.Object message, int messageType, SheetListener listener)Brings up a sheet that displays a message using a default icon determined by themessageTypeparameter.static voidshowMessageSheet(java.awt.Component parentComponent, java.lang.Object message, SheetListener listener)Brings up an information-message sheet.static voidshowOpenSheet(javax.swing.JFileChooser chooser, java.awt.Component parent, SheetListener listener)Displays an "Open File" file chooser sheet.static voidshowOpenSheet(URIChooser chooser, java.awt.Component parent, SheetListener listener)Displays an "Open File" file chooser sheet.static voidshowOptionSheet(java.awt.Component parentComponent, java.lang.Object message, int optionType, int messageType, javax.swing.Icon icon, java.lang.Object[] options, java.lang.Object initialValue, SheetListener listener)Brings up a sheet with a specified icon, where the initial choice is determined by theinitialValueparameter and the number of choices is determined by theoptionTypeparameter.static voidshowSaveSheet(javax.swing.JFileChooser chooser, java.awt.Component parent, SheetListener listener)Displays a "Save File" file chooser sheet.static voidshowSaveSheet(URIChooser chooser, java.awt.Component parent, SheetListener listener)Displays a "Save File" file chooser sheet.static voidshowSheet(javax.swing.JFileChooser chooser, java.awt.Component parent, java.lang.String approveButtonText, SheetListener listener)Displays a custom file chooser sheet with a custom approve button.static voidshowSheet(javax.swing.JOptionPane pane, java.awt.Component parentComponent, SheetListener listener)Displays an option pane as a sheet on its parent window.static voidshowSheet(URIChooser chooser, java.awt.Component parent, java.lang.String approveButtonText, SheetListener listener)Displays a custom file chooser sheet with a custom approve button.-
Methods inherited from class javax.swing.JDialog
getAccessibleContext, getContentPane, getDefaultCloseOperation, getGlassPane, getGraphics, getJMenuBar, getLayeredPane, getRootPane, getTransferHandler, isDefaultLookAndFeelDecorated, remove, repaint, setContentPane, setDefaultCloseOperation, setDefaultLookAndFeelDecorated, setGlassPane, setJMenuBar, setLayeredPane, setLayout, setTransferHandler, update
-
Methods inherited from class java.awt.Dialog
getModalityType, getTitle, isModal, isResizable, isUndecorated, setBackground, setModal, setModalityType, setOpacity, setResizable, setShape, setTitle, setUndecorated, setVisible, toBack
-
Methods inherited from class java.awt.Window
addPropertyChangeListener, addPropertyChangeListener, addWindowFocusListener, addWindowListener, addWindowStateListener, applyResourceBundle, applyResourceBundle, createBufferStrategy, createBufferStrategy, getBackground, getBufferStrategy, getFocusableWindowState, getFocusCycleRootAncestor, getFocusOwner, getFocusTraversalKeys, getIconImages, getInputContext, getListeners, getLocale, getModalExclusionType, getMostRecentFocusOwner, getOpacity, getOwnedWindows, getOwner, getOwnerlessWindows, getShape, getToolkit, getType, getWarningString, getWindowFocusListeners, getWindowListeners, getWindows, getWindowStateListeners, isActive, isAlwaysOnTop, isAlwaysOnTopSupported, isAutoRequestFocus, isFocusableWindow, isFocusCycleRoot, isFocused, isLocationByPlatform, isOpaque, isShowing, isValidateRoot, pack, paint, postEvent, removeNotify, removeWindowFocusListener, removeWindowListener, removeWindowStateListener, reshape, setAlwaysOnTop, setAutoRequestFocus, setBounds, setBounds, setCursor, setFocusableWindowState, setFocusCycleRoot, setIconImage, setIconImages, setLocation, setLocation, setLocationByPlatform, setLocationRelativeTo, setMinimumSize, setModalExclusionType, setSize, setSize, setType, toFront
-
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getAlignmentX, getAlignmentY, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalPolicy, getInsets, getLayout, getMaximumSize, getMinimumSize, getMousePosition, getPreferredSize, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, print, printComponents, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusTraversalKeys, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setFont, transferFocusDownCycle, validate
-
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, contains, contains, createImage, createImage, createVolatileImage, createVolatileImage, disable, dispatchEvent, enable, enable, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBaseline, getBaselineResizeBehavior, getBounds, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphicsConfiguration, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocation, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getSize, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isDoubleBuffered, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, prepareImage, prepareImage, printAll, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, requestFocusInWindow, resize, resize, revalidate, setComponentOrientation, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setMaximumSize, setName, setPreferredSize, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
-
-
-
-
Constructor Detail
-
JSheet
public JSheet(java.awt.Frame owner)
Creates a new JSheet.
-
JSheet
public JSheet(java.awt.Dialog owner)
Creates a new JSheet.
-
-
Method Detail
-
addNotify
public void addNotify()
- Overrides:
addNotifyin classjava.awt.Dialog
-
setAnimated
public void setAnimated(boolean newValue)
If this is set to true, the JSheet uses a transition effect when shown and when hidden.
-
isAnimated
public boolean isAnimated()
If this returns true, the JSheet uses a transition effect when shown and when hidden.
-
dispose
public void dispose()
- Overrides:
disposein classjava.awt.Window
-
hide
public void hide()
- Overrides:
hidein classjava.awt.Dialog
-
show
public void show()
- Overrides:
showin classjava.awt.Dialog
-
requestUserAttention
public static void requestUserAttention(boolean requestCritical)
Requests attention from user. This is invoked when the sheet is opened.
-
addSheetListener
public void addSheetListener(SheetListener l)
Adds a sheet listener.
-
removeSheetListener
public void removeSheetListener(SheetListener l)
Removes a sheet listener.
-
showSheet
public static void showSheet(javax.swing.JOptionPane pane, java.awt.Component parentComponent, SheetListener listener)Displays an option pane as a sheet on its parent window.- Parameters:
pane- The option pane.parentComponent- The parent of the option pane.listener- The listener for SheetEvents.
-
showConfirmSheet
public static void showConfirmSheet(java.awt.Component parentComponent, java.lang.Object message, SheetListener listener)Brings up a sheet with the options Yes, No and Cancel.- Parameters:
parentComponent- determines theFramein which the sheet is displayed; ifnull, or if theparentComponenthas noFrame, the sheet is displayed as a dialog.message- theObjectto displaylistener- The listener for SheetEvents.
-
showConfirmSheet
public static void showConfirmSheet(java.awt.Component parentComponent, java.lang.Object message, int optionType, SheetListener listener)Brings up a sheet where the number of choices is determined by theoptionTypeparameter.- Parameters:
parentComponent- determines theFramein which the sheet is displayed; ifnull, or if theparentComponenthas noFrame, the sheet is displayed as a dialog.message- theObjectto displayoptionType- an int designating the options available on the dialog:YES_NO_OPTION, orYES_NO_CANCEL_OPTIONlistener- The listener for SheetEvents.
-
showConfirmSheet
public static void showConfirmSheet(java.awt.Component parentComponent, java.lang.Object message, int optionType, int messageType, SheetListener listener)Brings up a sheet where the number of choices is determined by theoptionTypeparameter, where themessageTypeparameter determines the icon to display. ThemessageTypeparameter is primarily used to supply a default icon from the Look and Feel.- Parameters:
parentComponent- determines theFramein which the dialog is displayed; ifnull, or if theparentComponenthas noFrame, the sheet is displayed as a dialog.message- theObjectto displayoptionType- an integer designating the options available on the dialog:YES_NO_OPTION, orYES_NO_CANCEL_OPTIONmessageType- an integer designating the kind of message this is; primarily used to determine the icon from the pluggable Look and Feel:JOptionPane.ERROR_MESSAGE,JOptionPane.INFORMATION_MESSAGE,JOptionPane.WARNING_MESSAGE,JOptionPane.QUESTION_MESSAGE, orJOptionPane.PLAIN_MESSAGElistener- The listener for SheetEvents.
-
showConfirmSheet
public static void showConfirmSheet(java.awt.Component parentComponent, java.lang.Object message, int optionType, int messageType, @Nullable javax.swing.Icon icon, SheetListener listener)Brings up a sheet with a specified icon, where the number of choices is determined by theoptionTypeparameter. ThemessageTypeparameter is primarily used to supply a default icon from the look and feel.- Parameters:
parentComponent- determines theFramein which the dialog is displayed; ifnull, or if theparentComponenthas noFrame, the sheet is displayed as a dialog.message- the Object to displayoptionType- an int designating the options available on the dialog:YES_NO_OPTION, orYES_NO_CANCEL_OPTIONmessageType- an int designating the kind of message this is, primarily used to determine the icon from the pluggable Look and Feel:JOptionPane.ERROR_MESSAGE,JOptionPane.INFORMATION_MESSAGE,JOptionPane.WARNING_MESSAGE,JOptionPane.QUESTION_MESSAGE, orJOptionPane.PLAIN_MESSAGEicon- the icon to display in the dialoglistener- The listener for SheetEvents.
-
showInputSheet
public static void showInputSheet(java.awt.Component parentComponent, java.lang.Object message, SheetListener listener)Shows a question-message sheet requesting input from the user parented toparentComponent.- Parameters:
parentComponent- the parentComponentfor the dialoglistener- The listener for SheetEvents.
-
showInputSheet
public static void showInputSheet(java.awt.Component parentComponent, java.lang.Object message, java.lang.Object initialSelectionValue, SheetListener listener)Shows a question-message sheet requesting input from the user and parented toparentComponent. The input value will be initialized toinitialSelectionValue.- Parameters:
parentComponent- the parentComponentfor the dialogmessage- theObjectto displayinitialSelectionValue- the value used to initialize the input fieldlistener- The listener for SheetEvents.
-
showInputSheet
public static void showInputSheet(java.awt.Component parentComponent, java.lang.Object message, int messageType, SheetListener listener)Shows a sheet requesting input from the user parented toparentComponentand message typemessageType.- Parameters:
parentComponent- the parentComponentfor the dialogmessage- theObjectto displaymessageType- the type of message that is to be displayed:JOptionPane.ERROR_MESSAGE,JOptionPane.INFORMATION_MESSAGE,JOptionPane.WARNING_MESSAGE,JOptionPane.QUESTION_MESSAGE, orJOptionPane.PLAIN_MESSAGElistener- The listener for SheetEvents.
-
showInputSheet
public static void showInputSheet(java.awt.Component parentComponent, java.lang.Object message, int messageType, @Nullable javax.swing.Icon icon, @Nullable java.lang.Object[] selectionValues, @Nullable java.lang.Object initialSelectionValue, SheetListener listener)Prompts the user for input in a sheet where the initial selection, possible selections, and all other options can be specified. The user will able to choose fromselectionValues, wherenullimplies the user can input whatever they wish, usually by means of aJTextField.initialSelectionValueis the initial value to prompt the user with. It is up to the UI to decide how best to represent theselectionValues, but usually aJComboBox,JList, orJTextFieldwill be used.- Parameters:
parentComponent- the parentComponentfor the dialogmessage- theObjectto displaymessageType- the type of message to be displayed:JOptionPane.ERROR_MESSAGE,JOptionPane.INFORMATION_MESSAGE,JOptionPane.WARNING_MESSAGE,JOptionPane.QUESTION_MESSAGE, orJOptionPane.PLAIN_MESSAGEicon- theIconimage to displayselectionValues- an array ofObjects that gives the possible selectionsinitialSelectionValue- the value used to initialize the input fieldlistener- The listener for SheetEvents.
-
showMessageSheet
public static void showMessageSheet(java.awt.Component parentComponent, java.lang.Object message)Brings up an information-message sheet.- Parameters:
parentComponent- determines theFramein which the dialog is displayed; ifnull, or if theparentComponenthas noFrame, the sheet is displayed as a dialog.message- theObjectto display
-
showMessageSheet
public static void showMessageSheet(java.awt.Component parentComponent, java.lang.Object message, SheetListener listener)Brings up an information-message sheet.- Parameters:
parentComponent- determines theFramein which the dialog is displayed; ifnull, or if theparentComponenthas noFrame, the sheet is displayed as a dialog.message- theObjectto displaylistener- This listener is notified when the sheet is dismissed.
-
showMessageSheet
public static void showMessageSheet(java.awt.Component parentComponent, java.lang.Object message, int messageType)Brings up a sheet that displays a message using a default icon determined by themessageTypeparameter.- Parameters:
parentComponent- determines theFramein which the dialog is displayed; ifnull, or if theparentComponenthas noFrame, the sheet is displayed as a dialog.message- theObjectto displaymessageType- the type of message to be displayed:JOptionPane.ERROR_MESSAGE,JOptionPane.INFORMATION_MESSAGE,JOptionPane.WARNING_MESSAGE,JOptionPane.QUESTION_MESSAGE, orJOptionPane.PLAIN_MESSAGE
-
showMessageSheet
public static void showMessageSheet(java.awt.Component parentComponent, java.lang.Object message, int messageType, SheetListener listener)Brings up a sheet that displays a message using a default icon determined by themessageTypeparameter.- Parameters:
parentComponent- determines theFramein which the dialog is displayed; ifnull, or if theparentComponenthas noFrame, the sheet is displayed as a dialog.message- theObjectto displaymessageType- the type of message to be displayed:JOptionPane.ERROR_MESSAGE,JOptionPane.INFORMATION_MESSAGE,JOptionPane.WARNING_MESSAGE,JOptionPane.QUESTION_MESSAGE, orJOptionPane.PLAIN_MESSAGElistener- This listener is notified when the sheet is dismissed.
-
showMessageSheet
public static void showMessageSheet(java.awt.Component parentComponent, java.lang.Object message, int messageType, @Nullable javax.swing.Icon icon, SheetListener listener)Brings up a sheet displaying a message, specifying all parameters.- Parameters:
parentComponent- determines theFramein which the sheet is displayed; ifnull, or if theparentComponenthas noFrame, the sheet is displayed as a dialog.message- theObjectto displaymessageType- the type of message to be displayed:JOptionPane.ERROR_MESSAGE,JOptionPane.INFORMATION_MESSAGE,JOptionPane.WARNING_MESSAGE,JOptionPane.QUESTION_MESSAGE, orJOptionPane.PLAIN_MESSAGEicon- an icon to display in the sheet that helps the user identify the kind of message that is being displayedlistener- This listener is notified when the sheet is dismissed.
-
showOptionSheet
public static void showOptionSheet(java.awt.Component parentComponent, java.lang.Object message, int optionType, int messageType, @Nullable javax.swing.Icon icon, @Nullable java.lang.Object[] options, @Nullable java.lang.Object initialValue, SheetListener listener)Brings up a sheet with a specified icon, where the initial choice is determined by theinitialValueparameter and the number of choices is determined by theoptionTypeparameter.If
optionTypeisYES_NO_OPTION, orYES_NO_CANCEL_OPTIONand theoptionsparameter isnull, then the options are supplied by the look and feel.The
messageTypeparameter is primarily used to supply a default icon from the look and feel.- Parameters:
parentComponent- determines theFramein which the dialog is displayed; ifnull, or if theparentComponenthas noFrame, the sheet is displayed as a dialog.message- theObjectto displayoptionType- an integer designating the options available on the dialog:YES_NO_OPTION, orYES_NO_CANCEL_OPTIONmessageType- an integer designating the kind of message this is, primarily used to determine the icon from the pluggable Look and Feel:JOptionPane.ERROR_MESSAGE,JOptionPane.INFORMATION_MESSAGE,JOptionPane.WARNING_MESSAGE,JOptionPane.QUESTION_MESSAGE, orJOptionPane.PLAIN_MESSAGEicon- the icon to display in the dialogoptions- an array of objects indicating the possible choices the user can make; if the objects are components, they are rendered properly; non-Stringobjects are rendered using theirtoStringmethods; if this parameter isnull, the options are determined by the Look and FeelinitialValue- the object that represents the default selection for the dialog; only meaningful ifoptionsis used; can benulllistener- The listener for SheetEvents.
-
showSaveSheet
public static void showSaveSheet(javax.swing.JFileChooser chooser, java.awt.Component parent, SheetListener listener)Displays a "Save File" file chooser sheet. Note that the text that appears in the approve button is determined by the L&F.- Parameters:
parent- the parent component of the dialog, can benull.listener- The listener for SheetEvents.
-
showOpenSheet
public static void showOpenSheet(javax.swing.JFileChooser chooser, java.awt.Component parent, SheetListener listener)Displays an "Open File" file chooser sheet. Note that the text that appears in the approve button is determined by the L&F.- Parameters:
parent- the parent component of the dialog, can benull.listener- The listener for SheetEvents.
-
showSaveSheet
public static void showSaveSheet(URIChooser chooser, java.awt.Component parent, SheetListener listener)
Displays a "Save File" file chooser sheet. Note that the text that appears in the approve button is determined by the L&F.- Parameters:
parent- the parent component of the dialog, can benull.listener- The listener for SheetEvents.
-
showOpenSheet
public static void showOpenSheet(URIChooser chooser, java.awt.Component parent, SheetListener listener)
Displays an "Open File" file chooser sheet. Note that the text that appears in the approve button is determined by the L&F.- Parameters:
parent- the parent component of the dialog, can benull.listener- The listener for SheetEvents.
-
showSheet
public static void showSheet(javax.swing.JFileChooser chooser, java.awt.Component parent, @Nullable java.lang.String approveButtonText, SheetListener listener)Displays a custom file chooser sheet with a custom approve button.- Parameters:
parent- the parent component of the dialog; can benullapproveButtonText- the text of theApproveButtonlistener- The listener for SheetEvents.
-
showSheet
public static void showSheet(URIChooser chooser, java.awt.Component parent, @Nullable java.lang.String approveButtonText, SheetListener listener)
Displays a custom file chooser sheet with a custom approve button.- Parameters:
parent- the parent component of the dialog; can benullapproveButtonText- the text of theApproveButtonlistener- The listener for SheetEvents.
-
-
DataMelt 3.0 © DataMelt by jWork.ORG