Java JFrame Parent ensureVisibilityAtParent(final JInternalFrame frame)

Here you can find the source of ensureVisibilityAtParent(final JInternalFrame frame)

Description

ensure Visibility At Parent

License

Apache License

Declaration

public static void ensureVisibilityAtParent(final JInternalFrame frame) 

Method Source Code


//package com.java2s;
/* //  ww  w  . j a v  a  2  s. c o m
 * Copyright 2014 Igor Maznitsa (http://www.igormaznitsa.com).
 *
 * 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.
 */

import java.awt.*;
import javax.swing.JComponent;
import javax.swing.JInternalFrame;
import javax.swing.SwingUtilities;

public class Main {
    public static void ensureVisibilityAtParent(final JInternalFrame frame) {
        final JComponent parent = (JComponent) frame.getParent();
        final Rectangle parentRect = SwingUtilities.calculateInnerArea(parent, null);
        final Rectangle frameRect = frame.getBounds();

        final int x = Math.min(frameRect.x, Math.max(0, parentRect.width - frameRect.width));
        final int y = Math.min(frameRect.y, Math.max(0, parentRect.height - frameRect.height));

        frame.setLocation(x, y);
    }
}

Related

  1. closeFrameWhenEscapePressed(final JRootPane panel, final ActionListener actListener)
  2. createExceptionDialog(Frame parent, String title, Throwable error)
  3. createProgressDialog(Frame parentFrame, String title, JProgressBar progressBar)
  4. enableAllComponents(final boolean enable, final Frame parent)
  5. enableAllComponentsExcept(final boolean enable, final Frame parent, final Component... components)
  6. execLoop(JComponent editor, Frame parent, boolean modal, int w, int h)
  7. fileOpen(Frame parent, String typename, String ext)
  8. findParentDialogOrFrame(Container container)
  9. getFirstParentFrameOrDialog(Component cmp)