Class BeanInstance

    • Constructor Detail

      • BeanInstance

        public BeanInstance​(JComponent container,
                            Object bean,
                            int x,
                            int y,
                            Integer... tab)
        Creates a new BeanInstance instance.
        Parameters:
        container - a JComponent to add the bean to
        bean - the bean to add
        x - the x coordinate of the bean
        y - the y coordinate of the bean
      • BeanInstance

        public BeanInstance​(JComponent container,
                            String beanName,
                            int x,
                            int y,
                            Integer... tab)
        Creates a new BeanInstance instance given the fully qualified name of the bean
        Parameters:
        container - a JComponent to add the bean to
        beanName - the fully qualified name of the bean
        x - the x coordinate of the bean
        y - th y coordinate of the bean
    • Method Detail

      • init

        public static void init()
        Sets up just a single collection of bean instances in the first element of the list. This is useful for clients that are using XMLBeans to load beans.
      • removeAllBeansFromContainer

        public static void removeAllBeansFromContainer​(JComponent container,
                                                       Integer... tab)
        Removes all beans from containing component
        Parameters:
        container - a JComponent value
      • addAllBeansToContainer

        public static void addAllBeansToContainer​(JComponent container,
                                                  Integer... tab)
        Adds all beans to the supplied component
        Parameters:
        container - a JComponent value
      • getBeanInstances

        public static Vector<Object> getBeanInstances​(Integer... tab)
        Return the list of displayed beans
        Parameters:
        tab - varargs parameter specifying the index of the collection of beans to return - if omitted then the first (i.e. primary) collection of beans is returned
        Returns:
        a vector of beans
      • setBeanInstances

        public static void setBeanInstances​(Vector<Object> beanInstances,
                                            JComponent container,
                                            Integer... tab)
        Adds the supplied collection of beans at the supplied index in the list of collections. If the index is not supplied then the primary collection is set (i.e. index 0). Also adds the beans to the supplied JComponent container (if not null)
        Parameters:
        beanInstances - a Vector value
        container - a JComponent value
      • addBeanInstances

        public static void addBeanInstances​(Vector<Object> beanInstances,
                                            JComponent container)
        Adds the supplied collection of beans to the end of the list of collections and to the JComponent container (if not null)
        Parameters:
        beanInstances - the vector of bean instances to add
        container -
      • removeBeanInstances

        public static void removeBeanInstances​(JComponent container,
                                               Integer tab)
        Remove the vector of bean instances from the supplied index in the list of collections.
        Parameters:
        tab - the index of the vector of beans to remove.
      • paintLabels

        public static void paintLabels​(Graphics gx,
                                       Integer... tab)
        Renders the textual labels for the beans.
        Parameters:
        gx - a Graphics object on which to render the labels
      • getStartPoints

        public static List<BeanInstance> getStartPoints​(Integer... tab)
        Returns a list of start points (if any) in the indexed flow
        Parameters:
        tab - varargs integer index of the flow to search for start points. Defaults to 0 if not supplied.
        Returns:
        a list of BeanInstances who's beans implement Startable
      • findInstance

        public static BeanInstance findInstance​(String beanName,
                                                Integer... tab)
        Search for a named bean in the indexed flow
        Parameters:
        beanName - the name of the bean to look for
        tab - varargs integer index of the flow to search in
        Returns:
        a matching BeanInstance or null if no match was found
      • findInstance

        public static BeanInstance findInstance​(Point p,
                                                Integer... tab)
        Looks for a bean (if any) whose bounds contain the supplied point
        Parameters:
        p - a point
        Returns:
        a bean that contains the supplied point or null if no bean contains the point
      • findInstances

        public static Vector<Object> findInstances​(Rectangle boundingBox,
                                                   Integer... tab)
        Looks for all beans (if any) located within the supplied bounding box. Also adjusts the bounding box to be a tight fit around all contained beans
        Parameters:
        boundingBox - the bounding rectangle
        Returns:
        a Vector of BeanInstances
      • removeBean

        public void removeBean​(JComponent container,
                               Integer... tab)
        Remove this bean from the list of beans and from the containing component
        Parameters:
        container - the JComponent that holds the bean
      • addBean

        public void addBean​(JComponent container,
                            Integer... tab)
        Adds this bean to the global list of beans and to the supplied container. The constructor calls this method, so a client should not need to unless they have called removeBean and then wish to have it added again.
        Parameters:
        container - the Component on which this BeanInstance will be displayed
      • getBean

        public Object getBean()
        Gets the bean encapsulated in this instance
        Returns:
        an Object value
      • getX

        public int getX()
        Gets the x coordinate of this bean
        Returns:
        an int value
      • getY

        public int getY()
        Gets the y coordinate of this bean
        Returns:
        an int value
      • getWidth

        public int getWidth()
        Gets the width of this bean
        Returns:
        an int value
      • getHeight

        public int getHeight()
        Gets the height of this bean
        Returns:
        an int value
      • setXY

        public void setXY​(int newX,
                          int newY)
        Set the x and y coordinates of this bean
        Parameters:
        newX - the x coordinate
        newY - the y coordinate
      • setX

        public void setX​(int newX)
        Sets the x coordinate of this bean
        Parameters:
        newX - an int value
      • setY

        public void setY​(int newY)
        Sets the y coordinate of this bean
        Parameters:
        newY - an int value