private void packFields()
   {
      // Method Instances
      DiagramFieldPanel fieldPanel;
      boolean changed;
      
      changed = false;      
      
      if(isPack())
      {
         for(int i = 0; i < fieldsPanel.getComponentCount(); i++)
         {
            fieldPanel = (DiagramFieldPanel) fieldsPanel.getComponent(i);
            
            if(!fieldPanel.isSelected() && !fieldPanel.isJoined() && !fieldPanel.isWhereClause())
            {
               filterdDiagramFieldPanels.add(fieldPanel);
               fieldsPanel.remove(fieldPanel);
               i--;
                  
               changed = true;
            }
         }
      }
      else
      {
         while(filterdDiagramFieldPanels.size() > 0)
         {
            fieldsPanel.add(filterdDiagramFieldPanels.get(0));
            filterdDiagramFieldPanels.remove(0);
               
            changed = true;
         }
         sortFields();
      }
         
      if(changed)
      {
         pack();
         queryBuilderPane.sqlDiagramViewPanel.doResize();
      }
   }