/////////////////////////////////////////////////////////
 // Tablegroups
 private void onSelectAllTables() {
   for (JInternalFrame f : _desktopPane.getAllFrames()) {
     if (f instanceof TableFrame) {
       _desktopPane.addGroupFrame((TableFrame) f);
     }
   }
 }
  private void onSelectTablesByName() {
    String namePattern =
        JOptionPane.showInputDialog(
            _desktopPane,
            s_stringMgr.getString("graph.selectTablesByName.message"),
            s_stringMgr.getString("graph.selectTablesByName.title"),
            JOptionPane.QUESTION_MESSAGE);

    if (null == namePattern || 0 == namePattern.trim().length()) {
      return;
    }

    _desktopPane.clearGroupFrames();
    for (JInternalFrame f : _desktopPane.getAllFrames()) {
      if (f instanceof TableFrame) {
        TableFrame tf = (TableFrame) f;
        if (tf.getTitle().matches(namePattern.replace('?', '.').replace("*", ".*"))) {
          _desktopPane.addGroupFrame(tf);
        }
      }
    }
  }