private Dimension getMySize()
        {
            if (pogType != null)
            {
                int w = POG_ICON_SIZE;
                int h = POG_ICON_SIZE;
                final String label = pogType.getLabel();
                if ((label != null) && (label.length() > 0))
                {
                    final Font f = getMyFont();
                    final FontRenderContext frc = new FontRenderContext(null, false, false);
                    final Rectangle stringBounds = f.getStringBounds(label, frc).getBounds();
                    w += stringBounds.width + POG_TEXT_PADDING;
                    if (stringBounds.height > h)
                    {
                        h = stringBounds.height;
                    }
                }

                return new Dimension(w + TOTAL_SPACE, h + TOTAL_SPACE);
            }
            else if (library != null)
            {
                int w = 0;
                int h = 0;
                final String label = library.getName();
                if ((label != null) && (label.length() > 0))
                {
                    final Font f = getMyFont();
                    final FontRenderContext frc = new FontRenderContext(null, false, false);
                    final Rectangle stringBounds = f.getStringBounds(label, frc).getBounds();
                    h = stringBounds.height;
                    w = stringBounds.width;
                }
                return new Dimension(w + TOTAL_SPACE, h + TOTAL_SPACE);
            }

            return null;
        }