Example usage for javax.swing JScrollPane setHorizontalScrollBarPolicy

List of usage examples for javax.swing JScrollPane setHorizontalScrollBarPolicy

Introduction

In this page you can find the example usage for javax.swing JScrollPane setHorizontalScrollBarPolicy.

Prototype

@BeanProperty(preferred = true, enumerationValues = { "ScrollPaneConstants.HORIZONTAL_SCROLLBAR_AS_NEEDED",
        "ScrollPaneConstants.HORIZONTAL_SCROLLBAR_NEVER",
        "ScrollPaneConstants.HORIZONTAL_SCROLLBAR_ALWAYS" }, description = "The scrollpane scrollbar policy")
public void setHorizontalScrollBarPolicy(int policy) 

Source Link

Document

Determines when the horizontal scrollbar appears in the scrollpane.

Usage

From source file:org.spottedplaid.ui.Mainframe.java

/**
 * Create the frame.//  w ww .  j  av  a2 s. c  o m
 *
 * @param _Sqliteops the _ sqliteops
 * @param _Crypto the _ crypto
 */
public Mainframe(SQliteOps _Sqliteops, Crypto _Crypto) {

    l_sqliteops = _Sqliteops;
    l_crypto = _Crypto;

    setTitle("The Password Saver - Management");
    setResizable(false);
    setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
    setBounds(100, 100, 982, 656);

    JMenuBar menuBar = new JMenuBar();
    setJMenuBar(menuBar);

    JMenu mnFile = new JMenu("File");
    menuBar.add(mnFile);

    JMenuItem mntmExit = new JMenuItem("Exit");
    mntmExit.addActionListener(new ActionListener() {
        public void actionPerformed(ActionEvent arg0) {
            System.exit(0);
        }
    });

    mnFile.add(mntmExit);

    JMenu mnTools = new JMenu("Tools");
    menuBar.add(mnTools);

    JMenuItem mntmChgpwd = new JMenuItem("Change Passphrase");
    mntmChgpwd.addActionListener(new ActionListener() {
        public void actionPerformed(ActionEvent arg0) {
            Changepwd changePwd = new Changepwd(l_crypto, l_sqliteops);
            changePwd.setVisible(true);
        }
    });

    mnTools.add(mntmChgpwd);

    JMenuItem mntmExpirationReport = new JMenuItem("Expiration Report");
    mntmExpirationReport.addActionListener(new ActionListener() {
        public void actionPerformed(ActionEvent arg0) {
            DbRecord dbRecExp = new DbRecord();
            dbRecExp.setType(Pwdtypes.S_EXP_RPT);
            ArrayList<String> arrData = l_sqliteops.getRecords(dbRecExp);
            String[] sRecord = new String[3];
            String sData = "";
            int iElement = 0;

            /// Cycle through the data, output to text file, and open in WordPad
            if (arrData != null && arrData.size() > 0) {
                try {
                    String sFilename = "ExpirationReport.txt";
                    File fileExpRpt = new File(sFilename);

                    BufferedWriter buffWriter = new BufferedWriter(new FileWriter(fileExpRpt));
                    buffWriter.write("URL/Application                Challenge            Expiration");
                    buffWriter.write("\n");
                    buffWriter.write("--------------------------------------------------------------");
                    buffWriter.write("\n");
                    for (int iCount = 0; iCount < arrData.size(); iCount++) {
                        sData = arrData.get(iCount);
                        System.out.println("DEBUG->sData [" + sData + "]");
                        StringTokenizer st = new StringTokenizer(sData, "|");
                        iElement = 0;
                        while (st.hasMoreTokens()) {
                            sRecord[iElement] = st.nextToken();
                            iElement++;
                        }

                        /// Define the padding for the output
                        int iPadValue1 = 35 - sRecord[0].length();
                        if (iPadValue1 < 0) {
                            iPadValue1 = 2;
                        }

                        int iPadValue2 = 55 - (35 + sRecord[1].length());
                        if (iPadValue2 < 0) {
                            iPadValue2 = 2;
                        }

                        iPadValue1 += sRecord[1].length();
                        iPadValue2 += sRecord[2].length();

                        buffWriter.write(sRecord[0] + StringUtils.leftPad(sRecord[1], iPadValue1)
                                + StringUtils.leftPad(sRecord[2], iPadValue2) + "\n");
                        buffWriter.write("\n");
                    }
                    buffWriter.close();

                    /// Opens WordPad on Windows systems.  This could be changed to use a property in order to work on a linux/unix/apple system
                    ProcessBuilder pb = new ProcessBuilder("write.exe", sFilename);
                    pb.start();
                } catch (IOException ie) {
                    System.out.println("Expiration Report IO Exception [" + ie.getMessage() + "]");
                    ie.printStackTrace();
                }

            } else {
                JOptionPane.showMessageDialog(null, "No expiring records found");
            }
        }
    });
    mnTools.add(mntmExpirationReport);

    JMenuItem mntmViewLogs = new JMenuItem("View Logs");
    mntmViewLogs.addActionListener(new ActionListener() {
        public void actionPerformed(ActionEvent e) {
            DbRecord dbRecLogs = new DbRecord();
            dbRecLogs.setType(Pwdtypes.S_LOG_TYPE);
            ArrayList<String> arrData = l_sqliteops.getRecords(dbRecLogs);
            String[] sRecord = new String[3];
            String sData = "";
            String sTitle = "Display Data Changes";
            String sDisplay = "Date                  Log Message";
            sDisplay += "\n";
            int iElement = 0;

            /// Cycle through the data, output to text file, and open in WordPad
            if (arrData != null) {
                for (int iCount = 0; iCount < arrData.size(); iCount++) {
                    sData = arrData.get(iCount);
                    System.out.println("DEBUG->sData [" + sData + "]");
                    StringTokenizer st = new StringTokenizer(sData, "|");
                    iElement = 0;
                    while (st.hasMoreTokens()) {
                        sRecord[iElement] = st.nextToken();
                        iElement++;
                    }
                    sDisplay += sRecord[2] + ":" + sRecord[1];
                    sDisplay += "\n";
                }

                if (arrData.size() > 0) {
                    JOptionPane.showMessageDialog(null, sDisplay, sTitle, JOptionPane.INFORMATION_MESSAGE);
                }

            }
        }
    });

    mnTools.add(mntmViewLogs);

    contentPane = new JPanel();
    contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
    setContentPane(contentPane);

    JLabel lblThePasswordSaver = new JLabel("The Password Saver - Manage Passwords");
    lblThePasswordSaver.setFont(new Font("Arial", Font.BOLD, 16));
    lblThePasswordSaver.setHorizontalAlignment(SwingConstants.CENTER);

    JLabel lblUrlapplication = new JLabel("URL/Application");

    jtxtApp = new JTextField();
    jtxtApp.setColumns(10);

    JLabel lblDescription = new JLabel("Description");

    jtxtDesc = new JTextField();
    jtxtDesc.setColumns(10);

    /// Button - Add button for clients/apps
    JButton btnAdd = new JButton("Add");
    btnAdd.addActionListener(new ActionListener() {
        public void actionPerformed(ActionEvent e) {
            if (FormValidation.verifyAppData(jtxtApp.getText().toString(), jtxtDesc.getText().toString()) < 0) {
                JOptionPane.showMessageDialog(null, "URL/Application and Description are required");
            } else {
                dbRec = new DbRecord();
                dbRec.setType(Pwdtypes.S_CLIENT_TYPE);
                dbRec.setClientName(jtxtApp.getText().toString());
                dbRec.setClientDesc(jtxtDesc.getText().toString());
                int l_iClientId = l_sqliteops.insertRecord(dbRec);
                if (l_iClientId <= 0) {
                    JOptionPane.showMessageDialog(null, "Insert record failed [" + dbRec.getResult() + "]");
                } else {
                    dbRec.setClientId(l_iClientId);
                    addToTable();
                }
            }
        }
    });

    /// Buttons - Replace button for clients/apps
    btnReplace = new JButton("Replace");
    btnReplace.addActionListener(new ActionListener() {
        public void actionPerformed(ActionEvent arg0) {
            if (iClientId <= 0) {
                JOptionPane.showMessageDialog(null, "Update record warning: Please select record to continue");
                return;
            }
            dbRec = new DbRecord();
            dbRec.setType(Pwdtypes.S_CLIENT_TYPE);
            dbRec.setClientId(iClientId);
            dbRec.setClientName(jtxtApp.getText().toString());
            dbRec.setClientDesc(jtxtDesc.getText().toString());
            if (l_sqliteops.updateRecord(dbRec) < 0) {
                JOptionPane.showMessageDialog(null, "Update record failed [" + dbRec.getResult() + "]");
            } else {
                int iRow = jtabApps.getSelectedRow();
                jtabApps.setValueAt(jtxtApp.getText().toString(), iRow, 1);
                jtabApps.setValueAt(jtxtDesc.getText().toString(), iRow, 2);

                clearFields();
            }
        }
    });

    btnReplace.setEnabled(false);

    /// Button - Delete button for clients/apps
    btnDelete = new JButton("Delete");
    btnDelete.addActionListener(new ActionListener() {
        public void actionPerformed(ActionEvent e) {
            if (iClientId <= 0) {
                JOptionPane.showMessageDialog(null,
                        "Delete record failed: Please select a record then click Delete");
                return;
            }
            dbRec = new DbRecord();
            dbRec.setType("clients");
            dbRec.setClientId(iClientId);
            dbRec.setDelCreds(0);

            if (chkDelAssoc.isSelected()) {
                dbRec.setDelCreds(1);
            }

            if (l_sqliteops.deleteRecord(dbRec) < 0) {
                JOptionPane.showMessageDialog(null, "Delete record failed [" + dbRec.getResult() + "]");
            } else {
                DefaultTableModel jtabModel = (DefaultTableModel) jtabApps.getModel();
                jtabModel.removeRow(jtabApps.getSelectedRow());
                if (chkDelAssoc.isSelected()) {
                    DefaultTableModel model = (DefaultTableModel) jtabCreds.getModel();
                    model.setRowCount(0);
                }
                clearFields();
            }
        }
    });
    btnDelete.setEnabled(false);

    /// Buttons - Search button for clients/apps
    btnSearch = new JButton("Search");
    btnSearch.addActionListener(new ActionListener() {
        public void actionPerformed(ActionEvent e) {
            dbRec = new DbRecord();
            dbRec.setType(Pwdtypes.S_CLIENT_TYPE);
            dbRec.setClientName(jtxtApp.getText().toString());
            dbRec.setClientDesc(jtxtDesc.getText().toString());
            loadTable(dbRec);
        }
    });

    btnClear = new JButton("Clear");
    btnClear.addActionListener(new ActionListener() {
        public void actionPerformed(ActionEvent arg0) {
            clearFields();
        }
    });

    JScrollPane scrollPane = new JScrollPane();
    scrollPane.setHorizontalScrollBarPolicy(ScrollPaneConstants.HORIZONTAL_SCROLLBAR_ALWAYS);

    /// Begin section for credentials challenges/responses - text fields and buttons
    JLabel lblChallenge = new JLabel("Challenge");

    JLabel lblResponse = new JLabel("Response");

    jtxtChlng = new JTextField();
    jtxtChlng.setColumns(10);

    jtxtRsp = new JTextField();
    jtxtRsp.setColumns(10);

    /// Buttons - Add button for credentials
    btnCredAdd = new JButton("Add");
    btnCredAdd.addActionListener(new ActionListener() {
        public void actionPerformed(ActionEvent e) {
            if (FormValidation.verifyCredData(jtxtChlng.getText().toString(),
                    jtxtRsp.getText().toString()) < 0) {
                JOptionPane.showMessageDialog(null, "Challenge and Response are required");
            } else {
                dbRec = new DbRecord();
                dbRec.setType(Pwdtypes.S_CREDS_TYPE);
                dbRec.setClientId(iClientId);
                dbRec.setChallenge(jtxtChlng.getText().toString());
                dbRec.setResponse(l_crypto.encrypt(jtxtRsp.getText().toString()));
                dbRec.setTrack(jcbTrack.getSelectedItem().toString());

                /// Set the modify date if the track days are > 0
                if (!jcbTrack.getSelectedItem().toString().equals("0")) {
                    Calendar calNow = Calendar.getInstance();
                    SimpleDateFormat sdf = new SimpleDateFormat("MM/dd/yyyy");
                    int iDaysToAdd = Integer.parseInt(jcbTrack.getSelectedItem().toString());

                    calNow.add(Calendar.DATE, iDaysToAdd);
                    String sValue = sdf.format(calNow.getTime());
                    dbRec.setModifyDate(sValue);
                }

                int l_iClientId = l_sqliteops.insertRecord(dbRec);
                if (l_iClientId <= 0) {
                    JOptionPane.showMessageDialog(null, "Insert record failed [" + dbRec.getResult() + "]");
                } else {
                    dbRec.setCredId(l_iClientId);
                    addToCredsTable();
                }
            }
        }
    });

    /// Button - Replace button for credentials
    btnCredReplace = new JButton("Replace");
    btnCredReplace.addActionListener(new ActionListener() {
        public void actionPerformed(ActionEvent arg0) {
            DbRecord dbRecLog = new DbRecord();
            int iDaysToAdd = 0;
            Calendar calNow = Calendar.getInstance();
            SimpleDateFormat sdf1 = new SimpleDateFormat("MM/dd/yyyy");

            String sCurDate = sdf1.format(calNow.getTime());
            String sValue = sDateModified;
            String sLogMsg = "";
            StringBuilder sbLogMsg = new StringBuilder(sLogMsg);

            if (dbRec.getType().equals(Pwdtypes.S_CREDS_TYPE) && (dbRec.getCredId() > 0)) {
                dbRec.setClientId(iClientId);
                dbRec.setCredId(iCredId);
                dbRec.setChallenge(jtxtChlng.getText().toString());
                dbRec.setResponse(l_crypto.encrypt(jtxtRsp.getText().toString()));
                dbRec.setTrack(jcbTrack.getSelectedItem().toString());

                /** Check for changes and insert log if necessary */
                if (!sChallenge.equals(jtxtChlng.getText())) {
                    sbLogMsg.append("Application [" + jtxtApp.getText() + "], Challenge modified, old ["
                            + sChallenge + "], new [" + jtxtChlng.getText() + "]");
                }

                if (!sResponse.equals(jtxtRsp.getText())) {
                    if (sbLogMsg.toString().length() > 0) {
                        sbLogMsg.append(",");
                    } else {
                        sbLogMsg.append("Application [" + jtxtApp.getText() + "],");
                    }
                    sbLogMsg.append("Response modified, old [" + sResponse + "]");
                }

                if (sbLogMsg.toString().length() > 0) {
                    dbRecLog.setType(Pwdtypes.S_LOG_TYPE);
                    dbRecLog.setLog(sbLogMsg.toString());
                    dbRecLog.setModifyDate(sCurDate);
                    if (l_sqliteops.insertRecord(dbRecLog) < 0) {
                        JOptionPane.showMessageDialog(null,
                                "Insert log record failed [" + dbRecLog.getResult() + "]");
                    }
                }

                if (!jcbTrack.getSelectedItem().toString().equals("0")) {
                    iDaysToAdd = Integer.parseInt(jcbTrack.getSelectedItem().toString());

                    calNow.add(Calendar.DATE, iDaysToAdd);
                    sValue = sdf1.format(calNow.getTime());

                    System.out.println("DEBUG->Date (sValue) [" + sValue + "]");
                    dbRec.setModifyDate(sValue);
                }
                /// Update the record
                if (l_sqliteops.updateRecord(dbRec) < 0) {
                    JOptionPane.showMessageDialog(null, "Update record failed [" + dbRec.getResult() + "]");
                } else {
                    int iRow = jtabCreds.getSelectedRow();
                    jtabCreds.setValueAt(jtxtChlng.getText().toString(), iRow, 1);
                    jtabCreds.setValueAt(l_crypto.encrypt(jtxtRsp.getText().toString()), iRow, 2);
                    jtabCreds.setValueAt(jcbTrack.getSelectedItem().toString(), iRow, 3);
                    jtabCreds.setValueAt(sValue, iRow, 4);

                    jtabCreds.setValueAt(sValue, iRow, 4);
                    clearCredsFields();
                    enableCredsButtons();
                }
            }
        }
    });

    /// Button - Delete button for credentials
    btnCredDelete = new JButton("Delete");
    btnCredDelete.addActionListener(new ActionListener() {
        public void actionPerformed(ActionEvent e) {
            dbRec.setType(Pwdtypes.S_CREDS_TYPE);
            dbRec.setCredId(iCredId);
            dbRec.setChallenge(jtxtChlng.getText().toString());
            dbRec.setResponse(jtxtRsp.getText().toString());
            if (l_sqliteops.deleteRecord(dbRec) < 0) {
                JOptionPane.showMessageDialog(null,
                        "Delete credential record failed [" + dbRec.getResult() + "]");
            } else {
                DefaultTableModel jtabModel = (DefaultTableModel) jtabCreds.getModel();
                jtabModel.removeRow(jtabCreds.getSelectedRow());
                clearCredsFields();
                enableCredsButtons();
            }
        }
    });

    /// Button - Clear button for credentials
    btnCredClear = new JButton("Clear");
    btnCredClear.addActionListener(new ActionListener() {
        public void actionPerformed(ActionEvent arg0) {
            clearCredsFields();
            enableCredsButtons();
        }
    });

    /// End section for credentials challenges/responses - text fields and buttons

    JScrollPane scrollPane_1 = new JScrollPane();
    scrollPane_1.setHorizontalScrollBarPolicy(ScrollPaneConstants.HORIZONTAL_SCROLLBAR_ALWAYS);

    btnShowAssoc = new JButton("Display Associated Challenges/Responses in new window");

    /// Display the challenges/responses associated to the application in a popup window. 
    /// This is to make it easier to view when all of the values are needed
    btnShowAssoc.addActionListener(new ActionListener() {
        public void actionPerformed(ActionEvent e) {
            String sTitle = "Credentials for: " + jtxtApp.getText();
            String sDisplay = "";

            sDisplay += "\n";
            DefaultTableModel jTmpModel = (DefaultTableModel) jtabCreds.getModel();
            for (int i = 0; i < jTmpModel.getRowCount(); i++) {
                sDisplay += "Q. " + jTmpModel.getValueAt(i, 1).toString() + "  A. "
                        + l_crypto.decrypt(jTmpModel.getValueAt(i, 2).toString()) + "\n";
            }

            JOptionPane.showMessageDialog(null, sDisplay, sTitle, JOptionPane.INFORMATION_MESSAGE);
        }
    });

    JLabel lblTrackUpdates = new JLabel("Exp Days");

    /// Values for expiration days are hardcoded, may want to move to a table for metadata
    jcbTrack.addItem("0");
    jcbTrack.addItem("30");
    jcbTrack.addItem("45");
    jcbTrack.addItem("60");
    jcbTrack.addItem("90");
    jcbTrack.addItem("180");
    jcbTrack.addItem("365");
    jcbTrack.setSelectedItem("0");

    btnEdit = new JButton("Edit");
    btnEdit.addActionListener(new ActionListener() {
        public void actionPerformed(ActionEvent arg0) {
            jtxtChlng.setEnabled(true);
            jtxtRsp.setEnabled(true);
            jcbTrack.setEnabled(true);
            btnCredReplace.setEnabled(true);
            btnCredAdd.setEnabled(true);
        }
    });
    btnEdit.setEnabled(false);

    GroupLayout gl_contentPane = new GroupLayout(contentPane);
    gl_contentPane.setHorizontalGroup(gl_contentPane.createParallelGroup(Alignment.LEADING)
            .addGroup(gl_contentPane.createSequentialGroup().addGroup(gl_contentPane
                    .createParallelGroup(Alignment.LEADING)
                    .addGroup(gl_contentPane.createSequentialGroup().addGap(207)
                            .addComponent(lblThePasswordSaver))
                    .addGroup(gl_contentPane.createSequentialGroup().addGap(23).addGroup(gl_contentPane
                            .createParallelGroup(Alignment.LEADING)
                            .addGroup(gl_contentPane.createSequentialGroup().addComponent(btnAdd)
                                    .addPreferredGap(ComponentPlacement.RELATED).addComponent(btnReplace)
                                    .addPreferredGap(ComponentPlacement.RELATED).addComponent(btnDelete)
                                    .addPreferredGap(ComponentPlacement.RELATED).addComponent(btnSearch)
                                    .addPreferredGap(ComponentPlacement.RELATED).addComponent(btnClear))
                            .addGroup(gl_contentPane.createSequentialGroup().addGroup(gl_contentPane
                                    .createParallelGroup(Alignment.LEADING)
                                    .addGroup(gl_contentPane.createSequentialGroup()
                                            .addGroup(gl_contentPane.createParallelGroup(Alignment.LEADING)
                                                    .addComponent(lblUrlapplication)
                                                    .addComponent(lblDescription))
                                            .addPreferredGap(ComponentPlacement.RELATED)
                                            .addGroup(gl_contentPane.createParallelGroup(Alignment.LEADING)
                                                    .addComponent(jtxtApp, GroupLayout.PREFERRED_SIZE, 154,
                                                            GroupLayout.PREFERRED_SIZE)
                                                    .addComponent(jtxtDesc, GroupLayout.PREFERRED_SIZE, 260,
                                                            GroupLayout.PREFERRED_SIZE)))
                                    .addComponent(scrollPane, GroupLayout.PREFERRED_SIZE, 355,
                                            GroupLayout.PREFERRED_SIZE))
                                    .addPreferredGap(ComponentPlacement.RELATED, 18, Short.MAX_VALUE)
                                    .addGroup(gl_contentPane.createParallelGroup(Alignment.TRAILING)
                                            .addComponent(btnShowAssoc)
                                            .addGroup(gl_contentPane.createSequentialGroup()
                                                    .addGroup(gl_contentPane
                                                            .createParallelGroup(Alignment.TRAILING)
                                                            .addComponent(lblResponse)
                                                            .addComponent(lblChallenge))
                                                    .addGap(18)
                                                    .addGroup(gl_contentPane
                                                            .createParallelGroup(Alignment.LEADING)
                                                            .addGroup(gl_contentPane.createSequentialGroup()
                                                                    .addComponent(jtxtRsp, 272, 272, 272)
                                                                    .addGap(26).addComponent(lblTrackUpdates)
                                                                    .addPreferredGap(
                                                                            ComponentPlacement.UNRELATED)
                                                                    .addComponent(jcbTrack,
                                                                            GroupLayout.PREFERRED_SIZE, 55,
                                                                            GroupLayout.PREFERRED_SIZE))
                                                            .addComponent(jtxtChlng, GroupLayout.PREFERRED_SIZE,
                                                                    440, GroupLayout.PREFERRED_SIZE)))
                                            .addGroup(gl_contentPane
                                                    .createParallelGroup(Alignment.LEADING, false)
                                                    .addGroup(gl_contentPane.createSequentialGroup()
                                                            .addComponent(btnCredAdd,
                                                                    GroupLayout.PREFERRED_SIZE, 78,
                                                                    GroupLayout.PREFERRED_SIZE)
                                                            .addPreferredGap(ComponentPlacement.RELATED)
                                                            .addComponent(btnCredReplace)
                                                            .addPreferredGap(ComponentPlacement.RELATED)
                                                            .addComponent(btnCredDelete,
                                                                    GroupLayout.PREFERRED_SIZE, 75,
                                                                    GroupLayout.PREFERRED_SIZE)
                                                            .addPreferredGap(ComponentPlacement.UNRELATED)
                                                            .addComponent(btnCredClear)
                                                            .addPreferredGap(ComponentPlacement.RELATED,
                                                                    GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                                                            .addComponent(btnEdit))
                                                    .addComponent(scrollPane_1, GroupLayout.PREFERRED_SIZE,
                                                            GroupLayout.DEFAULT_SIZE,
                                                            GroupLayout.PREFERRED_SIZE))))))
                    .addGroup(gl_contentPane.createSequentialGroup().addGap(36).addComponent(chkDelAssoc)))
                    .addContainerGap(57, Short.MAX_VALUE)));
    gl_contentPane.setVerticalGroup(gl_contentPane.createParallelGroup(Alignment.LEADING)
            .addGroup(gl_contentPane.createSequentialGroup().addContainerGap().addComponent(lblThePasswordSaver)
                    .addGap(45)
                    .addGroup(gl_contentPane.createParallelGroup(Alignment.TRAILING)
                            .addGroup(gl_contentPane.createSequentialGroup().addGroup(gl_contentPane
                                    .createParallelGroup(Alignment.BASELINE).addComponent(lblUrlapplication)
                                    .addComponent(jtxtApp, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE,
                                            GroupLayout.PREFERRED_SIZE)
                                    .addComponent(lblChallenge)).addPreferredGap(ComponentPlacement.UNRELATED)
                                    .addGroup(gl_contentPane.createParallelGroup(Alignment.BASELINE)
                                            .addComponent(lblDescription)
                                            .addComponent(jtxtDesc, GroupLayout.PREFERRED_SIZE,
                                                    GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)
                                            .addComponent(lblResponse)))
                            .addGroup(gl_contentPane.createSequentialGroup()
                                    .addComponent(jtxtChlng, GroupLayout.PREFERRED_SIZE,
                                            GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)
                                    .addPreferredGap(ComponentPlacement.UNRELATED)
                                    .addGroup(gl_contentPane.createParallelGroup(Alignment.BASELINE)
                                            .addComponent(jtxtRsp, GroupLayout.PREFERRED_SIZE,
                                                    GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)
                                            .addComponent(lblTrackUpdates)
                                            .addComponent(jcbTrack, GroupLayout.PREFERRED_SIZE,
                                                    GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE))))
                    .addGap(18)
                    .addGroup(gl_contentPane.createParallelGroup(Alignment.BASELINE).addComponent(btnAdd)
                            .addComponent(btnReplace).addComponent(btnDelete).addComponent(btnSearch)
                            .addComponent(btnClear).addComponent(btnCredAdd).addComponent(btnCredReplace)
                            .addComponent(btnCredDelete).addComponent(btnCredClear).addComponent(btnEdit))
                    .addPreferredGap(ComponentPlacement.UNRELATED)
                    .addGroup(gl_contentPane.createParallelGroup(Alignment.LEADING)
                            .addGroup(gl_contentPane.createParallelGroup(Alignment.BASELINE)
                                    .addComponent(scrollPane, GroupLayout.PREFERRED_SIZE, 208,
                                            GroupLayout.PREFERRED_SIZE)
                                    .addComponent(scrollPane_1, GroupLayout.PREFERRED_SIZE, 109,
                                            GroupLayout.PREFERRED_SIZE))
                            .addGroup(gl_contentPane.createSequentialGroup().addGap(120)
                                    .addComponent(btnShowAssoc)))
                    .addGap(18).addComponent(chkDelAssoc).addContainerGap(170, Short.MAX_VALUE)));

    /// JTable - Credentials table setup/definition - BEGIN
    jtabCreds = new JTable();
    jtabCreds.setModel(new DefaultTableModel(new Object[][] {},
            new String[] { "ID", "Challenge", "Response", "Exp Days", "Expiration Date" }) {
        Class[] columnTypes = new Class[] { Integer.class, String.class, String.class, String.class,
                String.class };

        public Class getColumnClass(int columnIndex) {
            return columnTypes[columnIndex];
        }
    });
    jtabCreds.setBorder(new MatteBorder(1, 1, 1, 1, (Color) new Color(0, 0, 0)));
    scrollPane_1.setViewportView(jtabCreds);
    /// JTable - Credentials table setup/definition - END

    jtabApps = new JTable();
    scrollPane.setViewportView(jtabApps);

    jtabApps.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
    jtabApps.setBorder(new MatteBorder(1, 1, 1, 1, (Color) new Color(0, 0, 0)));
    jtabApps.setModel(
            new DefaultTableModel(new Object[][] {}, new String[] { "ID", "URL/Application", "Description" }) {
                Class[] columnTypes = new Class[] { Integer.class, String.class, String.class };

                public Class getColumnClass(int columnIndex) {
                    return columnTypes[columnIndex];
                }

                @Override
                public boolean isCellEditable(int row, int column) {
                    //all cells false
                    return false;
                }
            });
    jtabApps.getColumnModel().getColumn(1).setMinWidth(55);
    jtabApps.getColumnModel().getColumn(2).setMinWidth(55);
    contentPane.setLayout(gl_contentPane);
    contentPane.setFocusTraversalPolicy(new FocusTraversalOnArray(new Component[] { jtxtChlng,
            lblThePasswordSaver, jtxtApp, jtxtDesc, btnAdd, btnReplace, btnDelete, btnSearch, btnClear, jtxtRsp,
            btnCredAdd, btnCredReplace, btnCredDelete, btnCredClear, scrollPane, jtabApps, lblUrlapplication,
            lblDescription, chkDelAssoc, lblChallenge, lblResponse, scrollPane_1, jtabCreds }));
    setFocusTraversalPolicy(new FocusTraversalOnArray(
            new Component[] { menuBar, jtxtApp, jtxtDesc, btnAdd, btnReplace, btnDelete, btnSearch, btnClear,
                    jtxtChlng, jtxtRsp, btnCredAdd, btnCredReplace, btnCredDelete, btnCredClear, contentPane,
                    mnFile, mntmExit, lblThePasswordSaver, scrollPane, jtabApps, lblUrlapplication,
                    lblDescription, chkDelAssoc, lblChallenge, lblResponse, scrollPane_1, jtabCreds }));

    /// Initial data load
    dbRec = new DbRecord();
    dbRec.setType(Pwdtypes.S_CLIENT_TYPE);
    dbRec.setClientName("");
    dbRec.setClientDesc("");
    loadTable(dbRec);
    disableCredsButtons();

    ListSelectionModel rowSM = jtabApps.getSelectionModel();

    //Listener for client row change;
    rowSM.addListSelectionListener(new ListSelectionListener() {

        /// Fill the form values when a row is selected in the JTable
        @Override
        public void valueChanged(ListSelectionEvent e) {
            ListSelectionModel lsmData = (ListSelectionModel) e.getSource();
            if (!lsmData.isSelectionEmpty()) {
                int iRow = lsmData.getMinSelectionIndex();
                iClientId = Integer.parseInt(jtabApps.getValueAt(iRow, 0).toString());
                jtxtApp.setText(jtabApps.getValueAt(iRow, 1).toString());
                jtxtDesc.setText(jtabApps.getValueAt(iRow, 2).toString());

                dbRec.setType(Pwdtypes.S_CREDS_TYPE);
                dbRec.setClientId(iClientId);
                loadTable(dbRec);
                enableButtons();
                clearCredsFields();
                enableCredsButtons();
            }
        }
    });

    ListSelectionModel rowCred = jtabCreds.getSelectionModel();

    //Listener for credential row change;
    rowCred.addListSelectionListener(new ListSelectionListener() {

        /// Fill the form values when a row is selected in the JTable
        @Override
        public void valueChanged(ListSelectionEvent e) {
            ListSelectionModel lsmData = (ListSelectionModel) e.getSource();
            if (!lsmData.isSelectionEmpty()) {
                int iRow = lsmData.getMinSelectionIndex();
                iCredId = Integer.parseInt(jtabCreds.getValueAt(iRow, 0).toString());
                jtxtChlng.setText(jtabCreds.getValueAt(iRow, 1).toString());
                jtxtRsp.setText(l_crypto.decrypt(jtabCreds.getValueAt(iRow, 2).toString()));
                jcbTrack.setSelectedItem(jtabCreds.getValueAt(iRow, 3).toString());
                if (null == jtabCreds.getValueAt(iRow, 4)) {
                    sDateModified = "";
                } else {
                    sDateModified = jtabCreds.getValueAt(iRow, 4).toString();
                }
                sChallenge = jtxtChlng.getText();
                sResponse = jtxtRsp.getText();
                dbRec.setType(Pwdtypes.S_CREDS_TYPE);
                dbRec.setCredId(iClientId);
                jtxtChlng.setEnabled(false);
                jtxtRsp.setEnabled(false);
                jcbTrack.setEnabled(false);
                btnEdit.setEnabled(true);
                btnCredDelete.setEnabled(true);
                btnCredClear.setEnabled(true);
            }
        }
    });

}

From source file:org.stanwood.swing.AboutDialog.java

private JComponent createAuthorsTab() {
    JScrollPane scroll = new JScrollPane();
    scroll.setHorizontalScrollBarPolicy(ScrollPaneConstants.HORIZONTAL_SCROLLBAR_NEVER);
    scroll.setVerticalScrollBarPolicy(ScrollPaneConstants.VERTICAL_SCROLLBAR_AS_NEEDED);
    Box box = Box.createVerticalBox();
    box.setBorder(BorderFactory.createEmptyBorder(5, 5, 5, 5));
    for (Author author : authors) {
        box.add(new JLabel(author.getName()));
        JXHyperlink link = new JXHyperlink(
                new LinkAction(this, author.getEmail(), "mailto:" + author.getEmail()));
        box.add(link);/*from   w ww. j a  v  a 2  s. c  o m*/
        link.setBorder(BorderFactory.createEmptyBorder(0, 20, 0, 0));
        JLabel lblDescription = new JLabel(author.getDescription());
        lblDescription.setBorder(BorderFactory.createEmptyBorder(0, 20, 0, 0));
        box.add(lblDescription);
    }

    scroll.getViewport().add(box);
    return scroll;
}

From source file:org.stanwood.swing.AboutDialog.java

private JComponent createAboutTab() {
    JScrollPane scroll = new JScrollPane();
    scroll.setHorizontalScrollBarPolicy(ScrollPaneConstants.HORIZONTAL_SCROLLBAR_NEVER);
    scroll.setVerticalScrollBarPolicy(ScrollPaneConstants.VERTICAL_SCROLLBAR_AS_NEEDED);
    Box box = Box.createVerticalBox();
    box.setBorder(BorderFactory.createEmptyBorder(5, 5, 5, 5));
    box.add(Box.createVerticalGlue());
    if (message != null) {
        JXLabel lblMessage = new JXLabel(message);
        lblMessage.setLineWrap(true);/*w  w w  . jav  a 2s  . c o m*/
        box.add(lblMessage);
    }
    if (appUrl != null) {
        JXHyperlink link = new JXHyperlink(new LinkAction(this, appUrl, appUrl));
        box.add(link);
    }
    box.add(Box.createVerticalGlue());
    scroll.getViewport().add(box);
    return scroll;
}

From source file:org.thelq.stackexchange.dbimport.gui.GUI.java

public GUI(Controller passedController) {
    //Initialize logger
    logAppender = new GUILogAppender(this);

    //Set our Look&Feel
    try {//  www. ja v  a2s.  c  o  m
        if (SystemUtils.IS_OS_WINDOWS)
            UIManager.setLookAndFeel(new WindowsLookAndFeel());
        else
            UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
    } catch (Exception e) {
        log.warn("Defaulting to Swing L&F due to exception", e);
    }

    this.controller = passedController;
    frame = new JFrame();
    frame.setTitle("Unified StackExchange Data Dump Importer v" + Controller.VERSION);
    frame.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);

    //Setup menu
    JMenuBar menuBar = new JMenuBar();
    menuAdd = new JMenuItem("Add Folders/Archives");
    menuAdd.setMnemonic(KeyEvent.VK_F);
    menuBar.add(menuAdd);
    frame.setJMenuBar(menuBar);

    //Primary panel
    FormLayout primaryLayout = new FormLayout("5dlu, pref:grow, 5dlu, 5dlu, pref",
            "pref, top:pref, pref, fill:140dlu:grow, pref, fill:80dlu");
    PanelBuilder primaryBuilder = new PanelBuilder(primaryLayout)
            .border(BorderFactory.createEmptyBorder(5, 5, 5, 5));

    //DB Config panel
    primaryBuilder.addSeparator("Database Configuration", CC.xyw(1, 1, 2));
    FormLayout configLayout = new FormLayout("pref, 3dlu, pref:grow, 6dlu, pref",
            "pref, pref:grow, 3dlu, pref:grow, 3dlu, pref:grow, 3dlu, pref:grow, 3dlu, pref:grow, 3dlu, pref:grow");
    configLayout.setHonorsVisibility(true);
    final PanelBuilder configBuilder = new PanelBuilder(configLayout);
    configBuilder.addLabel("Server", CC.xy(1, 2), dbType = new JComboBox<DatabaseOption>(), CC.xy(3, 2));
    configBuilder.add(dbAdvanced = new JCheckBox("Show advanced options"), CC.xy(5, 2));
    configBuilder.addLabel("JDBC Connection", CC.xy(1, 4), jdbcString = new JTextField(15), CC.xyw(3, 4, 3));
    configBuilder.addLabel("Username", CC.xy(1, 6), username = new JTextField(10), CC.xy(3, 6));
    configBuilder.addLabel("Password", CC.xy(1, 8), password = new JPasswordField(10), CC.xy(3, 8));
    configBuilder.add(importButton = new JButton("Import"), CC.xywh(5, 6, 1, 3));
    //Add hidden
    JLabel dialectLabel = new JLabel("Dialect");
    dialectLabel.setVisible(false);
    configBuilder.add(dialectLabel, CC.xy(1, 10), dialect = new JTextField(10), CC.xyw(3, 10, 3));
    dialect.setVisible(false);
    JLabel driverLabel = new JLabel("Driver");
    driverLabel.setVisible(false);
    configBuilder.add(driverLabel, CC.xy(1, 12), driver = new JTextField(10) {
        @Override
        public void setText(String text) {
            if (StringUtils.isBlank(text))
                log.debug("Text is blank", new RuntimeException("Text " + text + " is blank"));
            super.setText(text);
        }
    }, CC.xyw(3, 12, 3));
    driver.setVisible(false);
    primaryBuilder.add(configBuilder.getPanel(), CC.xy(2, 2));

    //Options
    primaryBuilder.addSeparator("Options", CC.xyw(4, 1, 2));
    FormLayout optionsLayout = new FormLayout("pref, 3dlu, pref:grow", "");
    DefaultFormBuilder optionsBuilder = new DefaultFormBuilder(optionsLayout);
    optionsBuilder.append(disableCreateTables = new JCheckBox("Disable Creating Tables"), 3);
    optionsBuilder.append("Global Table Prefix", globalTablePrefix = new JTextField(7));
    optionsBuilder.append("Threads", threads = new JSpinner());
    //Save a core for the database
    int numThreads = Runtime.getRuntime().availableProcessors();
    numThreads = (numThreads != 1) ? numThreads - 1 : numThreads;
    threads.setModel(new SpinnerNumberModel(numThreads, 1, 100, 1));
    optionsBuilder.append("Batch Size", batchSize = new JSpinner());
    batchSize.setModel(new SpinnerNumberModel(500, 1, 500000, 1));
    primaryBuilder.add(optionsBuilder.getPanel(), CC.xy(5, 2));

    //Locations
    primaryBuilder.addSeparator("Dump Locations", CC.xyw(1, 3, 5));
    FormLayout locationsLayout = new FormLayout("pref, 15dlu, pref, 5dlu, pref, 5dlu, pref:grow, 2dlu, pref",
            "");
    locationsBuilder = new DefaultFormBuilder(locationsLayout, new ScrollablePanel()).background(Color.WHITE)
            .lineGapSize(Sizes.ZERO);
    locationsPane = new JScrollPane(locationsBuilder.getPanel());
    locationsPane.getViewport().setBackground(Color.white);
    locationsPane.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_ALWAYS);
    locationsPane.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_NEVER);
    primaryBuilder.add(locationsPane, CC.xyw(2, 4, 4));

    //Logger
    primaryBuilder.addSeparator("Log", CC.xyw(1, 5, 5));
    loggerText = new JTextPane();
    loggerText.setEditable(false);
    JPanel loggerTextPanel = new JPanel(new BorderLayout());
    loggerTextPanel.add(loggerText);
    JScrollPane loggerPane = new JScrollPane(loggerTextPanel);
    loggerPane.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_ALWAYS);
    loggerPane.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);
    JPanel loggerPanePanel = new JPanel(new BorderLayout());
    loggerPanePanel.add(loggerPane);
    primaryBuilder.add(loggerPanePanel, CC.xyw(2, 6, 4));

    menuAdd.addActionListener(new ActionListener() {
        public void actionPerformed(ActionEvent e) {
            //TODO: Allow 7z files but handle corner cases
            final JFileChooser fc = new JFileChooser();
            fc.setFileSelectionMode(JFileChooser.FILES_AND_DIRECTORIES);
            fc.setMultiSelectionEnabled(true);
            fc.setDialogTitle("Select Folders/Archives");
            fc.addChoosableFileFilter(new FileNameExtensionFilter("Archives", "7z", "zip"));
            fc.addChoosableFileFilter(new FileFilter() {
                @Getter
                protected String description = "Folders";

                @Override
                public boolean accept(File file) {
                    return file.isDirectory();
                }
            });

            if (fc.showOpenDialog(frame) != JFileChooser.APPROVE_OPTION)
                return;

            //Add files and folders in a seperate thread while updating gui in EDT
            importButton.setEnabled(false);
            for (File curFile : fc.getSelectedFiles()) {
                DumpContainer dumpContainer = null;
                try {
                    if (curFile.isDirectory())
                        dumpContainer = new FolderDumpContainer(curFile);
                    else
                        dumpContainer = new ArchiveDumpContainer(controller, curFile);
                    controller.addDumpContainer(dumpContainer);
                } catch (Exception ex) {
                    String type = (dumpContainer != null) ? dumpContainer.getType() : "";
                    LoggerFactory.getLogger(getClass()).error("Cannot open " + type, ex);
                    String location = (dumpContainer != null) ? Utils.getLongLocation(dumpContainer) : "";
                    showErrorDialog(ex, "Cannot open " + location, curFile.getAbsolutePath());
                    continue;
                }
            }
            updateLocations();
            importButton.setEnabled(true);
        }
    });

    //Add options (Could be in a map, but this is cleaner)
    dbType.addItem(new DatabaseOption().name("MySQL 5.5.3+")
            .jdbcString("jdbc:mysql://127.0.0.1:3306/stackexchange?rewriteBatchedStatements=true")
            .dialect("org.hibernate.dialect.MySQL5Dialect").driver("com.mysql.jdbc.Driver"));
    dbType.addItem(new DatabaseOption().name("PostgreSQL 8.1")
            .jdbcString("jdbc:postgresql://127.0.0.1:5432/stackexchange")
            .dialect("org.hibernate.dialect.PostgreSQL81Dialect").driver("org.postgresql.Driver"));
    dbType.addItem(new DatabaseOption().name("PostgreSQL 8.2+")
            .jdbcString("jdbc:postgresql://127.0.0.1:5432/stackexchange")
            .dialect("org.hibernate.dialect.PostgreSQL82Dialect").driver("org.postgresql.Driver"));
    dbType.addItem(new DatabaseOption().name("SQL Server")
            .jdbcString("jbdc:jtds:mssql://127.0.0.1:1433/stackexchange")
            .dialect("org.hibernate.dialect.SQLServerDialect").driver("net.sourceforge.jtds.jdbc.Driver"));
    dbType.addItem(new DatabaseOption().name("SQL Server 2005+")
            .jdbcString("jbdc:jtds:mssql://127.0.0.1:1433/stackexchange")
            .dialect("org.hibernate.dialect.SQLServer2005Dialect").driver("net.sourceforge.jtds.jdbc.Driver"));
    dbType.addItem(new DatabaseOption().name("SQL Server 2008+")
            .jdbcString("jbdc:jtds:mssql://127.0.0.1:1433/stackexchange")
            .dialect("org.hibernate.dialect.SQLServer2008Dialect").driver("net.sourceforge.jtds.jdbc.Driver"));
    dbType.addItem(new DatabaseOption().name("H2").jdbcString("jdbc:h2:stackexchange")
            .dialect("org.hibernate.dialect.H2Dialect").driver("org.h2.Driver"));
    dbType.setSelectedItem(null);
    dbType.addItemListener(new ItemListener() {
        boolean shownMysqlWarning = false;

        public void itemStateChanged(ItemEvent e) {
            //Don't run this twice for a single select
            if (e.getStateChange() == ItemEvent.DESELECTED)
                return;

            DatabaseOption selectedOption = (DatabaseOption) dbType.getSelectedItem();
            if (selectedOption.name().startsWith("MySQL") && !shownMysqlWarning) {
                //Hide popup so you don't have to click twice on the dialog 
                dbType.setPopupVisible(false);
                JOptionPane.showMessageDialog(frame,
                        "Warning: Your server must be configured with character_set_server=utf8mb4"
                                + "\nOtherwise, data dumps that contain 4 byte UTF-8 characters will fail",
                        "MySQL Warning", JOptionPane.WARNING_MESSAGE);
                shownMysqlWarning = true;
            }

            setDbOption(selectedOption);
        }
    });

    //Show and hide advanced options with checkbox
    dbAdvanced.addActionListener(new ActionListener() {
        public void actionPerformed(ActionEvent e) {
            boolean selected = ((JCheckBox) e.getSource()).isSelected();
            driver.setVisible(selected);
            ((JLabel) driver.getClientProperty("labeledBy")).setVisible(selected);
            dialect.setVisible(selected);
            ((JLabel) dialect.getClientProperty("labeledBy")).setVisible(selected);
        }
    });

    importButton.addActionListener(new ActionListener() {
        protected void showImportError(String error) {
            JOptionPane.showMessageDialog(frame, error, "Configuration Error", JOptionPane.ERROR_MESSAGE);
        }

        protected void showInputErrorDatabase(String error) {
            if (dbType.getSelectedItem() == null)
                showImportError("No dbType specified, " + StringUtils.uncapitalize(error));
            else
                showImportError(error);
        }

        public void actionPerformed(ActionEvent e) {
            boolean validationPassed = false;
            if (controller.getDumpContainers().isEmpty())
                showImportError("Please add dump folders/archives");
            else if (StringUtils.isBlank(jdbcString.getText()))
                showInputErrorDatabase("Must specify JDBC String");
            else if (StringUtils.isBlank(driver.getText()))
                showInputErrorDatabase("Must specify driver");
            else if (StringUtils.isBlank(dialect.getText()))
                showInputErrorDatabase("Must specify hibernate dialect");
            else
                validationPassed = true;

            if (!validationPassed)
                return;

            //Disable all GUI components so they can't change anything during processing
            setGuiEnabled(false);

            //Run in new thread
            controller.getGeneralThreadPool().execute(new Runnable() {
                public void run() {
                    try {
                        start();
                    } catch (final Exception e) {
                        //Show an error message box
                        SwingUtilities.invokeLater(new Runnable() {
                            public void run() {
                                LoggerFactory.getLogger(getClass()).error("Cannot import", e);
                                showErrorDialog(e, "Cannot import", null);
                            }
                        });
                    }
                    //Renable GUI
                    SwingUtilities.invokeLater(new Runnable() {
                        public void run() {
                            setGuiEnabled(true);
                        }
                    });
                }
            });
        }
    });

    //Done, init logger
    logAppender.init();
    log.info("Finished creating GUI");

    //Display
    frame.setContentPane(primaryBuilder.getPanel());
    frame.pack();
    frame.setMinimumSize(frame.getSize());

    frame.setVisible(true);
}

From source file:org.tinymediamanager.ui.movies.settings.MovieSubtitleSettingsPanel.java

private void initComponents() {
    // data init//from  w  w  w.java 2 s. c  o  m
    List<String> enabledSubtitleProviders = settings.getMovieSubtitleScrapers();
    int selectedIndex = -1;
    int counter = 0;
    for (MediaScraper scraper : MovieList.getInstance().getAvailableSubtitleScrapers()) {
        SubtitleScraper subtitleScraper = new SubtitleScraper(scraper);
        if (enabledSubtitleProviders.contains(subtitleScraper.getScraperId())) {
            subtitleScraper.active = true;
            if (selectedIndex < 0) {
                selectedIndex = counter;
            }
        }
        scrapers.add(subtitleScraper);
        counter++;
    }

    // UI init
    setLayout(new FormLayout(
            new ColumnSpec[] { FormSpecs.RELATED_GAP_COLSPEC, FormSpecs.DEFAULT_COLSPEC,
                    FormSpecs.RELATED_GAP_COLSPEC, FormSpecs.DEFAULT_COLSPEC, FormSpecs.RELATED_GAP_COLSPEC,
                    ColumnSpec.decode("default:grow"), FormSpecs.RELATED_GAP_COLSPEC, },
            new RowSpec[] { FormSpecs.RELATED_GAP_ROWSPEC, RowSpec.decode("default:grow"),
                    FormSpecs.RELATED_GAP_ROWSPEC, FormSpecs.DEFAULT_ROWSPEC,
                    FormSpecs.RELATED_GAP_ROWSPEC, }));

    JPanel panelSubtitleScrapers = new JPanel();
    panelSubtitleScrapers.setBorder(new TitledBorder(UIManager.getBorder("TitledBorder.border"),
            BUNDLE.getString("scraper.subtitle"), TitledBorder.LEADING, TitledBorder.TOP, null, null)); // $NON-NLS-1$
    add(panelSubtitleScrapers, "2, 2, 5, 1, fill, fill");
    panelSubtitleScrapers.setLayout(new FormLayout(
            new ColumnSpec[] { FormSpecs.RELATED_GAP_COLSPEC, ColumnSpec.decode("100dlu:grow"),
                    FormSpecs.RELATED_GAP_COLSPEC, ColumnSpec.decode("200dlu:grow"),
                    FormSpecs.RELATED_GAP_COLSPEC, },
            new RowSpec[] { FormSpecs.RELATED_GAP_ROWSPEC, RowSpec.decode("100dlu:grow"), }));

    final JScrollPane scrollPaneScraperDetails = new JScrollPane();
    scrollPaneScraperDetails.setHorizontalScrollBarPolicy(ScrollPaneConstants.HORIZONTAL_SCROLLBAR_NEVER);
    scrollPaneScraperDetails.setBorder(null);
    panelSubtitleScrapers.add(scrollPaneScraperDetails, "4, 1, 1, 2, fill, fill");

    JPanel panelScraperDetails = new JPanel();
    scrollPaneScraperDetails.setViewportView(panelScraperDetails);
    panelScraperDetails.setLayout(new FormLayout(new ColumnSpec[] { ColumnSpec.decode("default:grow"), },
            new RowSpec[] { RowSpec.decode("default:grow"), FormSpecs.RELATED_GAP_ROWSPEC,
                    FormSpecs.DEFAULT_ROWSPEC, }));
    {
        // add a CSS rule to force body tags to use the default label font
        // instead of the value in javax.swing.text.html.default.csss
        Font font = UIManager.getFont("Label.font");
        String bodyRule = "body { font-family: " + font.getFamily() + "; " + "font-size: " + font.getSize()
                + "pt; }";
        tpScraperDescription = new JTextPane();
        tpScraperDescription.setOpaque(false);
        tpScraperDescription.setEditorKit(new HTMLEditorKit());
        ((HTMLDocument) tpScraperDescription.getDocument()).getStyleSheet().addRule(bodyRule);
        panelScraperDetails.add(tpScraperDescription, "1, 1, fill, top");
    }
    panelScraperOptions = new ScrollablePanel();
    panelScraperOptions.setLayout(new FlowLayout(FlowLayout.LEFT));
    panelScraperDetails.add(panelScraperOptions, "1, 3, fill, top");

    JScrollPane scrollPaneScraper = new JScrollPane();
    panelSubtitleScrapers.add(scrollPaneScraper, "2, 2, fill, fill");

    tableScraper = new JTable();
    tableScraper.setRowHeight(29);
    scrollPaneScraper.setViewportView(tableScraper);

    final JLabel lblScraperLanguage = new JLabel(BUNDLE.getString("Settings.preferredLanguage")); //$NON-NLS-1$
    add(lblScraperLanguage, "2, 4, right, default");

    cbScraperLanguage = new JComboBox(MediaLanguages.values());
    add(cbScraperLanguage, "4, 4, fill, default");

    initDataBindings();

    // adjust table columns
    // Checkbox and Logo shall have minimal width
    TableColumnResizer.setMaxWidthForColumn(tableScraper, 0, 2);
    TableColumnResizer.setMaxWidthForColumn(tableScraper, 1, 2);
    TableColumnResizer.adjustColumnPreferredWidths(tableScraper, 5);

    tableScraper.getModel().addTableModelListener(new TableModelListener() {
        @Override
        public void tableChanged(TableModelEvent arg0) {
            // click on the checkbox
            if (arg0.getColumn() == 0) {
                int row = arg0.getFirstRow();
                SubtitleScraper changedScraper = scrapers.get(row);
                if (changedScraper.active) {
                    settings.addMovieSubtitleScraper(changedScraper.getScraperId());
                } else {
                    settings.removeMovieSubtitleScraper(changedScraper.getScraperId());
                }
            }
        }
    });

    // implement selection listener to load settings
    tableScraper.getSelectionModel().addListSelectionListener(new ListSelectionListener() {
        @Override
        public void valueChanged(ListSelectionEvent e) {
            int index = tableScraper.convertRowIndexToModel(tableScraper.getSelectedRow());
            if (index > -1) {
                panelScraperOptions.removeAll();
                if (scrapers.get(index).getMediaProvider().getProviderInfo().getConfig().hasConfig()) {
                    panelScraperOptions
                            .add(new MediaScraperConfigurationPanel(scrapers.get(index).getMediaProvider()));
                }
                panelScraperOptions.revalidate();
            }
        }
    });

    // select default movie scraper
    if (selectedIndex < 0) {
        selectedIndex = 0;
    }
    if (counter > 0) {
        tableScraper.getSelectionModel().setSelectionInterval(selectedIndex, selectedIndex);
    }
}

From source file:org.tinymediamanager.ui.movies.settings.MovieTrailerSettingsPanel.java

public MovieTrailerSettingsPanel() {
    // data init/*from   ww w .  j ava2  s.  c om*/
    List<String> enabledTrailerProviders = settings.getMovieTrailerScrapers();
    int selectedIndex = -1;
    int counter = 0;
    for (MediaScraper scraper : MovieList.getInstance().getAvailableTrailerScrapers()) {
        TrailerScraper trailerScraper = new TrailerScraper(scraper);
        if (enabledTrailerProviders.contains(trailerScraper.getScraperId())) {
            trailerScraper.active = true;
            if (selectedIndex < 0) {
                selectedIndex = counter;
            }
        }
        scrapers.add(trailerScraper);
        counter++;
    }

    // UI init
    setLayout(new FormLayout(
            new ColumnSpec[] { FormSpecs.RELATED_GAP_COLSPEC, ColumnSpec.decode("default:grow"),
                    FormSpecs.RELATED_GAP_COLSPEC, },
            new RowSpec[] { FormSpecs.RELATED_GAP_ROWSPEC, RowSpec.decode("default:grow"),
                    FormSpecs.RELATED_GAP_ROWSPEC, }));

    JPanel panelTrailerScrapers = new JPanel();
    panelTrailerScrapers.setBorder(new TitledBorder(UIManager.getBorder("TitledBorder.border"),
            BUNDLE.getString("scraper.trailer"), TitledBorder.LEADING, TitledBorder.TOP, null, null)); // $NON-NLS-1$
    add(panelTrailerScrapers, "2, 2, fill, fill");
    panelTrailerScrapers.setLayout(new FormLayout(
            new ColumnSpec[] { FormSpecs.RELATED_GAP_COLSPEC, FormSpecs.UNRELATED_GAP_COLSPEC,
                    FormSpecs.RELATED_GAP_COLSPEC, FormSpecs.DEFAULT_COLSPEC, FormSpecs.RELATED_GAP_COLSPEC,
                    ColumnSpec.decode("default:grow"), FormSpecs.RELATED_GAP_COLSPEC,
                    ColumnSpec.decode("200dlu:grow"), FormSpecs.RELATED_GAP_COLSPEC, },
            new RowSpec[] { FormSpecs.RELATED_GAP_ROWSPEC, RowSpec.decode("100dlu:grow"),
                    FormSpecs.RELATED_GAP_ROWSPEC, FormSpecs.DEFAULT_ROWSPEC, FormSpecs.RELATED_GAP_ROWSPEC,
                    FormSpecs.DEFAULT_ROWSPEC, FormSpecs.LABEL_COMPONENT_GAP_ROWSPEC, FormSpecs.DEFAULT_ROWSPEC,
                    FormSpecs.LABEL_COMPONENT_GAP_ROWSPEC, FormSpecs.DEFAULT_ROWSPEC,
                    FormSpecs.UNRELATED_GAP_ROWSPEC, FormSpecs.DEFAULT_ROWSPEC,
                    FormSpecs.LABEL_COMPONENT_GAP_ROWSPEC, FormSpecs.DEFAULT_ROWSPEC,
                    FormSpecs.RELATED_GAP_ROWSPEC, }));

    final JScrollPane scrollPaneScraperDetails = new JScrollPane();
    scrollPaneScraperDetails.setHorizontalScrollBarPolicy(ScrollPaneConstants.HORIZONTAL_SCROLLBAR_NEVER);
    scrollPaneScraperDetails.setBorder(null);
    panelTrailerScrapers.add(scrollPaneScraperDetails, "8, 1, 1, 2, fill, fill");

    JPanel panelScraperDetails = new JPanel();
    scrollPaneScraperDetails.setViewportView(panelScraperDetails);
    panelScraperDetails.setLayout(new FormLayout(new ColumnSpec[] { ColumnSpec.decode("default:grow"), },
            new RowSpec[] { RowSpec.decode("default:grow"), FormSpecs.RELATED_GAP_ROWSPEC,
                    FormSpecs.DEFAULT_ROWSPEC, }));
    {
        // add a CSS rule to force body tags to use the default label font
        // instead of the value in javax.swing.text.html.default.csss
        Font font = UIManager.getFont("Label.font");
        String bodyRule = "body { font-family: " + font.getFamily() + "; " + "font-size: " + font.getSize()
                + "pt; }";
        tpScraperDescription = new JTextPane();
        tpScraperDescription.setOpaque(false);
        tpScraperDescription.setEditorKit(new HTMLEditorKit());
        ((HTMLDocument) tpScraperDescription.getDocument()).getStyleSheet().addRule(bodyRule);
        panelScraperDetails.add(tpScraperDescription, "1, 1, fill, top");
    }
    panelScraperOptions = new ScrollablePanel();
    panelScraperOptions.setLayout(new FlowLayout(FlowLayout.LEFT));
    panelScraperDetails.add(panelScraperOptions, "1, 3, fill, top");

    JScrollPane scrollPaneScraper = new JScrollPane();
    panelTrailerScrapers.add(scrollPaneScraper, "2, 2, 5, 1, fill, fill");

    tableTrailerScraper = new JTable();
    tableTrailerScraper.setRowHeight(29);
    scrollPaneScraper.setViewportView(tableTrailerScraper);

    JSeparator separator = new JSeparator();
    panelTrailerScrapers.add(separator, "2, 4, 7, 1");

    checkBox = new JCheckBox(BUNDLE.getString("Settings.trailer.preferred")); //$NON-NLS-1$
    panelTrailerScrapers.add(checkBox, "2, 6, 7, 1");

    JLabel lblTrailerSource = new JLabel(BUNDLE.getString("Settings.trailer.source")); //$NON-NLS-1$
    panelTrailerScrapers.add(lblTrailerSource, "4, 8, right, default");

    cbTrailerSource = new JComboBox<>();
    cbTrailerSource.setModel(new DefaultComboBoxModel<>(MovieTrailerSources.values()));
    panelTrailerScrapers.add(cbTrailerSource, "6, 8, fill, default");

    JLabel lblTrailerQuality = new JLabel(BUNDLE.getString("Settings.trailer.quality")); //$NON-NLS-1$
    panelTrailerScrapers.add(lblTrailerQuality, "4, 10, right, default");

    cbTrailerQuality = new JComboBox<>();
    cbTrailerQuality.setModel(new DefaultComboBoxModel<>(MovieTrailerQuality.values()));
    panelTrailerScrapers.add(cbTrailerQuality, "6, 10, fill, default");

    chckbxAutomaticTrailerDownload = new JCheckBox(BUNDLE.getString("Settings.trailer.automaticdownload")); //$NON-NLS-1$
    panelTrailerScrapers.add(chckbxAutomaticTrailerDownload, "2, 12, 7, 1");

    JLabel lblAutomaticTrailerDownloadHint = new JLabel(
            BUNDLE.getString("Settings.trailer.automaticdownload.hint")); //$NON-NLS-1$
    TmmFontHelper.changeFont(lblAutomaticTrailerDownloadHint, 0.833);
    panelTrailerScrapers.add(lblAutomaticTrailerDownloadHint, "4, 14, 5, 1");

    initDataBindings();

    // adjust table columns
    // Checkbox and Logo shall have minimal width
    TableColumnResizer.setMaxWidthForColumn(tableTrailerScraper, 0, 2);
    TableColumnResizer.setMaxWidthForColumn(tableTrailerScraper, 1, 2);
    TableColumnResizer.adjustColumnPreferredWidths(tableTrailerScraper, 5);

    tableTrailerScraper.getModel().addTableModelListener(new TableModelListener() {
        @Override
        public void tableChanged(TableModelEvent arg0) {
            // click on the checkbox
            if (arg0.getColumn() == 0) {
                int row = arg0.getFirstRow();
                TrailerScraper changedScraper = scrapers.get(row);
                if (changedScraper.active) {
                    settings.addMovieTrailerScraper(changedScraper.getScraperId());
                } else {
                    settings.removeMovieTrailerScraper(changedScraper.getScraperId());
                }
            }
        }
    });

    // implement selection listener to load settings
    tableTrailerScraper.getSelectionModel().addListSelectionListener(new ListSelectionListener() {
        @Override
        public void valueChanged(ListSelectionEvent e) {
            int index = tableTrailerScraper.convertRowIndexToModel(tableTrailerScraper.getSelectedRow());
            if (index > -1) {
                panelScraperOptions.removeAll();
                if (scrapers.get(index).getMediaProvider().getProviderInfo().getConfig().hasConfig()) {
                    panelScraperOptions
                            .add(new MediaScraperConfigurationPanel(scrapers.get(index).getMediaProvider()));
                }
                panelScraperOptions.revalidate();
            }
        }
    });

    // select default movie scraper
    if (selectedIndex < 0) {
        selectedIndex = 0;
    }
    if (counter > 0) {
        tableTrailerScraper.getSelectionModel().setSelectionInterval(selectedIndex, selectedIndex);
    }
}

From source file:org.tinymediamanager.ui.tvshows.settings.TvShowSubtitleSettingsPanel.java

private void initComponents() {
    // data init//from ww  w  .ja  v  a  2s  . com
    List<String> enabledSubtitleProviders = settings.getTvShowSubtitleScrapers();
    int selectedIndex = -1;
    int counter = 0;
    for (MediaScraper scraper : TvShowList.getInstance().getAvailableSubtitleScrapers()) {
        SubtitleScraper subtitleScraper = new SubtitleScraper(scraper);
        if (enabledSubtitleProviders.contains(subtitleScraper.getScraperId())) {
            subtitleScraper.active = true;
            if (selectedIndex < 0) {
                selectedIndex = counter;
            }
        }
        scrapers.add(subtitleScraper);
        counter++;
    }

    // UI init
    setLayout(new FormLayout(
            new ColumnSpec[] { FormSpecs.RELATED_GAP_COLSPEC, FormSpecs.DEFAULT_COLSPEC,
                    FormSpecs.RELATED_GAP_COLSPEC, FormSpecs.DEFAULT_COLSPEC, FormSpecs.RELATED_GAP_COLSPEC,
                    ColumnSpec.decode("default:grow"), FormSpecs.RELATED_GAP_COLSPEC, },
            new RowSpec[] { FormSpecs.RELATED_GAP_ROWSPEC, RowSpec.decode("default:grow"),
                    FormSpecs.RELATED_GAP_ROWSPEC, FormSpecs.DEFAULT_ROWSPEC,
                    FormSpecs.RELATED_GAP_ROWSPEC, }));

    JPanel panelSubtitleScrapers = new JPanel();
    panelSubtitleScrapers.setBorder(new TitledBorder(UIManager.getBorder("TitledBorder.border"),
            BUNDLE.getString("scraper.subtitle"), TitledBorder.LEADING, TitledBorder.TOP, null, null)); // $NON-NLS-1$
    add(panelSubtitleScrapers, "2, 2, 5, 1, fill, fill");
    panelSubtitleScrapers.setLayout(new FormLayout(
            new ColumnSpec[] { FormSpecs.RELATED_GAP_COLSPEC, ColumnSpec.decode("100dlu:grow"),
                    FormSpecs.RELATED_GAP_COLSPEC, ColumnSpec.decode("200dlu:grow"),
                    FormSpecs.RELATED_GAP_COLSPEC, },
            new RowSpec[] { FormSpecs.RELATED_GAP_ROWSPEC, RowSpec.decode("100dlu:grow"), }));

    final JScrollPane scrollPaneScraperDetails = new JScrollPane();
    scrollPaneScraperDetails.setHorizontalScrollBarPolicy(ScrollPaneConstants.HORIZONTAL_SCROLLBAR_NEVER);
    scrollPaneScraperDetails.setBorder(null);
    panelSubtitleScrapers.add(scrollPaneScraperDetails, "4, 1, 1, 2, fill, fill");

    JPanel panelScraperDetails = new JPanel();
    scrollPaneScraperDetails.setViewportView(panelScraperDetails);
    panelScraperDetails.setLayout(new FormLayout(new ColumnSpec[] { ColumnSpec.decode("default:grow"), },
            new RowSpec[] { RowSpec.decode("default:grow"), FormSpecs.RELATED_GAP_ROWSPEC,
                    FormSpecs.DEFAULT_ROWSPEC, }));
    {
        // add a CSS rule to force body tags to use the default label font
        // instead of the value in javax.swing.text.html.default.csss
        Font font = UIManager.getFont("Label.font");
        String bodyRule = "body { font-family: " + font.getFamily() + "; " + "font-size: " + font.getSize()
                + "pt; }";
        tpScraperDescription = new JTextPane();
        tpScraperDescription.setOpaque(false);
        tpScraperDescription.setEditorKit(new HTMLEditorKit());
        ((HTMLDocument) tpScraperDescription.getDocument()).getStyleSheet().addRule(bodyRule);
        panelScraperDetails.add(tpScraperDescription, "1, 1, fill, top");
    }
    panelScraperOptions = new ScrollablePanel();
    panelScraperOptions.setLayout(new FlowLayout(FlowLayout.LEFT));
    panelScraperDetails.add(panelScraperOptions, "1, 3, fill, top");

    JScrollPane scrollPaneScraper = new JScrollPane();
    panelSubtitleScrapers.add(scrollPaneScraper, "2, 2, fill, fill");

    tableScraper = new JTable();
    tableScraper.setRowHeight(29);
    scrollPaneScraper.setViewportView(tableScraper);

    final JLabel lblScraperLanguage = new JLabel(BUNDLE.getString("Settings.preferredLanguage")); //$NON-NLS-1$
    add(lblScraperLanguage, "2, 4, right, default");

    cbScraperLanguage = new JComboBox(MediaLanguages.values());
    add(cbScraperLanguage, "4, 4, fill, default");

    initDataBindings();

    // adjust table columns
    // Checkbox and Logo shall have minimal width
    TableColumnResizer.setMaxWidthForColumn(tableScraper, 0, 2);
    TableColumnResizer.setMaxWidthForColumn(tableScraper, 1, 2);
    TableColumnResizer.adjustColumnPreferredWidths(tableScraper, 5);

    tableScraper.getModel().addTableModelListener(new TableModelListener() {
        @Override
        public void tableChanged(TableModelEvent arg0) {
            // click on the checkbox
            if (arg0.getColumn() == 0) {
                int row = arg0.getFirstRow();
                SubtitleScraper changedScraper = scrapers.get(row);
                if (changedScraper.active) {
                    settings.addTvShowSubtitleScraper(changedScraper.getScraperId());
                } else {
                    settings.removeTvShowSubtitleScraper(changedScraper.getScraperId());
                }
            }
        }
    });

    // implement selection listener to load settings
    tableScraper.getSelectionModel().addListSelectionListener(new ListSelectionListener() {
        @Override
        public void valueChanged(ListSelectionEvent e) {
            int index = tableScraper.convertRowIndexToModel(tableScraper.getSelectedRow());
            if (index > -1) {
                panelScraperOptions.removeAll();
                if (scrapers.get(index).getMediaProvider().getProviderInfo().getConfig().hasConfig()) {
                    panelScraperOptions
                            .add(new MediaScraperConfigurationPanel(scrapers.get(index).getMediaProvider()));
                }
                panelScraperOptions.revalidate();
            }
        }
    });

    // select default tv show subtitle scraper
    if (selectedIndex < 0) {
        selectedIndex = 0;
    }
    if (counter > 0) {
        tableScraper.getSelectionModel().setSelectionInterval(selectedIndex, selectedIndex);
    }
}

From source file:org.tinymediamanager.ui.tvshows.TvShowPanel.java

/**
 * Instantiates a new tv show panel.//w w w .j  ava  2s .  c o  m
 */
public TvShowPanel() {
    super();

    treeModel = new TvShowTreeModel(tvShowList.getTvShows());
    tvShowSeasonSelectionModel = new TvShowSeasonSelectionModel();
    tvShowEpisodeSelectionModel = new TvShowEpisodeSelectionModel();

    // build menu
    menu = new JMenu(BUNDLE.getString("tmm.tvshows")); //$NON-NLS-1$
    JFrame mainFrame = MainWindow.getFrame();
    JMenuBar menuBar = mainFrame.getJMenuBar();
    menuBar.add(menu);

    setLayout(new FormLayout(
            new ColumnSpec[] { FormFactory.RELATED_GAP_COLSPEC, ColumnSpec.decode("850px:grow"),
                    FormFactory.RELATED_GAP_COLSPEC, },
            new RowSpec[] { FormFactory.RELATED_GAP_ROWSPEC, RowSpec.decode("default:grow"), }));

    JSplitPane splitPane = new JSplitPane();
    splitPane.setContinuousLayout(true);
    add(splitPane, "2, 2, fill, fill");

    JPanel panelTvShowTree = new JPanel();
    splitPane.setLeftComponent(panelTvShowTree);
    panelTvShowTree.setLayout(new FormLayout(
            new ColumnSpec[] { FormFactory.RELATED_GAP_COLSPEC, FormFactory.DEFAULT_COLSPEC,
                    FormFactory.UNRELATED_GAP_COLSPEC, ColumnSpec.decode("default:grow"),
                    FormFactory.RELATED_GAP_COLSPEC, FormFactory.DEFAULT_COLSPEC, },
            new RowSpec[] { FormFactory.DEFAULT_ROWSPEC, FormFactory.RELATED_GAP_ROWSPEC,
                    RowSpec.decode("3px:grow"), FormFactory.RELATED_GAP_ROWSPEC,
                    FormFactory.DEFAULT_ROWSPEC, }));

    textField = EnhancedTextField.createSearchTextField();
    panelTvShowTree.add(textField, "4, 1, right, bottom");
    textField.setColumns(12);
    textField.getDocument().addDocumentListener(new DocumentListener() {
        @Override
        public void insertUpdate(final DocumentEvent e) {
            applyFilter();
        }

        @Override
        public void removeUpdate(final DocumentEvent e) {
            applyFilter();
        }

        @Override
        public void changedUpdate(final DocumentEvent e) {
            applyFilter();
        }

        public void applyFilter() {
            TvShowTreeModel filteredModel = (TvShowTreeModel) tree.getModel();
            if (StringUtils.isNotBlank(textField.getText())) {
                filteredModel.setFilter(SearchOptions.TEXT, textField.getText());
            } else {
                filteredModel.removeFilter(SearchOptions.TEXT);
            }

            filteredModel.filter(tree);
        }
    });

    final JToggleButton btnFilter = new JToggleButton(IconManager.FILTER);
    btnFilter.setToolTipText(BUNDLE.getString("movieextendedsearch.options")); //$NON-NLS-1$
    panelTvShowTree.add(btnFilter, "6, 1, default, bottom");

    JScrollPane scrollPane = new JScrollPane();
    scrollPane.setHorizontalScrollBarPolicy(ScrollPaneConstants.HORIZONTAL_SCROLLBAR_NEVER);
    panelTvShowTree.add(scrollPane, "2, 3, 5, 1, fill, fill");

    JToolBar toolBar = new JToolBar();
    toolBar.setRollover(true);
    toolBar.setFloatable(false);
    toolBar.setOpaque(false);
    panelTvShowTree.add(toolBar, "2, 1");

    // toolBar.add(actionUpdateDatasources);
    final JSplitButton buttonUpdateDatasource = new JSplitButton(IconManager.REFRESH);
    // temp fix for size of the button
    buttonUpdateDatasource.setText("   ");
    buttonUpdateDatasource.setHorizontalAlignment(JButton.LEFT);
    // buttonScrape.setMargin(new Insets(2, 2, 2, 24));
    buttonUpdateDatasource.setSplitWidth(18);
    buttonUpdateDatasource.setToolTipText(BUNDLE.getString("update.datasource")); //$NON-NLS-1$
    buttonUpdateDatasource.addSplitButtonActionListener(new SplitButtonActionListener() {
        public void buttonClicked(ActionEvent e) {
            actionUpdateDatasources.actionPerformed(e);
        }

        public void splitButtonClicked(ActionEvent e) {
            // build the popupmenu on the fly
            buttonUpdateDatasource.getPopupMenu().removeAll();
            buttonUpdateDatasource.getPopupMenu().add(new JMenuItem(actionUpdateDatasources2));
            buttonUpdateDatasource.getPopupMenu().addSeparator();
            for (String ds : TvShowModuleManager.SETTINGS.getTvShowDataSource()) {
                buttonUpdateDatasource.getPopupMenu()
                        .add(new JMenuItem(new TvShowUpdateSingleDatasourceAction(ds)));
            }
            buttonUpdateDatasource.getPopupMenu().addSeparator();
            buttonUpdateDatasource.getPopupMenu().add(new JMenuItem(actionUpdateTvShow));
            buttonUpdateDatasource.getPopupMenu().pack();
        }
    });

    JPopupMenu popup = new JPopupMenu("popup");
    buttonUpdateDatasource.setPopupMenu(popup);
    toolBar.add(buttonUpdateDatasource);

    JSplitButton buttonScrape = new JSplitButton(IconManager.SEARCH);
    // temp fix for size of the button
    buttonScrape.setText("   ");
    buttonScrape.setHorizontalAlignment(JButton.LEFT);
    buttonScrape.setSplitWidth(18);
    buttonScrape.setToolTipText(BUNDLE.getString("tvshow.scrape.selected")); //$NON-NLS-1$

    // register for listener
    buttonScrape.addSplitButtonActionListener(new SplitButtonActionListener() {
        @Override
        public void buttonClicked(ActionEvent e) {
            actionScrape.actionPerformed(e);
        }

        @Override
        public void splitButtonClicked(ActionEvent e) {
        }
    });

    popup = new JPopupMenu("popup");
    JMenuItem item = new JMenuItem(actionScrape2);
    popup.add(item);
    // item = new JMenuItem(actionScrapeUnscraped);
    // popup.add(item);
    item = new JMenuItem(actionScrapeSelected);
    popup.add(item);
    item = new JMenuItem(actionScrapeNewItems);
    popup.add(item);
    buttonScrape.setPopupMenu(popup);
    toolBar.add(buttonScrape);
    toolBar.add(actionEdit);

    JButton btnMediaInformation = new JButton();
    btnMediaInformation.setAction(actionMediaInformation);
    toolBar.add(btnMediaInformation);

    // install drawing of full with
    tree = new ZebraJTree(treeModel) {
        private static final long serialVersionUID = 2422163883324014637L;

        @Override
        public void paintComponent(Graphics g) {
            width = this.getWidth();
            super.paintComponent(g);
        }
    };
    tvShowSelectionModel = new TvShowSelectionModel(tree);

    TreeUI ui = new TreeUI() {
        @Override
        protected void paintRow(Graphics g, Rectangle clipBounds, Insets insets, Rectangle bounds,
                TreePath path, int row, boolean isExpanded, boolean hasBeenExpanded, boolean isLeaf) {
            bounds.width = width - bounds.x;
            super.paintRow(g, clipBounds, insets, bounds, path, row, isExpanded, hasBeenExpanded, isLeaf);
        }
    };
    tree.setUI(ui);

    tree.setRootVisible(false);
    tree.setShowsRootHandles(true);
    tree.setCellRenderer(new TvShowTreeCellRenderer());
    tree.setRowHeight(0);
    scrollPane.setViewportView(tree);

    JPanel panelHeader = new JPanel() {
        private static final long serialVersionUID = -6914183798172482157L;

        @Override
        public void paintComponent(Graphics g) {
            super.paintComponent(g);
            JTattooUtilities.fillHorGradient(g, AbstractLookAndFeel.getTheme().getColHeaderColors(), 0, 0,
                    getWidth(), getHeight());
        }
    };
    scrollPane.setColumnHeaderView(panelHeader);
    panelHeader.setLayout(new FormLayout(
            new ColumnSpec[] { FormFactory.RELATED_GAP_COLSPEC, ColumnSpec.decode("default:grow"),
                    FormFactory.RELATED_GAP_COLSPEC, ColumnSpec.decode("center:20px"),
                    ColumnSpec.decode("center:20px"), ColumnSpec.decode("center:20px") },
            new RowSpec[] { FormFactory.DEFAULT_ROWSPEC, }));

    JLabel lblTvShowsColumn = new JLabel(BUNDLE.getString("metatag.tvshow")); //$NON-NLS-1$
    lblTvShowsColumn.setHorizontalAlignment(JLabel.CENTER);
    panelHeader.add(lblTvShowsColumn, "2, 1");

    JLabel lblNfoColumn = new JLabel("");
    lblNfoColumn.setHorizontalAlignment(JLabel.CENTER);
    lblNfoColumn.setIcon(IconManager.INFO);
    lblNfoColumn.setToolTipText(BUNDLE.getString("metatag.nfo"));//$NON-NLS-1$
    panelHeader.add(lblNfoColumn, "4, 1");

    JLabel lblImageColumn = new JLabel("");
    lblImageColumn.setHorizontalAlignment(JLabel.CENTER);
    lblImageColumn.setIcon(IconManager.IMAGE);
    lblImageColumn.setToolTipText(BUNDLE.getString("metatag.images"));//$NON-NLS-1$
    panelHeader.add(lblImageColumn, "5, 1");

    JLabel lblSubtitleColumn = new JLabel("");
    lblSubtitleColumn.setHorizontalAlignment(JLabel.CENTER);
    lblSubtitleColumn.setIcon(IconManager.SUBTITLE);
    lblSubtitleColumn.setToolTipText(BUNDLE.getString("metatag.subtitles"));//$NON-NLS-1$
    panelHeader.add(lblSubtitleColumn, "6, 1");

    JPanel panel = new JPanel();
    panelTvShowTree.add(panel, "2, 5, 3, 1, fill, fill");
    panel.setLayout(new FormLayout(
            new ColumnSpec[] { FormFactory.DEFAULT_COLSPEC, FormFactory.RELATED_GAP_COLSPEC,
                    FormFactory.DEFAULT_COLSPEC, FormFactory.RELATED_GAP_COLSPEC, FormFactory.DEFAULT_COLSPEC,
                    FormFactory.RELATED_GAP_COLSPEC, FormFactory.DEFAULT_COLSPEC,
                    FormFactory.RELATED_GAP_COLSPEC, FormFactory.DEFAULT_COLSPEC, },
            new RowSpec[] { FormFactory.LINE_GAP_ROWSPEC, FormFactory.DEFAULT_ROWSPEC, }));

    JLabel lblTvShowsT = new JLabel(BUNDLE.getString("metatag.tvshows") + ":"); //$NON-NLS-1$
    panel.add(lblTvShowsT, "1, 2, fill, fill");

    lblTvShows = new JLabel("");
    panel.add(lblTvShows, "3, 2");

    JLabel labelSlash = new JLabel("/");
    panel.add(labelSlash, "5, 2");

    JLabel lblEpisodesT = new JLabel(BUNDLE.getString("metatag.episodes") + ":"); //$NON-NLS-1$
    panel.add(lblEpisodesT, "7, 2");

    lblEpisodes = new JLabel("");
    panel.add(lblEpisodes, "9, 2");

    JLayeredPane layeredPaneRight = new JLayeredPane();
    layeredPaneRight.setLayout(
            new FormLayout(new ColumnSpec[] { ColumnSpec.decode("default"), ColumnSpec.decode("default:grow") },
                    new RowSpec[] { RowSpec.decode("default"), RowSpec.decode("default:grow") }));
    panelRight = new JPanel();
    layeredPaneRight.add(panelRight, "1, 1, 2, 2, fill, fill");
    layeredPaneRight.setLayer(panelRight, 0);

    // glass pane
    final TvShowExtendedSearchPanel panelExtendedSearch = new TvShowExtendedSearchPanel(treeModel, tree);
    panelExtendedSearch.setVisible(false);
    // panelMovieList.add(panelExtendedSearch, "2, 5, 2, 1, fill, fill");
    btnFilter.addActionListener(new ActionListener() {
        @Override
        public void actionPerformed(ActionEvent arg0) {
            if (panelExtendedSearch.isVisible() == true) {
                panelExtendedSearch.setVisible(false);
            } else {
                panelExtendedSearch.setVisible(true);
            }
        }
    });
    // add a propertychangelistener which reacts on setting a filter
    tree.addPropertyChangeListener(new PropertyChangeListener() {
        @Override
        public void propertyChange(PropertyChangeEvent evt) {
            if ("filterChanged".equals(evt.getPropertyName())) {
                if (Boolean.TRUE.equals(evt.getNewValue())) {
                    btnFilter.setIcon(IconManager.FILTER_ACTIVE);
                    btnFilter.setToolTipText(BUNDLE.getString("movieextendedsearch.options.active")); //$NON-NLS-1$
                } else {
                    btnFilter.setIcon(IconManager.FILTER);
                    btnFilter.setToolTipText(BUNDLE.getString("movieextendedsearch.options")); //$NON-NLS-1$
                }
            }
        }
    });
    layeredPaneRight.add(panelExtendedSearch, "1, 1, fill, fill");
    layeredPaneRight.setLayer(panelExtendedSearch, 1);

    splitPane.setRightComponent(layeredPaneRight);
    panelRight.setLayout(new CardLayout(0, 0));

    JPanel panelTvShow = new TvShowInformationPanel(tvShowSelectionModel);
    panelRight.add(panelTvShow, "tvShow");

    JPanel panelTvShowSeason = new TvShowSeasonInformationPanel(tvShowSeasonSelectionModel);
    panelRight.add(panelTvShowSeason, "tvShowSeason");

    JPanel panelTvShowEpisode = new TvShowEpisodeInformationPanel(tvShowEpisodeSelectionModel);
    panelRight.add(panelTvShowEpisode, "tvShowEpisode");

    tree.addTreeSelectionListener(new TreeSelectionListener() {
        @Override
        public void valueChanged(TreeSelectionEvent e) {
            DefaultMutableTreeNode node = (DefaultMutableTreeNode) tree.getLastSelectedPathComponent();
            if (node != null) {
                // click on a tv show
                if (node.getUserObject() instanceof TvShow) {
                    TvShow tvShow = (TvShow) node.getUserObject();
                    tvShowSelectionModel.setSelectedTvShow(tvShow);
                    CardLayout cl = (CardLayout) (panelRight.getLayout());
                    cl.show(panelRight, "tvShow");
                }

                // click on a season
                if (node.getUserObject() instanceof TvShowSeason) {
                    TvShowSeason tvShowSeason = (TvShowSeason) node.getUserObject();
                    tvShowSeasonSelectionModel.setSelectedTvShowSeason(tvShowSeason);
                    CardLayout cl = (CardLayout) (panelRight.getLayout());
                    cl.show(panelRight, "tvShowSeason");
                }

                // click on an episode
                if (node.getUserObject() instanceof TvShowEpisode) {
                    TvShowEpisode tvShowEpisode = (TvShowEpisode) node.getUserObject();
                    tvShowEpisodeSelectionModel.setSelectedTvShowEpisode(tvShowEpisode);
                    CardLayout cl = (CardLayout) (panelRight.getLayout());
                    cl.show(panelRight, "tvShowEpisode");
                }
            } else {
                // check if there is at least one tv show in the model
                TvShowRootTreeNode root = (TvShowRootTreeNode) tree.getModel().getRoot();
                if (root.getChildCount() == 0) {
                    // sets an inital show
                    tvShowSelectionModel.setSelectedTvShow(null);
                }
            }
        }
    });

    addComponentListener(new ComponentAdapter() {
        @Override
        public void componentHidden(ComponentEvent e) {
            menu.setVisible(false);
            super.componentHidden(e);
        }

        @Override
        public void componentShown(ComponentEvent e) {
            menu.setVisible(true);
            super.componentHidden(e);
        }
    });

    // further initializations
    init();
    initDataBindings();

    // selecting first TV show at startup
    if (tvShowList.getTvShows() != null && tvShowList.getTvShows().size() > 0) {
        DefaultMutableTreeNode firstLeaf = (DefaultMutableTreeNode) ((DefaultMutableTreeNode) tree.getModel()
                .getRoot()).getFirstChild();
        tree.setSelectionPath(new TreePath(((DefaultMutableTreeNode) firstLeaf.getParent()).getPath()));
        tree.setSelectionPath(new TreePath(firstLeaf.getPath()));
    }
}

From source file:org.ut.biolab.medsavant.client.query.QueryViewController.java

public final void refreshView() {
    List<JComponent> cs;

    cs = getComponentsFromQueryModel(rootGroup);
    this.setLayout(new BorderLayout());

    JPanel p = ViewUtil.getClearPanel();
    //  p.setBorder(ViewUtil.getBottomLineBorder());
    p.setLayout(new MigLayout("hidemode 1, nogrid, fillx, insets 12 12 12 20"));

    this.removeAll();

    JLabel l = ViewUtil.getEmphasizedLabel("SEARCH CONDITIONS");
    p.add(l, "left");

    p.add(ViewUtil.getHelpButton("How to search",
            "Type a search condition into the search box, e.g. \"Chromosome\". "
                    + "Press Enter / Return to accept the selected condition name. "
                    + "You\'ll then be prompted to specify parameters for this condition."),
            "left, wrap");

    for (JComponent c : cs) {
        p.add(c, "left, wrap");
    }/*from   w w  w . ja v a2 s. co  m*/

    p.add(warningText, "left, wrap");
    p.add(applyButton, "left, wrap, gapy n 1");

    JScrollPane jsp = ViewUtil.getClearBorderlessScrollPane(p);
    jsp.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_NEVER);
    this.add(jsp, BorderLayout.CENTER);

    this.invalidate();
    this.updateUI();
}

From source file:org.wso2.appserver.sample.flickr.client.FlickrServiceFrame.java

private void setupUI() {
    panel1 = new JPanel();
    panel1.setLayout(new GridBagLayout());
    panel1.setMaximumSize(new Dimension(900, 700));
    panel1.setMinimumSize(new Dimension(900, 700));
    panel1.setPreferredSize(new Dimension(900, 700));
    panel1.setRequestFocusEnabled(false);
    tabbedPane1 = new JTabbedPane();
    tabbedPane1.setPreferredSize(new Dimension(900, 700));
    GridBagConstraints gbc;/*from w w w .  j  a va 2s  .  c o m*/
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 0;
    gbc.weightx = 1.0;
    gbc.weighty = 1.0;
    gbc.fill = GridBagConstraints.BOTH;
    panel1.add(tabbedPane1, gbc);
    final JPanel panel2 = new JPanel();
    panel2.setLayout(new GridBagLayout());
    tabbedPane1.addTab("People", panel2);
    peopleOperationPane = new JTabbedPane();
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 0;
    gbc.weightx = 1.0;
    gbc.weighty = 1.0;
    gbc.fill = GridBagConstraints.BOTH;
    panel2.add(peopleOperationPane, gbc);
    final JPanel panel3 = new JPanel();
    panel3.setLayout(new GridBagLayout());
    peopleOperationPane.addTab("FindByEmail", panel3);
    final JLabel label1 = new JLabel();
    label1.setFont(new Font(label1.getFont().getName(), Font.BOLD, label1.getFont().getSize()));
    label1.setHorizontalAlignment(0);
    label1.setHorizontalTextPosition(0);
    label1.setMaximumSize(new Dimension(400, 50));
    label1.setMinimumSize(new Dimension(400, 50));
    label1.setPreferredSize(new Dimension(400, 50));
    label1.setText("Return a user's NSID, given their email address");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 0;
    gbc.gridwidth = 2;
    gbc.anchor = GridBagConstraints.NORTH;
    gbc.insets = new Insets(50, 0, 50, 0);
    panel3.add(label1, gbc);
    final JLabel label2 = new JLabel();
    label2.setFont(new Font(label2.getFont().getName(), Font.BOLD, label2.getFont().getSize()));
    label2.setHorizontalAlignment(4);
    label2.setMaximumSize(new Dimension(400, 25));
    label2.setMinimumSize(new Dimension(400, 25));
    label2.setPreferredSize(new Dimension(400, 25));
    label2.setText("E-Mail :");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 2;
    gbc.anchor = GridBagConstraints.WEST;
    panel3.add(label2, gbc);
    txtPeopleEmail = new JTextField();
    txtPeopleEmail.setEditable(true);
    txtPeopleEmail.setMaximumSize(new Dimension(200, 25));
    txtPeopleEmail.setMinimumSize(new Dimension(200, 25));
    txtPeopleEmail.setPreferredSize(new Dimension(200, 25));
    txtPeopleEmail.setRequestFocusEnabled(true);
    gbc = new GridBagConstraints();
    gbc.gridx = 1;
    gbc.gridy = 2;
    gbc.weightx = 1.0;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 100, 0, 0);
    panel3.add(txtPeopleEmail, gbc);
    final JScrollPane scrollPane1 = new JScrollPane();
    scrollPane1.setBackground(new Color(-3355444));
    scrollPane1.setMaximumSize(new Dimension(550, 225));
    scrollPane1.setMinimumSize(new Dimension(550, 225));
    scrollPane1.setPreferredSize(new Dimension(550, 225));
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 4;
    gbc.gridwidth = 2;
    gbc.weighty = 1.0;
    panel3.add(scrollPane1, gbc);
    findByEmailOutput = new JTextArea();
    findByEmailOutput.setBackground(new Color(-3355444));
    findByEmailOutput.setEditable(false);
    findByEmailOutput.setText("");
    scrollPane1.setViewportView(findByEmailOutput);
    findByEmailInvoke = new JButton();
    findByEmailInvoke.setFocusCycleRoot(true);
    findByEmailInvoke.setFont(
            new Font(findByEmailInvoke.getFont().getName(), Font.BOLD, findByEmailInvoke.getFont().getSize()));
    findByEmailInvoke.setMaximumSize(new Dimension(100, 30));
    findByEmailInvoke.setMinimumSize(new Dimension(100, 30));
    findByEmailInvoke.setPreferredSize(new Dimension(100, 30));
    findByEmailInvoke.setText("Invoke");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 3;
    gbc.gridwidth = 2;
    gbc.insets = new Insets(50, 0, 50, 0);
    panel3.add(findByEmailInvoke, gbc);
    final JPanel panel4 = new JPanel();
    panel4.setLayout(new GridBagLayout());
    peopleOperationPane.addTab("FindByUsername", panel4);
    final JLabel label3 = new JLabel();
    label3.setFont(new Font(label3.getFont().getName(), Font.BOLD, label3.getFont().getSize()));
    label3.setHorizontalAlignment(0);
    label3.setHorizontalTextPosition(0);
    label3.setMaximumSize(new Dimension(400, 50));
    label3.setMinimumSize(new Dimension(400, 50));
    label3.setPreferredSize(new Dimension(400, 50));
    label3.setText("Return a user's NSID, given their username.");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 0;
    gbc.gridwidth = 3;
    gbc.anchor = GridBagConstraints.NORTH;
    gbc.insets = new Insets(50, 0, 50, 0);
    panel4.add(label3, gbc);
    final JPanel panel5 = new JPanel();
    panel5.setLayout(new GridBagLayout());
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 3;
    gbc.gridwidth = 3;
    gbc.weighty = 1.0;
    gbc.fill = GridBagConstraints.BOTH;
    panel4.add(panel5, gbc);
    findByUsernameInvoke = new JButton();
    findByUsernameInvoke.setFont(new Font(findByUsernameInvoke.getFont().getName(), Font.BOLD,
            findByUsernameInvoke.getFont().getSize()));
    findByUsernameInvoke.setMaximumSize(new Dimension(100, 30));
    findByUsernameInvoke.setMinimumSize(new Dimension(100, 30));
    findByUsernameInvoke.setPreferredSize(new Dimension(100, 30));
    findByUsernameInvoke.setText("Invoke");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 0;
    gbc.weightx = 1.0;
    gbc.insets = new Insets(50, 0, 50, 0);
    panel5.add(findByUsernameInvoke, gbc);
    final JScrollPane scrollPane2 = new JScrollPane();
    scrollPane2.setBackground(new Color(-3355444));
    scrollPane2.setMaximumSize(new Dimension(550, 225));
    scrollPane2.setMinimumSize(new Dimension(550, 225));
    scrollPane2.setPreferredSize(new Dimension(550, 225));
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 1;
    gbc.weightx = 1.0;
    gbc.weighty = 1.0;
    panel5.add(scrollPane2, gbc);
    findByUsernameOutput = new JEditorPane();
    findByUsernameOutput.setBackground(new Color(-3355444));
    findByUsernameOutput.setEditable(false);
    findByUsernameOutput.setForeground(new Color(-16777216));
    findByUsernameOutput.setText("");
    scrollPane2.setViewportView(findByUsernameOutput);
    final JLabel label4 = new JLabel();
    label4.setFont(new Font(label4.getFont().getName(), Font.BOLD, label4.getFont().getSize()));
    label4.setHorizontalAlignment(4);
    label4.setMaximumSize(new Dimension(400, 25));
    label4.setMinimumSize(new Dimension(400, 25));
    label4.setPreferredSize(new Dimension(400, 25));
    label4.setText("Username :");
    label4.setVerifyInputWhenFocusTarget(false);
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 1;
    gbc.anchor = GridBagConstraints.EAST;
    panel4.add(label4, gbc);
    txtPeopleUsername = new JTextField();
    txtPeopleUsername.setMaximumSize(new Dimension(200, 25));
    txtPeopleUsername.setMinimumSize(new Dimension(200, 25));
    txtPeopleUsername.setOpaque(true);
    txtPeopleUsername.setPreferredSize(new Dimension(200, 25));
    gbc = new GridBagConstraints();
    gbc.gridx = 1;
    gbc.gridy = 1;
    gbc.weightx = 1.0;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 100, 0, 0);
    panel4.add(txtPeopleUsername, gbc);
    final JPanel panel6 = new JPanel();
    panel6.setLayout(new GridBagLayout());
    peopleOperationPane.addTab("GetInfo", panel6);
    final JLabel label5 = new JLabel();
    label5.setFont(new Font(label5.getFont().getName(), Font.BOLD, label5.getFont().getSize()));
    label5.setHorizontalAlignment(0);
    label5.setHorizontalTextPosition(0);
    label5.setMaximumSize(new Dimension(400, 50));
    label5.setMinimumSize(new Dimension(400, 50));
    label5.setPreferredSize(new Dimension(400, 50));
    label5.setText("Get information about a user.");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 0;
    gbc.gridwidth = 2;
    gbc.anchor = GridBagConstraints.NORTH;
    gbc.insets = new Insets(50, 0, 50, 0);
    panel6.add(label5, gbc);
    txtUserID = new JLabel();
    txtUserID.setFont(new Font(txtUserID.getFont().getName(), Font.BOLD, txtUserID.getFont().getSize()));
    txtUserID.setHorizontalAlignment(4);
    txtUserID.setMaximumSize(new Dimension(400, 25));
    txtUserID.setMinimumSize(new Dimension(400, 25));
    txtUserID.setPreferredSize(new Dimension(400, 25));
    txtUserID.setText("User ID :");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 1;
    panel6.add(txtUserID, gbc);
    txtPeopleGetInfo = new JTextField();
    txtPeopleGetInfo.setMaximumSize(new Dimension(200, 25));
    txtPeopleGetInfo.setMinimumSize(new Dimension(200, 25));
    txtPeopleGetInfo.setPreferredSize(new Dimension(200, 25));
    gbc = new GridBagConstraints();
    gbc.gridx = 1;
    gbc.gridy = 1;
    gbc.weightx = 1.0;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 100, 0, 0);
    panel6.add(txtPeopleGetInfo, gbc);
    getInfoInvoke = new JButton();
    getInfoInvoke
            .setFont(new Font(getInfoInvoke.getFont().getName(), Font.BOLD, getInfoInvoke.getFont().getSize()));
    getInfoInvoke.setMaximumSize(new Dimension(100, 30));
    getInfoInvoke.setMinimumSize(new Dimension(100, 30));
    getInfoInvoke.setPreferredSize(new Dimension(100, 30));
    getInfoInvoke.setText("Invoke");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 3;
    gbc.gridwidth = 2;
    gbc.insets = new Insets(50, 0, 50, 0);
    panel6.add(getInfoInvoke, gbc);
    final JScrollPane scrollPane3 = new JScrollPane();
    scrollPane3.setHorizontalScrollBarPolicy(30);
    scrollPane3.setMaximumSize(new Dimension(550, 225));
    scrollPane3.setMinimumSize(new Dimension(550, 225));
    scrollPane3.setPreferredSize(new Dimension(550, 225));
    scrollPane3.setVerticalScrollBarPolicy(20);
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 4;
    gbc.gridwidth = 2;
    gbc.weighty = 1.0;
    panel6.add(scrollPane3, gbc);
    getInfoOutput = new JTextArea();
    getInfoOutput.setAutoscrolls(false);
    getInfoOutput.setBackground(new Color(-3355444));
    getInfoOutput.setEditable(false);
    scrollPane3.setViewportView(getInfoOutput);
    final JPanel panel7 = new JPanel();
    panel7.setLayout(new GridBagLayout());
    peopleOperationPane.addTab("GetPublicGroups", panel7);
    final JLabel label6 = new JLabel();
    label6.setFont(new Font(label6.getFont().getName(), Font.BOLD, label6.getFont().getSize()));
    label6.setHorizontalAlignment(0);
    label6.setHorizontalTextPosition(0);
    label6.setMaximumSize(new Dimension(400, 50));
    label6.setMinimumSize(new Dimension(400, 50));
    label6.setPreferredSize(new Dimension(400, 50));
    label6.setText("Returns the list of public groups a user is a member of.");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 0;
    gbc.gridwidth = 2;
    gbc.anchor = GridBagConstraints.NORTH;
    gbc.insets = new Insets(50, 0, 50, 0);
    panel7.add(label6, gbc);
    final JLabel label7 = new JLabel();
    label7.setFont(new Font(label7.getFont().getName(), Font.BOLD, label7.getFont().getSize()));
    label7.setHorizontalAlignment(4);
    label7.setMaximumSize(new Dimension(400, 25));
    label7.setMinimumSize(new Dimension(400, 25));
    label7.setPreferredSize(new Dimension(400, 25));
    label7.setText("User ID :");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 1;
    gbc.anchor = GridBagConstraints.EAST;
    panel7.add(label7, gbc);
    txtGetPublicGroups = new JTextField();
    txtGetPublicGroups.setMaximumSize(new Dimension(200, 25));
    txtGetPublicGroups.setMinimumSize(new Dimension(200, 25));
    txtGetPublicGroups.setPreferredSize(new Dimension(200, 25));
    gbc = new GridBagConstraints();
    gbc.gridx = 1;
    gbc.gridy = 1;
    gbc.weightx = 1.0;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 100, 0, 0);
    panel7.add(txtGetPublicGroups, gbc);
    getPublicGroupsInvoke = new JButton();
    getPublicGroupsInvoke.setFont(new Font(getPublicGroupsInvoke.getFont().getName(), Font.BOLD,
            getPublicGroupsInvoke.getFont().getSize()));
    getPublicGroupsInvoke.setLabel("Invoke");
    getPublicGroupsInvoke.setMaximumSize(new Dimension(100, 30));
    getPublicGroupsInvoke.setMinimumSize(new Dimension(100, 30));
    getPublicGroupsInvoke.setPreferredSize(new Dimension(100, 30));
    getPublicGroupsInvoke.setText("Invoke");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 3;
    gbc.gridwidth = 2;
    gbc.insets = new Insets(50, 0, 50, 0);
    panel7.add(getPublicGroupsInvoke, gbc);
    final JScrollPane scrollPane4 = new JScrollPane();
    scrollPane4.setMaximumSize(new Dimension(550, 225));
    scrollPane4.setMinimumSize(new Dimension(550, 225));
    scrollPane4.setPreferredSize(new Dimension(550, 225));
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 4;
    gbc.gridwidth = 2;
    gbc.weighty = 1.0;
    panel7.add(scrollPane4, gbc);
    getPublicGroupsOutput = new JTextArea();
    getPublicGroupsOutput.setBackground(new Color(-3355444));
    getPublicGroupsOutput.setEditable(false);
    scrollPane4.setViewportView(getPublicGroupsOutput);
    final JPanel panel8 = new JPanel();
    panel8.setLayout(new GridBagLayout());
    peopleOperationPane.addTab("GetPublicPhotos", panel8);
    final JLabel label8 = new JLabel();
    label8.setFont(new Font(label8.getFont().getName(), Font.BOLD, label8.getFont().getSize()));
    label8.setHorizontalAlignment(0);
    label8.setMaximumSize(new Dimension(400, 50));
    label8.setMinimumSize(new Dimension(400, 50));
    label8.setPreferredSize(new Dimension(400, 50));
    label8.setText("Get a list of public photos for the given user.");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 0;
    gbc.gridwidth = 2;
    gbc.anchor = GridBagConstraints.NORTH;
    gbc.insets = new Insets(50, 0, 50, 0);
    panel8.add(label8, gbc);
    final JLabel label9 = new JLabel();
    label9.setFont(new Font(label9.getFont().getName(), Font.BOLD, label9.getFont().getSize()));
    label9.setHorizontalAlignment(4);
    label9.setHorizontalTextPosition(4);
    label9.setMaximumSize(new Dimension(400, 25));
    label9.setMinimumSize(new Dimension(400, 25));
    label9.setPreferredSize(new Dimension(400, 25));
    label9.setText("User ID :");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 1;
    gbc.anchor = GridBagConstraints.EAST;
    panel8.add(label9, gbc);
    txtGetPublicPhotos = new JTextField();
    txtGetPublicPhotos.setMaximumSize(new Dimension(200, 25));
    txtGetPublicPhotos.setMinimumSize(new Dimension(200, 25));
    txtGetPublicPhotos.setPreferredSize(new Dimension(200, 25));
    gbc = new GridBagConstraints();
    gbc.gridx = 1;
    gbc.gridy = 1;
    gbc.weightx = 1.0;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 100, 0, 0);
    panel8.add(txtGetPublicPhotos, gbc);
    getPublicPhotosInvoke = new JButton();
    getPublicPhotosInvoke.setActionCommand("Button");
    getPublicPhotosInvoke.setFont(new Font(getPublicPhotosInvoke.getFont().getName(), Font.BOLD,
            getPublicPhotosInvoke.getFont().getSize()));
    getPublicPhotosInvoke.setMaximumSize(new Dimension(100, 30));
    getPublicPhotosInvoke.setMinimumSize(new Dimension(100, 30));
    getPublicPhotosInvoke.setOpaque(true);
    getPublicPhotosInvoke.setPreferredSize(new Dimension(100, 30));
    getPublicPhotosInvoke.setText("Invoke");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 3;
    gbc.gridwidth = 2;
    gbc.insets = new Insets(50, 0, 50, 0);
    panel8.add(getPublicPhotosInvoke, gbc);
    final JScrollPane scrollPane5 = new JScrollPane();
    scrollPane5.setMaximumSize(new Dimension(550, 225));
    scrollPane5.setMinimumSize(new Dimension(550, 225));
    scrollPane5.setPreferredSize(new Dimension(550, 225));
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 4;
    gbc.gridwidth = 2;
    gbc.weighty = 1.0;
    panel8.add(scrollPane5, gbc);
    getPublicPhotosOutput = new JTextArea();
    getPublicPhotosOutput.setBackground(new Color(-3355444));
    getPublicPhotosOutput.setEditable(false);
    getPublicPhotosOutput.setText("");
    scrollPane5.setViewportView(getPublicPhotosOutput);
    final JPanel panel9 = new JPanel();
    panel9.setLayout(new GridBagLayout());
    peopleOperationPane.addTab("GetUploadStatus", panel9);
    final JLabel label10 = new JLabel();
    label10.setFont(new Font(label10.getFont().getName(), Font.BOLD, label10.getFont().getSize()));
    label10.setHorizontalAlignment(0);
    label10.setMaximumSize(new Dimension(475, 50));
    label10.setMinimumSize(new Dimension(475, 50));
    label10.setPreferredSize(new Dimension(475, 50));
    label10.setText("Returns information for the calling user related to photo uploads.");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 0;
    gbc.gridwidth = 2;
    gbc.anchor = GridBagConstraints.NORTH;
    gbc.insets = new Insets(50, 0, 50, 0);
    panel9.add(label10, gbc);
    getUploadStatusInvoke = new JButton();
    getUploadStatusInvoke.setFont(new Font(getUploadStatusInvoke.getFont().getName(), Font.BOLD,
            getUploadStatusInvoke.getFont().getSize()));
    getUploadStatusInvoke.setMaximumSize(new Dimension(100, 30));
    getUploadStatusInvoke.setMinimumSize(new Dimension(100, 30));
    getUploadStatusInvoke.setPreferredSize(new Dimension(100, 30));
    getUploadStatusInvoke.setText("Invoke");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 3;
    gbc.gridwidth = 2;
    gbc.insets = new Insets(50, 0, 50, 0);
    panel9.add(getUploadStatusInvoke, gbc);
    final JScrollPane scrollPane6 = new JScrollPane();
    scrollPane6.setMaximumSize(new Dimension(550, 225));
    scrollPane6.setMinimumSize(new Dimension(550, 225));
    scrollPane6.setPreferredSize(new Dimension(550, 225));
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 4;
    gbc.gridwidth = 2;
    gbc.weighty = 1.0;
    panel9.add(scrollPane6, gbc);
    getUploadStatusOutput = new JTextArea();
    getUploadStatusOutput.setBackground(new Color(-3355444));
    getUploadStatusOutput.setEditable(false);
    getUploadStatusOutput.setText("");
    scrollPane6.setViewportView(getUploadStatusOutput);

    populateOperationPane();

    final JPanel panel44 = new JPanel();
    panel44.setLayout(new GridBagLayout());
    tabbedPane1.addTab("Activity", panel44);
    activityOperationPane = new JTabbedPane();
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 0;
    gbc.weightx = 1.0;
    gbc.weighty = 1.0;
    gbc.fill = GridBagConstraints.BOTH;
    panel44.add(activityOperationPane, gbc);
    final JPanel panel45 = new JPanel();
    panel45.setLayout(new GridBagLayout());
    activityOperationPane.addTab("UserComments", panel45);
    final JLabel label127 = new JLabel();
    label127.setFont(new Font(label127.getFont().getName(), Font.BOLD, label127.getFont().getSize()));
    label127.setHorizontalAlignment(0);
    label127.setMaximumSize(new Dimension(800, 50));
    label127.setMinimumSize(new Dimension(800, 50));
    label127.setPreferredSize(new Dimension(800, 50));
    label127.setText(
            "Returns a list of recent activity on photos commented on by the calling user. Do not poll this method more than once an hour.");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 0;
    gbc.gridwidth = 2;
    gbc.anchor = GridBagConstraints.NORTH;
    gbc.insets = new Insets(50, 0, 50, 0);
    panel45.add(label127, gbc);
    final JLabel label128 = new JLabel();
    label128.setHorizontalAlignment(4);
    label128.setMaximumSize(new Dimension(400, 25));
    label128.setMinimumSize(new Dimension(400, 25));
    label128.setPreferredSize(new Dimension(400, 25));
    label128.setText("Page       : ");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 1;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 0, 15, 0);
    panel45.add(label128, gbc);
    txtUserCommentsPage = new JTextField();
    txtUserCommentsPage.setMaximumSize(new Dimension(200, 25));
    txtUserCommentsPage.setMinimumSize(new Dimension(200, 25));
    txtUserCommentsPage.setPreferredSize(new Dimension(200, 25));
    gbc = new GridBagConstraints();
    gbc.gridx = 1;
    gbc.gridy = 1;
    gbc.weightx = 1.0;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 100, 15, 0);
    panel45.add(txtUserCommentsPage, gbc);
    final JLabel label129 = new JLabel();
    label129.setHorizontalAlignment(4);
    label129.setMaximumSize(new Dimension(400, 25));
    label129.setMinimumSize(new Dimension(400, 25));
    label129.setPreferredSize(new Dimension(400, 25));
    label129.setText("Per Page : ");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 2;
    gbc.anchor = GridBagConstraints.WEST;
    panel45.add(label129, gbc);
    cmbUserCommentsPerPage = new JComboBox();
    cmbUserCommentsPerPage.setMaximumSize(new Dimension(200, 25));
    cmbUserCommentsPerPage.setMinimumSize(new Dimension(200, 25));
    cmbUserCommentsPerPage.setPreferredSize(new Dimension(200, 25));
    gbc = new GridBagConstraints();
    gbc.gridx = 1;
    gbc.gridy = 2;
    gbc.weightx = 1.0;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 100, 0, 0);
    panel45.add(cmbUserCommentsPerPage, gbc);
    userCommentsInvoke = new JButton();
    userCommentsInvoke.setFont(new Font(userCommentsInvoke.getFont().getName(), Font.BOLD,
            userCommentsInvoke.getFont().getSize()));
    userCommentsInvoke.setMaximumSize(new Dimension(100, 30));
    userCommentsInvoke.setMinimumSize(new Dimension(100, 30));
    userCommentsInvoke.setPreferredSize(new Dimension(100, 30));
    userCommentsInvoke.setText("Invoke");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 3;
    gbc.gridwidth = 2;
    gbc.insets = new Insets(50, 0, 50, 0);
    panel45.add(userCommentsInvoke, gbc);
    final JScrollPane scrollPane31 = new JScrollPane();
    scrollPane31.setMaximumSize(new Dimension(550, 225));
    scrollPane31.setMinimumSize(new Dimension(550, 225));
    scrollPane31.setPreferredSize(new Dimension(550, 225));
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 4;
    gbc.gridwidth = 2;
    gbc.weighty = 1.0;
    panel45.add(scrollPane31, gbc);
    userCommentsOutput = new JTextArea();
    userCommentsOutput.setBackground(new Color(-3355444));
    scrollPane31.setViewportView(userCommentsOutput);
    final JPanel panel46 = new JPanel();
    panel46.setLayout(new GridBagLayout());
    activityOperationPane.addTab("UserPhotos", panel46);
    final JLabel label130 = new JLabel();
    label130.setFont(new Font(label130.getFont().getName(), Font.BOLD, label130.getFont().getSize()));
    label130.setHorizontalAlignment(0);
    label130.setMaximumSize(new Dimension(800, 50));
    label130.setMinimumSize(new Dimension(800, 50));
    label130.setPreferredSize(new Dimension(800, 50));
    label130.setText(
            "Returns a list of recent activity on photos belonging to the calling user. Do not poll this method more than once an hour.");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 0;
    gbc.gridwidth = 2;
    gbc.anchor = GridBagConstraints.NORTH;
    gbc.insets = new Insets(50, 0, 50, 0);
    panel46.add(label130, gbc);
    final JLabel label131 = new JLabel();
    label131.setFont(new Font(label131.getFont().getName(), Font.BOLD, label131.getFont().getSize()));
    label131.setHorizontalAlignment(4);
    label131.setMaximumSize(new Dimension(400, 25));
    label131.setMinimumSize(new Dimension(400, 25));
    label131.setPreferredSize(new Dimension(400, 25));
    label131.setText("TimeFrame : ");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 1;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 0, 15, 0);
    panel46.add(label131, gbc);
    txtUserPhotosTimeFrame = new JTextField();
    txtUserPhotosTimeFrame.setMaximumSize(new Dimension(200, 25));
    txtUserPhotosTimeFrame.setMinimumSize(new Dimension(200, 25));
    txtUserPhotosTimeFrame.setPreferredSize(new Dimension(200, 25));
    gbc = new GridBagConstraints();
    gbc.gridx = 1;
    gbc.gridy = 1;
    gbc.weightx = 1.0;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 100, 15, 0);
    panel46.add(txtUserPhotosTimeFrame, gbc);
    final JLabel label132 = new JLabel();
    label132.setHorizontalAlignment(4);
    label132.setMaximumSize(new Dimension(400, 25));
    label132.setMinimumSize(new Dimension(400, 25));
    label132.setPreferredSize(new Dimension(400, 25));
    label132.setText("Page          : ");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 2;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 0, 15, 0);
    panel46.add(label132, gbc);
    txtUserPhotosPage = new JTextField();
    txtUserPhotosPage.setMaximumSize(new Dimension(200, 25));
    txtUserPhotosPage.setMinimumSize(new Dimension(200, 25));
    txtUserPhotosPage.setPreferredSize(new Dimension(200, 25));
    gbc = new GridBagConstraints();
    gbc.gridx = 1;
    gbc.gridy = 2;
    gbc.weightx = 1.0;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 100, 15, 0);
    panel46.add(txtUserPhotosPage, gbc);
    final JLabel label133 = new JLabel();
    label133.setHorizontalAlignment(4);
    label133.setMaximumSize(new Dimension(400, 25));
    label133.setMinimumSize(new Dimension(400, 25));
    label133.setPreferredSize(new Dimension(400, 25));
    label133.setText("Per Page    : ");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 3;
    gbc.anchor = GridBagConstraints.WEST;
    panel46.add(label133, gbc);
    cmbUserPhotosPerPage = new JComboBox();
    cmbUserPhotosPerPage.setMaximumSize(new Dimension(200, 25));
    cmbUserPhotosPerPage.setMinimumSize(new Dimension(200, 25));
    cmbUserPhotosPerPage.setPreferredSize(new Dimension(200, 25));
    gbc = new GridBagConstraints();
    gbc.gridx = 1;
    gbc.gridy = 3;
    gbc.weightx = 1.0;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 100, 0, 0);
    panel46.add(cmbUserPhotosPerPage, gbc);
    userPhotosInvoke = new JButton();
    userPhotosInvoke.setFont(
            new Font(userPhotosInvoke.getFont().getName(), Font.BOLD, userPhotosInvoke.getFont().getSize()));
    userPhotosInvoke.setMaximumSize(new Dimension(100, 30));
    userPhotosInvoke.setMinimumSize(new Dimension(100, 30));
    userPhotosInvoke.setPreferredSize(new Dimension(100, 30));
    userPhotosInvoke.setText("Invoke");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 4;
    gbc.gridwidth = 2;
    gbc.insets = new Insets(50, 0, 50, 0);
    panel46.add(userPhotosInvoke, gbc);
    final JScrollPane scrollPane32 = new JScrollPane();
    scrollPane32.setMaximumSize(new Dimension(550, 225));
    scrollPane32.setMinimumSize(new Dimension(550, 225));
    scrollPane32.setPreferredSize(new Dimension(550, 225));
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 5;
    gbc.gridwidth = 2;
    gbc.weighty = 1.0;
    panel46.add(scrollPane32, gbc);
    userPhotosOutput = new JTextArea();
    userPhotosOutput.setBackground(new Color(-3355444));
    scrollPane32.setViewportView(userPhotosOutput);
    final JPanel panel47 = new JPanel();
    panel47.setLayout(new GridBagLayout());
    tabbedPane1.addTab("Blogs", panel47);
    blogsOperationPane = new JTabbedPane();
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 0;
    gbc.weightx = 1.0;
    gbc.weighty = 1.0;
    gbc.fill = GridBagConstraints.BOTH;
    panel47.add(blogsOperationPane, gbc);
    final JPanel panel48 = new JPanel();
    panel48.setLayout(new GridBagLayout());
    blogsOperationPane.addTab("GetList", panel48);
    final JLabel label134 = new JLabel();
    label134.setFont(new Font(label134.getFont().getName(), Font.BOLD, label134.getFont().getSize()));
    label134.setHorizontalAlignment(0);
    label134.setHorizontalTextPosition(0);
    label134.setMaximumSize(new Dimension(400, 50));
    label134.setMinimumSize(new Dimension(400, 50));
    label134.setPreferredSize(new Dimension(400, 50));
    label134.setText("Get a list of configured blogs for the calling user.");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 0;
    gbc.gridwidth = 2;
    gbc.anchor = GridBagConstraints.NORTH;
    gbc.insets = new Insets(50, 0, 50, 0);
    panel48.add(label134, gbc);
    final JScrollPane scrollPane33 = new JScrollPane();
    scrollPane33.setBackground(new Color(-3355444));
    scrollPane33.setMaximumSize(new Dimension(550, 225));
    scrollPane33.setMinimumSize(new Dimension(550, 225));
    scrollPane33.setPreferredSize(new Dimension(550, 225));
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 3;
    gbc.gridwidth = 2;
    gbc.weighty = 1.0;
    panel48.add(scrollPane33, gbc);
    blogsGetListOutput = new JTextArea();
    blogsGetListOutput.setBackground(new Color(-3355444));
    blogsGetListOutput.setEditable(false);
    blogsGetListOutput.setText("");
    scrollPane33.setViewportView(blogsGetListOutput);
    blogsGetListInvoke = new JButton();
    blogsGetListInvoke.setFocusCycleRoot(true);
    blogsGetListInvoke.setFont(new Font(blogsGetListInvoke.getFont().getName(), Font.BOLD,
            blogsGetListInvoke.getFont().getSize()));
    blogsGetListInvoke.setMaximumSize(new Dimension(100, 30));
    blogsGetListInvoke.setMinimumSize(new Dimension(100, 30));
    blogsGetListInvoke.setPreferredSize(new Dimension(100, 30));
    blogsGetListInvoke.setText("Invoke");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 2;
    gbc.gridwidth = 2;
    gbc.insets = new Insets(50, 0, 50, 0);
    panel48.add(blogsGetListInvoke, gbc);
    final JPanel panel49 = new JPanel();
    panel49.setLayout(new GridBagLayout());
    blogsOperationPane.addTab("PostPhoto", panel49);
    final JLabel label135 = new JLabel();
    label135.setFont(new Font(label135.getFont().getName(), Font.BOLD, label135.getFont().getSize()));
    label135.setHorizontalAlignment(0);
    label135.setMaximumSize(new Dimension(600, 50));
    label135.setMinimumSize(new Dimension(600, 50));
    label135.setPreferredSize(new Dimension(600, 50));
    label135.setText("Post a photo to a Blog.");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 0;
    gbc.gridwidth = 2;
    gbc.anchor = GridBagConstraints.NORTH;
    gbc.insets = new Insets(25, 0, 25, 0);
    panel49.add(label135, gbc);
    final JLabel label136 = new JLabel();
    label136.setFont(new Font(label136.getFont().getName(), Font.BOLD, label136.getFont().getSize()));
    label136.setHorizontalAlignment(4);
    label136.setMaximumSize(new Dimension(400, 25));
    label136.setMinimumSize(new Dimension(400, 25));
    label136.setPreferredSize(new Dimension(400, 25));
    label136.setText("Blog ID          : ");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 1;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 0, 15, 0);
    panel49.add(label136, gbc);
    txtPostPhotoBlogID = new JTextField();
    txtPostPhotoBlogID.setMaximumSize(new Dimension(200, 25));
    txtPostPhotoBlogID.setMinimumSize(new Dimension(200, 25));
    txtPostPhotoBlogID.setPreferredSize(new Dimension(200, 25));
    gbc = new GridBagConstraints();
    gbc.gridx = 1;
    gbc.gridy = 1;
    gbc.weightx = 1.0;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 100, 15, 0);
    panel49.add(txtPostPhotoBlogID, gbc);
    final JLabel label137 = new JLabel();
    label137.setFont(new Font(label137.getFont().getName(), Font.BOLD, label137.getFont().getSize()));
    label137.setHorizontalAlignment(4);
    label137.setMaximumSize(new Dimension(400, 25));
    label137.setMinimumSize(new Dimension(400, 25));
    label137.setPreferredSize(new Dimension(400, 25));
    label137.setText("Photo ID        : ");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 2;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 0, 15, 0);
    panel49.add(label137, gbc);
    txtPostPhotoPhotoID = new JTextField();
    txtPostPhotoPhotoID.setMaximumSize(new Dimension(200, 25));
    txtPostPhotoPhotoID.setMinimumSize(new Dimension(200, 25));
    txtPostPhotoPhotoID.setPreferredSize(new Dimension(200, 25));
    gbc = new GridBagConstraints();
    gbc.gridx = 1;
    gbc.gridy = 2;
    gbc.weightx = 1.0;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 100, 15, 0);
    panel49.add(txtPostPhotoPhotoID, gbc);
    postPhotoInvoke = new JButton();
    postPhotoInvoke.setFont(
            new Font(postPhotoInvoke.getFont().getName(), Font.BOLD, postPhotoInvoke.getFont().getSize()));
    postPhotoInvoke.setMaximumSize(new Dimension(100, 30));
    postPhotoInvoke.setMinimumSize(new Dimension(100, 30));
    postPhotoInvoke.setPreferredSize(new Dimension(100, 30));
    postPhotoInvoke.setText("Invoke");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 6;
    gbc.gridwidth = 2;
    gbc.insets = new Insets(25, 0, 25, 0);
    panel49.add(postPhotoInvoke, gbc);
    final JScrollPane scrollPane34 = new JScrollPane();
    scrollPane34.setMaximumSize(new Dimension(550, 225));
    scrollPane34.setMinimumSize(new Dimension(550, 225));
    scrollPane34.setPreferredSize(new Dimension(550, 225));
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 7;
    gbc.gridwidth = 2;
    gbc.weighty = 1.0;
    panel49.add(scrollPane34, gbc);
    postPhotoOutput = new JTextArea();
    postPhotoOutput.setBackground(new Color(-3355444));
    scrollPane34.setViewportView(postPhotoOutput);
    txtPostPhotoTitle = new JTextField();
    txtPostPhotoTitle.setMaximumSize(new Dimension(200, 25));
    txtPostPhotoTitle.setMinimumSize(new Dimension(200, 25));
    txtPostPhotoTitle.setPreferredSize(new Dimension(200, 25));
    gbc = new GridBagConstraints();
    gbc.gridx = 1;
    gbc.gridy = 3;
    gbc.weightx = 1.0;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 100, 15, 0);
    panel49.add(txtPostPhotoTitle, gbc);
    final JLabel label138 = new JLabel();
    label138.setFont(new Font(label138.getFont().getName(), Font.BOLD, label138.getFont().getSize()));
    label138.setHorizontalAlignment(4);
    label138.setMaximumSize(new Dimension(400, 25));
    label138.setMinimumSize(new Dimension(400, 25));
    label138.setPreferredSize(new Dimension(400, 25));
    label138.setText("Title               : ");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 3;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 0, 15, 0);
    panel49.add(label138, gbc);
    final JLabel label139 = new JLabel();
    label139.setHorizontalAlignment(4);
    label139.setMaximumSize(new Dimension(400, 25));
    label139.setMinimumSize(new Dimension(400, 25));
    label139.setPreferredSize(new Dimension(400, 25));
    label139.setText("Blog Password : ");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 5;
    gbc.anchor = GridBagConstraints.WEST;
    panel49.add(label139, gbc);
    txtPostPhotoPassword = new JTextField();
    txtPostPhotoPassword.setMaximumSize(new Dimension(200, 25));
    txtPostPhotoPassword.setMinimumSize(new Dimension(200, 25));
    txtPostPhotoPassword.setPreferredSize(new Dimension(200, 25));
    gbc = new GridBagConstraints();
    gbc.gridx = 1;
    gbc.gridy = 5;
    gbc.weightx = 1.0;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 100, 0, 0);
    panel49.add(txtPostPhotoPassword, gbc);
    txtPostPhotoDescription = new JTextField();
    txtPostPhotoDescription.setMaximumSize(new Dimension(200, 25));
    txtPostPhotoDescription.setMinimumSize(new Dimension(200, 25));
    txtPostPhotoDescription.setPreferredSize(new Dimension(200, 25));
    gbc = new GridBagConstraints();
    gbc.gridx = 1;
    gbc.gridy = 4;
    gbc.weightx = 1.0;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 100, 15, 0);
    panel49.add(txtPostPhotoDescription, gbc);
    final JLabel label140 = new JLabel();
    label140.setFont(new Font(label140.getFont().getName(), Font.BOLD, label140.getFont().getSize()));
    label140.setHorizontalAlignment(4);
    label140.setMaximumSize(new Dimension(400, 25));
    label140.setMinimumSize(new Dimension(400, 25));
    label140.setPreferredSize(new Dimension(400, 25));
    label140.setText("Description    : ");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 4;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 0, 15, 0);
    panel49.add(label140, gbc);
    final JPanel panel50 = new JPanel();
    panel50.setLayout(new GridBagLayout());
    tabbedPane1.addTab("PhotoSetsComments", panel50);
    photoSetsCommentsOperationPane = new JTabbedPane();
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 0;
    gbc.weightx = 1.0;
    gbc.weighty = 1.0;
    gbc.fill = GridBagConstraints.BOTH;
    panel50.add(photoSetsCommentsOperationPane, gbc);
    final JPanel panel51 = new JPanel();
    panel51.setLayout(new GridBagLayout());
    photoSetsCommentsOperationPane.addTab("AddComment", panel51);
    final JLabel label141 = new JLabel();
    label141.setFont(new Font(label141.getFont().getName(), Font.BOLD, label141.getFont().getSize()));
    label141.setHorizontalAlignment(4);
    label141.setMaximumSize(new Dimension(400, 25));
    label141.setMinimumSize(new Dimension(400, 25));
    label141.setPreferredSize(new Dimension(400, 25));
    label141.setText("PhotoSet ID : ");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 1;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 0, 25, 0);
    panel51.add(label141, gbc);
    txtPhotoSetsCommAddID = new JTextField();
    txtPhotoSetsCommAddID.setMaximumSize(new Dimension(200, 25));
    txtPhotoSetsCommAddID.setMinimumSize(new Dimension(200, 25));
    txtPhotoSetsCommAddID.setPreferredSize(new Dimension(200, 25));
    gbc = new GridBagConstraints();
    gbc.gridx = 1;
    gbc.gridy = 1;
    gbc.weightx = 1.0;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 100, 25, 0);
    panel51.add(txtPhotoSetsCommAddID, gbc);
    final JLabel label142 = new JLabel();
    label142.setHorizontalAlignment(4);
    label142.setMaximumSize(new Dimension(400, 25));
    label142.setMinimumSize(new Dimension(400, 25));
    label142.setPreferredSize(new Dimension(400, 25));
    label142.setText("Comment      :");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 2;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 0, 25, 0);
    panel51.add(label142, gbc);
    PhotoSetsCommAddComment = new JTextField();
    PhotoSetsCommAddComment.setMaximumSize(new Dimension(200, 25));
    PhotoSetsCommAddComment.setMinimumSize(new Dimension(200, 25));
    PhotoSetsCommAddComment.setPreferredSize(new Dimension(200, 25));
    gbc = new GridBagConstraints();
    gbc.gridx = 1;
    gbc.gridy = 2;
    gbc.weightx = 1.0;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 100, 25, 0);
    panel51.add(PhotoSetsCommAddComment, gbc);
    photoSetsCommAddInvoke = new JButton();
    photoSetsCommAddInvoke.setFont(new Font(photoSetsCommAddInvoke.getFont().getName(), Font.BOLD,
            photoSetsCommAddInvoke.getFont().getSize()));
    photoSetsCommAddInvoke.setLabel("Invoke");
    photoSetsCommAddInvoke.setMaximumSize(new Dimension(100, 30));
    photoSetsCommAddInvoke.setMinimumSize(new Dimension(100, 30));
    photoSetsCommAddInvoke.setPreferredSize(new Dimension(100, 30));
    photoSetsCommAddInvoke.setText("Invoke");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 3;
    gbc.gridwidth = 2;
    gbc.insets = new Insets(25, 0, 50, 0);
    panel51.add(photoSetsCommAddInvoke, gbc);
    final JLabel label143 = new JLabel();
    label143.setFont(new Font(label143.getFont().getName(), Font.BOLD, label143.getFont().getSize()));
    label143.setHorizontalAlignment(0);
    label143.setMaximumSize(new Dimension(600, 50));
    label143.setMinimumSize(new Dimension(600, 50));
    label143.setPreferredSize(new Dimension(600, 50));
    label143.setText("Add a comment to a photoset.");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 0;
    gbc.gridwidth = 2;
    gbc.weightx = 1.0;
    gbc.anchor = GridBagConstraints.NORTH;
    gbc.insets = new Insets(50, 0, 50, 0);
    panel51.add(label143, gbc);
    final JScrollPane scrollPane35 = new JScrollPane();
    scrollPane35.setMaximumSize(new Dimension(550, 225));
    scrollPane35.setMinimumSize(new Dimension(550, 225));
    scrollPane35.setPreferredSize(new Dimension(550, 225));
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 4;
    gbc.gridwidth = 2;
    gbc.weighty = 1.0;
    panel51.add(scrollPane35, gbc);
    photoSetsCommAddOutput = new JTextArea();
    photoSetsCommAddOutput.setBackground(new Color(-3355444));
    scrollPane35.setViewportView(photoSetsCommAddOutput);
    final JPanel panel52 = new JPanel();
    panel52.setLayout(new GridBagLayout());
    photoSetsCommentsOperationPane.addTab("DeleteComment", panel52);
    final JLabel label144 = new JLabel();
    label144.setFont(new Font(label144.getFont().getName(), Font.BOLD, label144.getFont().getSize()));
    label144.setHorizontalAlignment(0);
    label144.setMaximumSize(new Dimension(600, 50));
    label144.setMinimumSize(new Dimension(600, 50));
    label144.setPreferredSize(new Dimension(600, 50));
    label144.setText("Delete a photoset comment as the currently authenticated user.");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 0;
    gbc.gridwidth = 2;
    gbc.insets = new Insets(50, 0, 50, 0);
    panel52.add(label144, gbc);
    final JLabel label145 = new JLabel();
    label145.setFont(new Font(label145.getFont().getName(), Font.BOLD, label145.getFont().getSize()));
    label145.setHorizontalAlignment(4);
    label145.setMaximumSize(new Dimension(400, 25));
    label145.setMinimumSize(new Dimension(400, 25));
    label145.setPreferredSize(new Dimension(400, 25));
    label145.setText("Comment ID : ");
    label145.setVerticalAlignment(0);
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 1;
    gbc.anchor = GridBagConstraints.EAST;
    panel52.add(label145, gbc);
    txtPhotoSetsCommDelID = new JTextField();
    txtPhotoSetsCommDelID.setMaximumSize(new Dimension(200, 25));
    txtPhotoSetsCommDelID.setMinimumSize(new Dimension(200, 25));
    txtPhotoSetsCommDelID.setPreferredSize(new Dimension(200, 25));
    gbc = new GridBagConstraints();
    gbc.gridx = 1;
    gbc.gridy = 1;
    gbc.weightx = 1.0;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 100, 0, 0);
    panel52.add(txtPhotoSetsCommDelID, gbc);
    photoSetsCommDelInvoke = new JButton();
    photoSetsCommDelInvoke.setFont(new Font(photoSetsCommDelInvoke.getFont().getName(), Font.BOLD,
            photoSetsCommDelInvoke.getFont().getSize()));
    photoSetsCommDelInvoke.setMaximumSize(new Dimension(100, 30));
    photoSetsCommDelInvoke.setMinimumSize(new Dimension(100, 30));
    photoSetsCommDelInvoke.setPreferredSize(new Dimension(100, 30));
    photoSetsCommDelInvoke.setText("Invoke");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 2;
    gbc.gridwidth = 2;
    gbc.insets = new Insets(50, 0, 50, 0);
    panel52.add(photoSetsCommDelInvoke, gbc);
    final JScrollPane scrollPane36 = new JScrollPane();
    scrollPane36.setMaximumSize(new Dimension(550, 225));
    scrollPane36.setMinimumSize(new Dimension(550, 225));
    scrollPane36.setPreferredSize(new Dimension(550, 225));
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 3;
    gbc.gridwidth = 2;
    gbc.weightx = 1.0;
    gbc.weighty = 1.0;
    panel52.add(scrollPane36, gbc);
    photoSetsCommDelOutput = new JTextArea();
    photoSetsCommDelOutput.setBackground(new Color(-3355444));
    photoSetsCommDelOutput.setEditable(false);
    scrollPane36.setViewportView(photoSetsCommDelOutput);
    final JPanel panel53 = new JPanel();
    panel53.setLayout(new GridBagLayout());
    photoSetsCommentsOperationPane.addTab("EditComment", panel53);
    final JLabel label146 = new JLabel();
    label146.setFont(new Font(label146.getFont().getName(), Font.BOLD, label146.getFont().getSize()));
    label146.setHorizontalAlignment(4);
    label146.setMaximumSize(new Dimension(400, 25));
    label146.setMinimumSize(new Dimension(400, 25));
    label146.setPreferredSize(new Dimension(400, 25));
    label146.setText("Comment ID : ");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 1;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 0, 25, 0);
    panel53.add(label146, gbc);
    txtPhotoSetsCommEditID = new JTextField();
    txtPhotoSetsCommEditID.setMaximumSize(new Dimension(200, 25));
    txtPhotoSetsCommEditID.setMinimumSize(new Dimension(200, 25));
    txtPhotoSetsCommEditID.setPreferredSize(new Dimension(200, 25));
    gbc = new GridBagConstraints();
    gbc.gridx = 1;
    gbc.gridy = 1;
    gbc.weightx = 1.0;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 100, 25, 0);
    panel53.add(txtPhotoSetsCommEditID, gbc);
    final JLabel label147 = new JLabel();
    label147.setHorizontalAlignment(4);
    label147.setMaximumSize(new Dimension(400, 25));
    label147.setMinimumSize(new Dimension(400, 25));
    label147.setPreferredSize(new Dimension(400, 25));
    label147.setText("Comment        :");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 2;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 0, 25, 0);
    panel53.add(label147, gbc);
    txtPhotoSetsCommEditComment = new JTextField();
    txtPhotoSetsCommEditComment.setMaximumSize(new Dimension(200, 25));
    txtPhotoSetsCommEditComment.setMinimumSize(new Dimension(200, 25));
    txtPhotoSetsCommEditComment.setPreferredSize(new Dimension(200, 25));
    gbc = new GridBagConstraints();
    gbc.gridx = 1;
    gbc.gridy = 2;
    gbc.weightx = 1.0;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 100, 25, 0);
    panel53.add(txtPhotoSetsCommEditComment, gbc);
    photoSetsCommEditInvoke = new JButton();
    photoSetsCommEditInvoke.setFont(new Font(photoSetsCommEditInvoke.getFont().getName(), Font.BOLD,
            photoSetsCommEditInvoke.getFont().getSize()));
    photoSetsCommEditInvoke.setLabel("Invoke");
    photoSetsCommEditInvoke.setMaximumSize(new Dimension(100, 30));
    photoSetsCommEditInvoke.setMinimumSize(new Dimension(100, 30));
    photoSetsCommEditInvoke.setPreferredSize(new Dimension(100, 30));
    photoSetsCommEditInvoke.setText("Invoke");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 3;
    gbc.gridwidth = 2;
    gbc.insets = new Insets(25, 0, 50, 0);
    panel53.add(photoSetsCommEditInvoke, gbc);
    final JLabel label148 = new JLabel();
    label148.setFont(new Font(label148.getFont().getName(), Font.BOLD, label148.getFont().getSize()));
    label148.setHorizontalAlignment(0);
    label148.setMaximumSize(new Dimension(600, 50));
    label148.setMinimumSize(new Dimension(600, 50));
    label148.setPreferredSize(new Dimension(600, 50));
    label148.setText("Edit the text of a comment as the currently authenticated user.");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 0;
    gbc.gridwidth = 2;
    gbc.weightx = 1.0;
    gbc.anchor = GridBagConstraints.NORTH;
    gbc.insets = new Insets(50, 0, 50, 0);
    panel53.add(label148, gbc);
    final JScrollPane scrollPane37 = new JScrollPane();
    scrollPane37.setMaximumSize(new Dimension(550, 225));
    scrollPane37.setMinimumSize(new Dimension(550, 225));
    scrollPane37.setPreferredSize(new Dimension(550, 225));
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 4;
    gbc.gridwidth = 2;
    gbc.weighty = 1.0;
    panel53.add(scrollPane37, gbc);
    PhotoSetsCommEditOutput = new JTextArea();
    PhotoSetsCommEditOutput.setBackground(new Color(-3355444));
    scrollPane37.setViewportView(PhotoSetsCommEditOutput);
    final JPanel panel54 = new JPanel();
    panel54.setLayout(new GridBagLayout());
    photoSetsCommentsOperationPane.addTab("GetList", panel54);
    final JLabel label149 = new JLabel();
    label149.setFont(new Font(label149.getFont().getName(), Font.BOLD, label149.getFont().getSize()));
    label149.setHorizontalAlignment(0);
    label149.setMaximumSize(new Dimension(600, 50));
    label149.setMinimumSize(new Dimension(600, 50));
    label149.setPreferredSize(new Dimension(600, 50));
    label149.setText("Returns the comments for a photoset.");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 0;
    gbc.gridwidth = 2;
    gbc.insets = new Insets(50, 0, 50, 0);
    panel54.add(label149, gbc);
    final JLabel label150 = new JLabel();
    label150.setFont(new Font(label150.getFont().getName(), Font.BOLD, label150.getFont().getSize()));
    label150.setHorizontalAlignment(4);
    label150.setMaximumSize(new Dimension(400, 25));
    label150.setMinimumSize(new Dimension(400, 25));
    label150.setPreferredSize(new Dimension(400, 25));
    label150.setText("PhotoSet ID : ");
    label150.setVerticalAlignment(0);
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 1;
    gbc.anchor = GridBagConstraints.EAST;
    panel54.add(label150, gbc);
    txtPhotoSetsCommGetID = new JTextField();
    txtPhotoSetsCommGetID.setMaximumSize(new Dimension(200, 25));
    txtPhotoSetsCommGetID.setMinimumSize(new Dimension(200, 25));
    txtPhotoSetsCommGetID.setPreferredSize(new Dimension(200, 25));
    gbc = new GridBagConstraints();
    gbc.gridx = 1;
    gbc.gridy = 1;
    gbc.weightx = 1.0;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 100, 0, 0);
    panel54.add(txtPhotoSetsCommGetID, gbc);
    photoSetsCommGetInvoke = new JButton();
    photoSetsCommGetInvoke.setFont(new Font(photoSetsCommGetInvoke.getFont().getName(), Font.BOLD,
            photoSetsCommGetInvoke.getFont().getSize()));
    photoSetsCommGetInvoke.setMaximumSize(new Dimension(100, 30));
    photoSetsCommGetInvoke.setMinimumSize(new Dimension(100, 30));
    photoSetsCommGetInvoke.setPreferredSize(new Dimension(100, 30));
    photoSetsCommGetInvoke.setText("Invoke");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 2;
    gbc.gridwidth = 2;
    gbc.insets = new Insets(50, 0, 50, 0);
    panel54.add(photoSetsCommGetInvoke, gbc);
    final JScrollPane scrollPane38 = new JScrollPane();
    scrollPane38.setMaximumSize(new Dimension(550, 225));
    scrollPane38.setMinimumSize(new Dimension(550, 225));
    scrollPane38.setPreferredSize(new Dimension(550, 225));
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 3;
    gbc.gridwidth = 2;
    gbc.weightx = 1.0;
    gbc.weighty = 1.0;
    panel54.add(scrollPane38, gbc);
    photoSetsCommGetOutput = new JTextArea();
    photoSetsCommGetOutput.setBackground(new Color(-3355444));
    photoSetsCommGetOutput.setEditable(false);
    scrollPane38.setViewportView(photoSetsCommGetOutput);
    final JPanel panel55 = new JPanel();
    panel55.setLayout(new GridBagLayout());
    tabbedPane1.addTab("Contacts", panel55);
    contactsOperationPane = new JTabbedPane();
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 0;
    gbc.weightx = 1.0;
    gbc.weighty = 1.0;
    gbc.fill = GridBagConstraints.BOTH;
    panel55.add(contactsOperationPane, gbc);
    final JPanel panel56 = new JPanel();
    panel56.setLayout(new GridBagLayout());
    contactsOperationPane.addTab("GetList", panel56);
    final JLabel label151 = new JLabel();
    label151.setFont(new Font(label151.getFont().getName(), Font.BOLD, label151.getFont().getSize()));
    label151.setHorizontalAlignment(0);
    label151.setMaximumSize(new Dimension(600, 50));
    label151.setMinimumSize(new Dimension(600, 50));
    label151.setPreferredSize(new Dimension(600, 50));
    label151.setText("Get a list of contacts for the calling user.");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 0;
    gbc.gridwidth = 2;
    gbc.anchor = GridBagConstraints.NORTH;
    gbc.insets = new Insets(50, 0, 50, 0);
    panel56.add(label151, gbc);
    final JLabel label152 = new JLabel();
    label152.setFont(new Font(label152.getFont().getName(), label152.getFont().getStyle(),
            label152.getFont().getSize()));
    label152.setHorizontalAlignment(4);
    label152.setMaximumSize(new Dimension(400, 25));
    label152.setMinimumSize(new Dimension(400, 25));
    label152.setPreferredSize(new Dimension(400, 25));
    label152.setText("Filter       : ");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 1;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 0, 15, 0);
    panel56.add(label152, gbc);
    final JLabel label153 = new JLabel();
    label153.setHorizontalAlignment(4);
    label153.setMaximumSize(new Dimension(400, 25));
    label153.setMinimumSize(new Dimension(400, 25));
    label153.setPreferredSize(new Dimension(400, 25));
    label153.setText("Page       : ");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 2;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 0, 15, 0);
    panel56.add(label153, gbc);
    txtContactsGetPage = new JTextField();
    txtContactsGetPage.setMaximumSize(new Dimension(200, 25));
    txtContactsGetPage.setMinimumSize(new Dimension(200, 25));
    txtContactsGetPage.setPreferredSize(new Dimension(200, 25));
    gbc = new GridBagConstraints();
    gbc.gridx = 1;
    gbc.gridy = 2;
    gbc.weightx = 1.0;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 100, 15, 0);
    panel56.add(txtContactsGetPage, gbc);
    final JLabel label154 = new JLabel();
    label154.setHorizontalAlignment(4);
    label154.setMaximumSize(new Dimension(400, 25));
    label154.setMinimumSize(new Dimension(400, 25));
    label154.setPreferredSize(new Dimension(400, 25));
    label154.setText("Per Page : ");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 3;
    gbc.anchor = GridBagConstraints.WEST;
    panel56.add(label154, gbc);
    cmbContactsGetPerPage = new JComboBox();
    cmbContactsGetPerPage.setMaximumSize(new Dimension(200, 25));
    cmbContactsGetPerPage.setMinimumSize(new Dimension(200, 25));
    cmbContactsGetPerPage.setPreferredSize(new Dimension(200, 25));
    gbc = new GridBagConstraints();
    gbc.gridx = 1;
    gbc.gridy = 3;
    gbc.weightx = 1.0;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 100, 0, 0);
    panel56.add(cmbContactsGetPerPage, gbc);
    contactsGetInvoke = new JButton();
    contactsGetInvoke.setFont(
            new Font(contactsGetInvoke.getFont().getName(), Font.BOLD, contactsGetInvoke.getFont().getSize()));
    contactsGetInvoke.setMaximumSize(new Dimension(100, 30));
    contactsGetInvoke.setMinimumSize(new Dimension(100, 30));
    contactsGetInvoke.setPreferredSize(new Dimension(100, 30));
    contactsGetInvoke.setText("Invoke");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 4;
    gbc.gridwidth = 2;
    gbc.insets = new Insets(50, 0, 50, 0);
    panel56.add(contactsGetInvoke, gbc);
    final JScrollPane scrollPane39 = new JScrollPane();
    scrollPane39.setMaximumSize(new Dimension(550, 225));
    scrollPane39.setMinimumSize(new Dimension(550, 225));
    scrollPane39.setPreferredSize(new Dimension(550, 225));
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 5;
    gbc.gridwidth = 2;
    gbc.weighty = 1.0;
    panel56.add(scrollPane39, gbc);
    contactsGetOutput = new JTextArea();
    contactsGetOutput.setBackground(new Color(-3355444));
    scrollPane39.setViewportView(contactsGetOutput);
    cmbContactsGetFilter = new JComboBox();
    cmbContactsGetFilter.setMaximumSize(new Dimension(200, 25));
    cmbContactsGetFilter.setMinimumSize(new Dimension(200, 25));
    cmbContactsGetFilter.setPreferredSize(new Dimension(200, 25));
    gbc = new GridBagConstraints();
    gbc.gridx = 1;
    gbc.gridy = 1;
    gbc.weightx = 1.0;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 100, 15, 0);
    panel56.add(cmbContactsGetFilter, gbc);
    final JPanel panel57 = new JPanel();
    panel57.setLayout(new GridBagLayout());
    contactsOperationPane.addTab("GetPublicList ", panel57);
    final JLabel label155 = new JLabel();
    label155.setFont(new Font(label155.getFont().getName(), Font.BOLD, label155.getFont().getSize()));
    label155.setHorizontalAlignment(0);
    label155.setMaximumSize(new Dimension(600, 50));
    label155.setMinimumSize(new Dimension(600, 50));
    label155.setPreferredSize(new Dimension(600, 50));
    label155.setText("Get the contact list for a user.");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 0;
    gbc.gridwidth = 2;
    gbc.anchor = GridBagConstraints.NORTH;
    gbc.insets = new Insets(50, 0, 50, 0);
    panel57.add(label155, gbc);
    final JLabel label156 = new JLabel();
    label156.setFont(new Font(label156.getFont().getName(), Font.BOLD, label156.getFont().getSize()));
    label156.setHorizontalAlignment(4);
    label156.setMaximumSize(new Dimension(400, 25));
    label156.setMinimumSize(new Dimension(400, 25));
    label156.setPreferredSize(new Dimension(400, 25));
    label156.setText("User ID    : ");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 1;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 0, 15, 0);
    panel57.add(label156, gbc);
    final JLabel label157 = new JLabel();
    label157.setHorizontalAlignment(4);
    label157.setMaximumSize(new Dimension(400, 25));
    label157.setMinimumSize(new Dimension(400, 25));
    label157.setPreferredSize(new Dimension(400, 25));
    label157.setText("Page       : ");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 2;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 0, 15, 0);
    panel57.add(label157, gbc);
    txtContactsGetPubPage = new JTextField();
    txtContactsGetPubPage.setMaximumSize(new Dimension(200, 25));
    txtContactsGetPubPage.setMinimumSize(new Dimension(200, 25));
    txtContactsGetPubPage.setPreferredSize(new Dimension(200, 25));
    gbc = new GridBagConstraints();
    gbc.gridx = 1;
    gbc.gridy = 2;
    gbc.weightx = 1.0;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 100, 15, 0);
    panel57.add(txtContactsGetPubPage, gbc);
    final JLabel label158 = new JLabel();
    label158.setHorizontalAlignment(4);
    label158.setMaximumSize(new Dimension(400, 25));
    label158.setMinimumSize(new Dimension(400, 25));
    label158.setPreferredSize(new Dimension(400, 25));
    label158.setText("Per Page : ");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 3;
    gbc.anchor = GridBagConstraints.WEST;
    panel57.add(label158, gbc);
    cmbContactsGetPubPerPage = new JComboBox();
    cmbContactsGetPubPerPage.setMaximumSize(new Dimension(200, 25));
    cmbContactsGetPubPerPage.setMinimumSize(new Dimension(200, 25));
    cmbContactsGetPubPerPage.setPreferredSize(new Dimension(200, 25));
    gbc = new GridBagConstraints();
    gbc.gridx = 1;
    gbc.gridy = 3;
    gbc.weightx = 1.0;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 100, 0, 0);
    panel57.add(cmbContactsGetPubPerPage, gbc);
    contactsGetPubInvoke = new JButton();
    contactsGetPubInvoke.setFont(new Font(contactsGetPubInvoke.getFont().getName(), Font.BOLD,
            contactsGetPubInvoke.getFont().getSize()));
    contactsGetPubInvoke.setMaximumSize(new Dimension(100, 30));
    contactsGetPubInvoke.setMinimumSize(new Dimension(100, 30));
    contactsGetPubInvoke.setPreferredSize(new Dimension(100, 30));
    contactsGetPubInvoke.setText("Invoke");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 4;
    gbc.gridwidth = 2;
    gbc.insets = new Insets(50, 0, 50, 0);
    panel57.add(contactsGetPubInvoke, gbc);
    final JScrollPane scrollPane40 = new JScrollPane();
    scrollPane40.setMaximumSize(new Dimension(550, 225));
    scrollPane40.setMinimumSize(new Dimension(550, 225));
    scrollPane40.setPreferredSize(new Dimension(550, 225));
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 5;
    gbc.gridwidth = 2;
    gbc.weighty = 1.0;
    panel57.add(scrollPane40, gbc);
    contactsGetPubOutput = new JTextArea();
    contactsGetPubOutput.setBackground(new Color(-3355444));
    scrollPane40.setViewportView(contactsGetPubOutput);
    txtContactsGetPubID = new JTextField();
    txtContactsGetPubID.setMaximumSize(new Dimension(200, 25));
    txtContactsGetPubID.setMinimumSize(new Dimension(200, 25));
    txtContactsGetPubID.setPreferredSize(new Dimension(200, 25));
    gbc = new GridBagConstraints();
    gbc.gridx = 1;
    gbc.gridy = 1;
    gbc.weightx = 1.0;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 100, 15, 0);
    panel57.add(txtContactsGetPubID, gbc);
    final JPanel panel58 = new JPanel();
    panel58.setLayout(new GridBagLayout());
    tabbedPane1.addTab("Favorites", panel58);
    favoritesOperationPane = new JTabbedPane();
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 0;
    gbc.weightx = 1.0;
    gbc.weighty = 1.0;
    gbc.fill = GridBagConstraints.BOTH;
    panel58.add(favoritesOperationPane, gbc);
    final JPanel panel59 = new JPanel();
    panel59.setLayout(new GridBagLayout());
    favoritesOperationPane.addTab("Add", panel59);
    final JLabel label159 = new JLabel();
    label159.setFont(new Font(label159.getFont().getName(), Font.BOLD, label159.getFont().getSize()));
    label159.setHorizontalAlignment(0);
    label159.setMaximumSize(new Dimension(600, 50));
    label159.setMinimumSize(new Dimension(600, 50));
    label159.setPreferredSize(new Dimension(600, 50));
    label159.setText("Adds a photo to a user's favorites list.");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 0;
    gbc.gridwidth = 2;
    gbc.insets = new Insets(50, 0, 50, 0);
    panel59.add(label159, gbc);
    final JLabel label160 = new JLabel();
    label160.setFont(new Font(label160.getFont().getName(), Font.BOLD, label160.getFont().getSize()));
    label160.setHorizontalAlignment(4);
    label160.setMaximumSize(new Dimension(400, 25));
    label160.setMinimumSize(new Dimension(400, 25));
    label160.setPreferredSize(new Dimension(400, 25));
    label160.setText("Photo ID : ");
    label160.setVerticalAlignment(0);
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 1;
    gbc.anchor = GridBagConstraints.EAST;
    panel59.add(label160, gbc);
    txtFavoritesAddID = new JTextField();
    txtFavoritesAddID.setMaximumSize(new Dimension(200, 25));
    txtFavoritesAddID.setMinimumSize(new Dimension(200, 25));
    txtFavoritesAddID.setPreferredSize(new Dimension(200, 25));
    gbc = new GridBagConstraints();
    gbc.gridx = 1;
    gbc.gridy = 1;
    gbc.weightx = 1.0;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 100, 0, 0);
    panel59.add(txtFavoritesAddID, gbc);
    favoritesAddInvoke = new JButton();
    favoritesAddInvoke.setFont(new Font(favoritesAddInvoke.getFont().getName(), Font.BOLD,
            favoritesAddInvoke.getFont().getSize()));
    favoritesAddInvoke.setMaximumSize(new Dimension(100, 30));
    favoritesAddInvoke.setMinimumSize(new Dimension(100, 30));
    favoritesAddInvoke.setPreferredSize(new Dimension(100, 30));
    favoritesAddInvoke.setText("Invoke");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 2;
    gbc.gridwidth = 2;
    gbc.insets = new Insets(50, 0, 50, 0);
    panel59.add(favoritesAddInvoke, gbc);
    final JScrollPane scrollPane41 = new JScrollPane();
    scrollPane41.setMaximumSize(new Dimension(550, 225));
    scrollPane41.setMinimumSize(new Dimension(550, 225));
    scrollPane41.setPreferredSize(new Dimension(550, 225));
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 3;
    gbc.gridwidth = 2;
    gbc.weightx = 1.0;
    gbc.weighty = 1.0;
    panel59.add(scrollPane41, gbc);
    favoritesAddOutput = new JTextArea();
    favoritesAddOutput.setBackground(new Color(-3355444));
    favoritesAddOutput.setEditable(false);
    scrollPane41.setViewportView(favoritesAddOutput);
    final JPanel panel60 = new JPanel();
    panel60.setLayout(new GridBagLayout());
    favoritesOperationPane.addTab("GetList", panel60);
    final JLabel label161 = new JLabel();
    label161.setFont(new Font(label161.getFont().getName(), Font.BOLD, label161.getFont().getSize()));
    label161.setHorizontalAlignment(0);
    label161.setMaximumSize(new Dimension(800, 50));
    label161.setMinimumSize(new Dimension(800, 50));
    label161.setPreferredSize(new Dimension(800, 50));
    label161.setText(
            "Returns a list of the user's favorite photos. Only photos which the calling user has permission to see are returned.");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 0;
    gbc.gridwidth = 2;
    gbc.anchor = GridBagConstraints.NORTH;
    gbc.insets = new Insets(25, 0, 25, 0);
    panel60.add(label161, gbc);
    txtFavoritesGetPage = new JTextField();
    txtFavoritesGetPage.setMaximumSize(new Dimension(200, 25));
    txtFavoritesGetPage.setMinimumSize(new Dimension(200, 25));
    txtFavoritesGetPage.setPreferredSize(new Dimension(200, 25));
    gbc = new GridBagConstraints();
    gbc.gridx = 1;
    gbc.gridy = 2;
    gbc.weightx = 1.0;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 100, 10, 0);
    panel60.add(txtFavoritesGetPage, gbc);
    final JLabel label162 = new JLabel();
    label162.setHorizontalAlignment(4);
    label162.setMaximumSize(new Dimension(400, 25));
    label162.setMinimumSize(new Dimension(400, 25));
    label162.setPreferredSize(new Dimension(400, 25));
    label162.setText("Per Page : ");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 3;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 0, 10, 0);
    panel60.add(label162, gbc);
    cmbFavoritesGetPerPage = new JComboBox();
    cmbFavoritesGetPerPage.setMaximumSize(new Dimension(200, 25));
    cmbFavoritesGetPerPage.setMinimumSize(new Dimension(200, 25));
    cmbFavoritesGetPerPage.setPreferredSize(new Dimension(200, 25));
    gbc = new GridBagConstraints();
    gbc.gridx = 1;
    gbc.gridy = 3;
    gbc.weightx = 1.0;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 100, 10, 0);
    panel60.add(cmbFavoritesGetPerPage, gbc);
    favoritesGetInvoke = new JButton();
    favoritesGetInvoke.setFont(new Font(favoritesGetInvoke.getFont().getName(), Font.BOLD,
            favoritesGetInvoke.getFont().getSize()));
    favoritesGetInvoke.setMaximumSize(new Dimension(100, 30));
    favoritesGetInvoke.setMinimumSize(new Dimension(100, 30));
    favoritesGetInvoke.setPreferredSize(new Dimension(100, 30));
    favoritesGetInvoke.setText("Invoke");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 5;
    gbc.gridwidth = 2;
    gbc.insets = new Insets(25, 0, 0, 0);
    panel60.add(favoritesGetInvoke, gbc);
    final JPanel panel61 = new JPanel();
    panel61.setLayout(new GridBagLayout());
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 4;
    gbc.gridwidth = 2;
    gbc.fill = GridBagConstraints.BOTH;
    panel60.add(panel61, gbc);
    final JLabel label163 = new JLabel();
    label163.setFont(new Font(label163.getFont().getName(), Font.BOLD, label163.getFont().getSize()));
    label163.setMaximumSize(new Dimension(400, 25));
    label163.setMinimumSize(new Dimension(400, 25));
    label163.setPreferredSize(new Dimension(400, 25));
    label163.setText("Extra information to fetch for each returned record");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 0;
    gbc.gridwidth = 5;
    gbc.weightx = 1.0;
    gbc.weighty = 1.0;
    gbc.insets = new Insets(0, 0, 10, 0);
    panel61.add(label163, gbc);
    chkFavoritesGetLicense = new JCheckBox();
    chkFavoritesGetLicense.setText("license");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 1;
    gbc.weightx = 1.0;
    gbc.weighty = 1.0;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 0, 10, 0);
    panel61.add(chkFavoritesGetLicense, gbc);
    chkFavoritesGetDateUp = new JCheckBox();
    chkFavoritesGetDateUp.setText("date_upload");
    gbc = new GridBagConstraints();
    gbc.gridx = 1;
    gbc.gridy = 1;
    gbc.weightx = 1.0;
    gbc.weighty = 1.0;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 0, 10, 0);
    panel61.add(chkFavoritesGetDateUp, gbc);
    chkFavoritesGetDateTak = new JCheckBox();
    chkFavoritesGetDateTak.setText("date_taken");
    gbc = new GridBagConstraints();
    gbc.gridx = 2;
    gbc.gridy = 1;
    gbc.weightx = 1.0;
    gbc.weighty = 1.0;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 0, 10, 0);
    panel61.add(chkFavoritesGetDateTak, gbc);
    chkFavoritesGetOwner = new JCheckBox();
    chkFavoritesGetOwner.setText("owner_name");
    gbc = new GridBagConstraints();
    gbc.gridx = 3;
    gbc.gridy = 1;
    gbc.weightx = 1.0;
    gbc.weighty = 1.0;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 0, 10, 0);
    panel61.add(chkFavoritesGetOwner, gbc);
    chkFavoritesGetServer = new JCheckBox();
    chkFavoritesGetServer.setText("icon_server");
    gbc = new GridBagConstraints();
    gbc.gridx = 4;
    gbc.gridy = 1;
    gbc.weightx = 1.0;
    gbc.weighty = 1.0;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 0, 10, 0);
    panel61.add(chkFavoritesGetServer, gbc);
    chkFavoritesGetOriginal = new JCheckBox();
    chkFavoritesGetOriginal.setText("original_format");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 2;
    gbc.weightx = 1.0;
    gbc.weighty = 1.0;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 0, 10, 0);
    panel61.add(chkFavoritesGetOriginal, gbc);
    chkFavoritesGetLastUp = new JCheckBox();
    chkFavoritesGetLastUp.setText("last_update");
    gbc = new GridBagConstraints();
    gbc.gridx = 1;
    gbc.gridy = 2;
    gbc.weightx = 1.0;
    gbc.weighty = 1.0;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 0, 10, 0);
    panel61.add(chkFavoritesGetLastUp, gbc);
    chkFavoritesGetGeo = new JCheckBox();
    chkFavoritesGetGeo.setText("geo");
    gbc = new GridBagConstraints();
    gbc.gridx = 2;
    gbc.gridy = 2;
    gbc.weightx = 1.0;
    gbc.weighty = 1.0;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 0, 10, 0);
    panel61.add(chkFavoritesGetGeo, gbc);
    chkFavoritesGetTags = new JCheckBox();
    chkFavoritesGetTags.setText("tags");
    gbc = new GridBagConstraints();
    gbc.gridx = 3;
    gbc.gridy = 2;
    gbc.weightx = 1.0;
    gbc.weighty = 1.0;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 0, 10, 0);
    panel61.add(chkFavoritesGetTags, gbc);
    chkFavoritesGetMachine = new JCheckBox();
    chkFavoritesGetMachine.setText("machine_tags");
    gbc = new GridBagConstraints();
    gbc.gridx = 4;
    gbc.gridy = 2;
    gbc.weightx = 1.0;
    gbc.weighty = 1.0;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 0, 10, 0);
    panel61.add(chkFavoritesGetMachine, gbc);
    final JScrollPane scrollPane42 = new JScrollPane();
    scrollPane42.setMaximumSize(new Dimension(550, 225));
    scrollPane42.setMinimumSize(new Dimension(550, 225));
    scrollPane42.setPreferredSize(new Dimension(550, 225));
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 6;
    gbc.gridwidth = 2;
    gbc.weighty = 1.0;
    panel60.add(scrollPane42, gbc);
    favoritesGetOutput = new JTextArea();
    favoritesGetOutput.setBackground(new Color(-3355444));
    scrollPane42.setViewportView(favoritesGetOutput);
    final JLabel label164 = new JLabel();
    label164.setHorizontalAlignment(4);
    label164.setMaximumSize(new Dimension(400, 25));
    label164.setMinimumSize(new Dimension(400, 25));
    label164.setPreferredSize(new Dimension(400, 25));
    label164.setText("Page       : ");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 2;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 0, 10, 0);
    panel60.add(label164, gbc);
    txtFavoritesGetID = new JTextField();
    txtFavoritesGetID.setMaximumSize(new Dimension(200, 25));
    txtFavoritesGetID.setMinimumSize(new Dimension(200, 25));
    txtFavoritesGetID.setPreferredSize(new Dimension(200, 25));
    gbc = new GridBagConstraints();
    gbc.gridx = 1;
    gbc.gridy = 1;
    gbc.weightx = 1.0;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 100, 10, 0);
    panel60.add(txtFavoritesGetID, gbc);
    final JLabel label165 = new JLabel();
    label165.setHorizontalAlignment(4);
    label165.setMaximumSize(new Dimension(400, 25));
    label165.setMinimumSize(new Dimension(400, 25));
    label165.setPreferredSize(new Dimension(400, 25));
    label165.setText("User ID    : ");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 1;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 0, 10, 0);
    panel60.add(label165, gbc);
    final JPanel panel62 = new JPanel();
    panel62.setLayout(new GridBagLayout());
    favoritesOperationPane.addTab("GetPublicList", panel62);
    final JLabel label166 = new JLabel();
    label166.setFont(new Font(label166.getFont().getName(), Font.BOLD, label166.getFont().getSize()));
    label166.setHorizontalAlignment(0);
    label166.setMaximumSize(new Dimension(800, 50));
    label166.setMinimumSize(new Dimension(800, 50));
    label166.setPreferredSize(new Dimension(800, 50));
    label166.setText("Returns a list of favorite public photos for the given user.");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 0;
    gbc.gridwidth = 2;
    gbc.anchor = GridBagConstraints.NORTH;
    gbc.insets = new Insets(25, 0, 25, 0);
    panel62.add(label166, gbc);
    txtFavoritesGetPubPage = new JTextField();
    txtFavoritesGetPubPage.setMaximumSize(new Dimension(200, 25));
    txtFavoritesGetPubPage.setMinimumSize(new Dimension(200, 25));
    txtFavoritesGetPubPage.setPreferredSize(new Dimension(200, 25));
    gbc = new GridBagConstraints();
    gbc.gridx = 1;
    gbc.gridy = 2;
    gbc.weightx = 1.0;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 100, 10, 0);
    panel62.add(txtFavoritesGetPubPage, gbc);
    final JLabel label167 = new JLabel();
    label167.setHorizontalAlignment(4);
    label167.setMaximumSize(new Dimension(400, 25));
    label167.setMinimumSize(new Dimension(400, 25));
    label167.setPreferredSize(new Dimension(400, 25));
    label167.setText("Per Page : ");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 3;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 0, 10, 0);
    panel62.add(label167, gbc);
    cmbFavoritesGetPubPerPage = new JComboBox();
    cmbFavoritesGetPubPerPage.setMaximumSize(new Dimension(200, 25));
    cmbFavoritesGetPubPerPage.setMinimumSize(new Dimension(200, 25));
    cmbFavoritesGetPubPerPage.setPreferredSize(new Dimension(200, 25));
    gbc = new GridBagConstraints();
    gbc.gridx = 1;
    gbc.gridy = 3;
    gbc.weightx = 1.0;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 100, 10, 0);
    panel62.add(cmbFavoritesGetPubPerPage, gbc);
    favoritesGetPubInvoke = new JButton();
    favoritesGetPubInvoke.setFont(new Font(favoritesGetPubInvoke.getFont().getName(), Font.BOLD,
            favoritesGetPubInvoke.getFont().getSize()));
    favoritesGetPubInvoke.setMaximumSize(new Dimension(100, 30));
    favoritesGetPubInvoke.setMinimumSize(new Dimension(100, 30));
    favoritesGetPubInvoke.setPreferredSize(new Dimension(100, 30));
    favoritesGetPubInvoke.setText("Invoke");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 5;
    gbc.gridwidth = 2;
    gbc.insets = new Insets(25, 0, 0, 0);
    panel62.add(favoritesGetPubInvoke, gbc);
    final JPanel panel63 = new JPanel();
    panel63.setLayout(new GridBagLayout());
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 4;
    gbc.gridwidth = 2;
    gbc.fill = GridBagConstraints.BOTH;
    panel62.add(panel63, gbc);
    final JLabel label168 = new JLabel();
    label168.setFont(new Font(label168.getFont().getName(), Font.BOLD, label168.getFont().getSize()));
    label168.setMaximumSize(new Dimension(400, 25));
    label168.setMinimumSize(new Dimension(400, 25));
    label168.setPreferredSize(new Dimension(400, 25));
    label168.setText("Extra information to fetch for each returned record");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 0;
    gbc.gridwidth = 5;
    gbc.weightx = 1.0;
    gbc.weighty = 1.0;
    gbc.insets = new Insets(0, 0, 10, 0);
    panel63.add(label168, gbc);
    chkFavoritesGetPubLicense = new JCheckBox();
    chkFavoritesGetPubLicense.setText("license");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 1;
    gbc.weightx = 1.0;
    gbc.weighty = 1.0;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 0, 10, 0);
    panel63.add(chkFavoritesGetPubLicense, gbc);
    chkFavoritesGetPubDateUp = new JCheckBox();
    chkFavoritesGetPubDateUp.setText("date_upload");
    gbc = new GridBagConstraints();
    gbc.gridx = 1;
    gbc.gridy = 1;
    gbc.weightx = 1.0;
    gbc.weighty = 1.0;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 0, 10, 0);
    panel63.add(chkFavoritesGetPubDateUp, gbc);
    chkFavoritesGetPubDateTak = new JCheckBox();
    chkFavoritesGetPubDateTak.setText("date_taken");
    gbc = new GridBagConstraints();
    gbc.gridx = 2;
    gbc.gridy = 1;
    gbc.weightx = 1.0;
    gbc.weighty = 1.0;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 0, 10, 0);
    panel63.add(chkFavoritesGetPubDateTak, gbc);
    chkFavoritesGetPubOwner = new JCheckBox();
    chkFavoritesGetPubOwner.setText("owner_name");
    gbc = new GridBagConstraints();
    gbc.gridx = 3;
    gbc.gridy = 1;
    gbc.weightx = 1.0;
    gbc.weighty = 1.0;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 0, 10, 0);
    panel63.add(chkFavoritesGetPubOwner, gbc);
    chkFavoritesGetPubServer = new JCheckBox();
    chkFavoritesGetPubServer.setText("icon_server");
    gbc = new GridBagConstraints();
    gbc.gridx = 4;
    gbc.gridy = 1;
    gbc.weightx = 1.0;
    gbc.weighty = 1.0;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 0, 10, 0);
    panel63.add(chkFavoritesGetPubServer, gbc);
    chkFavoritesGetPubOriginal = new JCheckBox();
    chkFavoritesGetPubOriginal.setText("original_format");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 2;
    gbc.weightx = 1.0;
    gbc.weighty = 1.0;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 0, 10, 0);
    panel63.add(chkFavoritesGetPubOriginal, gbc);
    chkFavoritesGetPubLastUp = new JCheckBox();
    chkFavoritesGetPubLastUp.setText("last_update");
    gbc = new GridBagConstraints();
    gbc.gridx = 1;
    gbc.gridy = 2;
    gbc.weightx = 1.0;
    gbc.weighty = 1.0;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 0, 10, 0);
    panel63.add(chkFavoritesGetPubLastUp, gbc);
    chkFavoritesGetPubGeo = new JCheckBox();
    chkFavoritesGetPubGeo.setText("geo");
    gbc = new GridBagConstraints();
    gbc.gridx = 2;
    gbc.gridy = 2;
    gbc.weightx = 1.0;
    gbc.weighty = 1.0;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 0, 10, 0);
    panel63.add(chkFavoritesGetPubGeo, gbc);
    chkFavoritesGetPubTags = new JCheckBox();
    chkFavoritesGetPubTags.setText("tags");
    gbc = new GridBagConstraints();
    gbc.gridx = 3;
    gbc.gridy = 2;
    gbc.weightx = 1.0;
    gbc.weighty = 1.0;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 0, 10, 0);
    panel63.add(chkFavoritesGetPubTags, gbc);
    chkFavoritesGetPubMachine = new JCheckBox();
    chkFavoritesGetPubMachine.setText("machine_tags");
    gbc = new GridBagConstraints();
    gbc.gridx = 4;
    gbc.gridy = 2;
    gbc.weightx = 1.0;
    gbc.weighty = 1.0;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 0, 10, 0);
    panel63.add(chkFavoritesGetPubMachine, gbc);
    final JScrollPane scrollPane43 = new JScrollPane();
    scrollPane43.setMaximumSize(new Dimension(550, 225));
    scrollPane43.setMinimumSize(new Dimension(550, 225));
    scrollPane43.setPreferredSize(new Dimension(550, 225));
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 6;
    gbc.gridwidth = 2;
    gbc.weighty = 1.0;
    panel62.add(scrollPane43, gbc);
    favoritesGetPubOutput = new JTextArea();
    favoritesGetPubOutput.setBackground(new Color(-3355444));
    scrollPane43.setViewportView(favoritesGetPubOutput);
    final JLabel label169 = new JLabel();
    label169.setHorizontalAlignment(4);
    label169.setMaximumSize(new Dimension(400, 25));
    label169.setMinimumSize(new Dimension(400, 25));
    label169.setPreferredSize(new Dimension(400, 25));
    label169.setText("Page       : ");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 2;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 0, 10, 0);
    panel62.add(label169, gbc);
    txtFavoritesGetPubID = new JTextField();
    txtFavoritesGetPubID.setMaximumSize(new Dimension(200, 25));
    txtFavoritesGetPubID.setMinimumSize(new Dimension(200, 25));
    txtFavoritesGetPubID.setPreferredSize(new Dimension(200, 25));
    gbc = new GridBagConstraints();
    gbc.gridx = 1;
    gbc.gridy = 1;
    gbc.weightx = 1.0;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 100, 10, 0);
    panel62.add(txtFavoritesGetPubID, gbc);
    final JLabel label170 = new JLabel();
    label170.setHorizontalAlignment(4);
    label170.setMaximumSize(new Dimension(400, 25));
    label170.setMinimumSize(new Dimension(400, 25));
    label170.setPreferredSize(new Dimension(400, 25));
    label170.setText("User ID    : ");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 1;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 0, 10, 0);
    panel62.add(label170, gbc);
    final JPanel panel64 = new JPanel();
    panel64.setLayout(new GridBagLayout());
    favoritesOperationPane.addTab("Remove", panel64);
    final JLabel label171 = new JLabel();
    label171.setFont(new Font(label171.getFont().getName(), Font.BOLD, label171.getFont().getSize()));
    label171.setHorizontalAlignment(0);
    label171.setMaximumSize(new Dimension(600, 50));
    label171.setMinimumSize(new Dimension(600, 50));
    label171.setPreferredSize(new Dimension(600, 50));
    label171.setText("Removes a photo from a user's favorites list.");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 0;
    gbc.gridwidth = 2;
    gbc.insets = new Insets(50, 0, 50, 0);
    panel64.add(label171, gbc);
    final JLabel label172 = new JLabel();
    label172.setFont(new Font(label172.getFont().getName(), Font.BOLD, label172.getFont().getSize()));
    label172.setHorizontalAlignment(4);
    label172.setMaximumSize(new Dimension(400, 25));
    label172.setMinimumSize(new Dimension(400, 25));
    label172.setPreferredSize(new Dimension(400, 25));
    label172.setText("Photo ID : ");
    label172.setVerticalAlignment(0);
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 1;
    gbc.anchor = GridBagConstraints.EAST;
    panel64.add(label172, gbc);
    txtFavoritesRmvID = new JTextField();
    txtFavoritesRmvID.setMaximumSize(new Dimension(200, 25));
    txtFavoritesRmvID.setMinimumSize(new Dimension(200, 25));
    txtFavoritesRmvID.setPreferredSize(new Dimension(200, 25));
    gbc = new GridBagConstraints();
    gbc.gridx = 1;
    gbc.gridy = 1;
    gbc.weightx = 1.0;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 100, 0, 0);
    panel64.add(txtFavoritesRmvID, gbc);
    favoritesRmvInvoke = new JButton();
    favoritesRmvInvoke.setFont(new Font(favoritesRmvInvoke.getFont().getName(), Font.BOLD,
            favoritesRmvInvoke.getFont().getSize()));
    favoritesRmvInvoke.setMaximumSize(new Dimension(100, 30));
    favoritesRmvInvoke.setMinimumSize(new Dimension(100, 30));
    favoritesRmvInvoke.setPreferredSize(new Dimension(100, 30));
    favoritesRmvInvoke.setText("Invoke");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 2;
    gbc.gridwidth = 2;
    gbc.insets = new Insets(50, 0, 50, 0);
    panel64.add(favoritesRmvInvoke, gbc);
    final JScrollPane scrollPane44 = new JScrollPane();
    scrollPane44.setMaximumSize(new Dimension(550, 225));
    scrollPane44.setMinimumSize(new Dimension(550, 225));
    scrollPane44.setPreferredSize(new Dimension(550, 225));
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 3;
    gbc.gridwidth = 2;
    gbc.weightx = 1.0;
    gbc.weighty = 1.0;
    panel64.add(scrollPane44, gbc);
    favoritesRmvOutput = new JTextArea();
    favoritesRmvOutput.setBackground(new Color(-3355444));
    favoritesRmvOutput.setEditable(false);
    scrollPane44.setViewportView(favoritesRmvOutput);
    final JPanel panel65 = new JPanel();
    panel65.setLayout(new GridBagLayout());
    tabbedPane1.addTab("Geo", panel65);
    geoOperationPane = new JTabbedPane();
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 0;
    gbc.weightx = 1.0;
    gbc.weighty = 1.0;
    gbc.fill = GridBagConstraints.BOTH;
    panel65.add(geoOperationPane, gbc);
    final JPanel panel66 = new JPanel();
    panel66.setLayout(new GridBagLayout());
    geoOperationPane.addTab("GetLocation ", panel66);
    final JLabel label173 = new JLabel();
    label173.setFont(new Font(label173.getFont().getName(), Font.BOLD, label173.getFont().getSize()));
    label173.setHorizontalAlignment(0);
    label173.setMaximumSize(new Dimension(600, 50));
    label173.setMinimumSize(new Dimension(600, 50));
    label173.setPreferredSize(new Dimension(600, 50));
    label173.setText("Get the geo data (latitude and longitude and the accuracy level) for a photo.");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 0;
    gbc.gridwidth = 2;
    gbc.insets = new Insets(50, 0, 50, 0);
    panel66.add(label173, gbc);
    final JLabel label174 = new JLabel();
    label174.setFont(new Font(label174.getFont().getName(), Font.BOLD, label174.getFont().getSize()));
    label174.setHorizontalAlignment(4);
    label174.setMaximumSize(new Dimension(400, 25));
    label174.setMinimumSize(new Dimension(400, 25));
    label174.setPreferredSize(new Dimension(400, 25));
    label174.setText("Photo ID : ");
    label174.setVerticalAlignment(0);
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 1;
    gbc.anchor = GridBagConstraints.EAST;
    panel66.add(label174, gbc);
    txtGeoGetLocID = new JTextField();
    txtGeoGetLocID.setMaximumSize(new Dimension(200, 25));
    txtGeoGetLocID.setMinimumSize(new Dimension(200, 25));
    txtGeoGetLocID.setPreferredSize(new Dimension(200, 25));
    gbc = new GridBagConstraints();
    gbc.gridx = 1;
    gbc.gridy = 1;
    gbc.weightx = 1.0;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 100, 0, 0);
    panel66.add(txtGeoGetLocID, gbc);
    geoGetLocInvoke = new JButton();
    geoGetLocInvoke.setFont(
            new Font(geoGetLocInvoke.getFont().getName(), Font.BOLD, geoGetLocInvoke.getFont().getSize()));
    geoGetLocInvoke.setMaximumSize(new Dimension(100, 30));
    geoGetLocInvoke.setMinimumSize(new Dimension(100, 30));
    geoGetLocInvoke.setPreferredSize(new Dimension(100, 30));
    geoGetLocInvoke.setText("Invoke");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 2;
    gbc.gridwidth = 2;
    gbc.insets = new Insets(50, 0, 50, 0);
    panel66.add(geoGetLocInvoke, gbc);
    final JScrollPane scrollPane45 = new JScrollPane();
    scrollPane45.setMaximumSize(new Dimension(550, 225));
    scrollPane45.setMinimumSize(new Dimension(550, 225));
    scrollPane45.setPreferredSize(new Dimension(550, 225));
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 3;
    gbc.gridwidth = 2;
    gbc.weightx = 1.0;
    gbc.weighty = 1.0;
    panel66.add(scrollPane45, gbc);
    geoGetLocOutput = new JTextArea();
    geoGetLocOutput.setBackground(new Color(-3355444));
    geoGetLocOutput.setEditable(false);
    scrollPane45.setViewportView(geoGetLocOutput);
    final JPanel panel67 = new JPanel();
    panel67.setLayout(new GridBagLayout());
    geoOperationPane.addTab("GetPerms", panel67);
    final JLabel label175 = new JLabel();
    label175.setFont(new Font(label175.getFont().getName(), Font.BOLD, label175.getFont().getSize()));
    label175.setHorizontalAlignment(0);
    label175.setMaximumSize(new Dimension(600, 50));
    label175.setMinimumSize(new Dimension(600, 50));
    label175.setPreferredSize(new Dimension(600, 50));
    label175.setText("Get permissions for who may view geo data for a photo.");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 0;
    gbc.gridwidth = 2;
    gbc.insets = new Insets(50, 0, 50, 0);
    panel67.add(label175, gbc);
    final JLabel label176 = new JLabel();
    label176.setFont(new Font(label176.getFont().getName(), Font.BOLD, label176.getFont().getSize()));
    label176.setHorizontalAlignment(4);
    label176.setMaximumSize(new Dimension(400, 25));
    label176.setMinimumSize(new Dimension(400, 25));
    label176.setPreferredSize(new Dimension(400, 25));
    label176.setText("Photo ID : ");
    label176.setVerticalAlignment(0);
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 1;
    gbc.anchor = GridBagConstraints.EAST;
    panel67.add(label176, gbc);
    txtGeoGetPermsID = new JTextField();
    txtGeoGetPermsID.setMaximumSize(new Dimension(200, 25));
    txtGeoGetPermsID.setMinimumSize(new Dimension(200, 25));
    txtGeoGetPermsID.setPreferredSize(new Dimension(200, 25));
    gbc = new GridBagConstraints();
    gbc.gridx = 1;
    gbc.gridy = 1;
    gbc.weightx = 1.0;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 100, 0, 0);
    panel67.add(txtGeoGetPermsID, gbc);
    geoGetPermsInvoke = new JButton();
    geoGetPermsInvoke.setFont(
            new Font(geoGetPermsInvoke.getFont().getName(), Font.BOLD, geoGetPermsInvoke.getFont().getSize()));
    geoGetPermsInvoke.setMaximumSize(new Dimension(100, 30));
    geoGetPermsInvoke.setMinimumSize(new Dimension(100, 30));
    geoGetPermsInvoke.setPreferredSize(new Dimension(100, 30));
    geoGetPermsInvoke.setText("Invoke");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 2;
    gbc.gridwidth = 2;
    gbc.insets = new Insets(50, 0, 50, 0);
    panel67.add(geoGetPermsInvoke, gbc);
    final JScrollPane scrollPane46 = new JScrollPane();
    scrollPane46.setMaximumSize(new Dimension(550, 225));
    scrollPane46.setMinimumSize(new Dimension(550, 225));
    scrollPane46.setPreferredSize(new Dimension(550, 225));
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 3;
    gbc.gridwidth = 2;
    gbc.weightx = 1.0;
    gbc.weighty = 1.0;
    panel67.add(scrollPane46, gbc);
    geoGetPermsOutput = new JTextArea();
    geoGetPermsOutput.setBackground(new Color(-3355444));
    geoGetPermsOutput.setEditable(false);
    scrollPane46.setViewportView(geoGetPermsOutput);
    final JPanel panel68 = new JPanel();
    panel68.setLayout(new GridBagLayout());
    geoOperationPane.addTab("RemoveLocation", panel68);
    final JLabel label177 = new JLabel();
    label177.setFont(new Font(label177.getFont().getName(), Font.BOLD, label177.getFont().getSize()));
    label177.setHorizontalAlignment(0);
    label177.setMaximumSize(new Dimension(600, 50));
    label177.setMinimumSize(new Dimension(600, 50));
    label177.setPreferredSize(new Dimension(600, 50));
    label177.setText("Removes the geo data associated with a photo.");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 0;
    gbc.gridwidth = 2;
    gbc.insets = new Insets(50, 0, 50, 0);
    panel68.add(label177, gbc);
    final JLabel label178 = new JLabel();
    label178.setFont(new Font(label178.getFont().getName(), Font.BOLD, label178.getFont().getSize()));
    label178.setHorizontalAlignment(4);
    label178.setMaximumSize(new Dimension(400, 25));
    label178.setMinimumSize(new Dimension(400, 25));
    label178.setPreferredSize(new Dimension(400, 25));
    label178.setText("Photo ID : ");
    label178.setVerticalAlignment(0);
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 1;
    gbc.anchor = GridBagConstraints.EAST;
    panel68.add(label178, gbc);
    txtGeoRmvLocID = new JTextField();
    txtGeoRmvLocID.setMaximumSize(new Dimension(200, 25));
    txtGeoRmvLocID.setMinimumSize(new Dimension(200, 25));
    txtGeoRmvLocID.setPreferredSize(new Dimension(200, 25));
    gbc = new GridBagConstraints();
    gbc.gridx = 1;
    gbc.gridy = 1;
    gbc.weightx = 1.0;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 100, 0, 0);
    panel68.add(txtGeoRmvLocID, gbc);
    geoRmvLocInvoke = new JButton();
    geoRmvLocInvoke.setFont(
            new Font(geoRmvLocInvoke.getFont().getName(), Font.BOLD, geoRmvLocInvoke.getFont().getSize()));
    geoRmvLocInvoke.setMaximumSize(new Dimension(100, 30));
    geoRmvLocInvoke.setMinimumSize(new Dimension(100, 30));
    geoRmvLocInvoke.setPreferredSize(new Dimension(100, 30));
    geoRmvLocInvoke.setText("Invoke");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 2;
    gbc.gridwidth = 2;
    gbc.insets = new Insets(50, 0, 50, 0);
    panel68.add(geoRmvLocInvoke, gbc);
    final JScrollPane scrollPane47 = new JScrollPane();
    scrollPane47.setMaximumSize(new Dimension(550, 225));
    scrollPane47.setMinimumSize(new Dimension(550, 225));
    scrollPane47.setPreferredSize(new Dimension(550, 225));
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 3;
    gbc.gridwidth = 2;
    gbc.weightx = 1.0;
    gbc.weighty = 1.0;
    panel68.add(scrollPane47, gbc);
    geoRmvLocOutput = new JTextArea();
    geoRmvLocOutput.setBackground(new Color(-3355444));
    geoRmvLocOutput.setEditable(false);
    scrollPane47.setViewportView(geoRmvLocOutput);
    final JPanel panel69 = new JPanel();
    panel69.setLayout(new GridBagLayout());
    geoOperationPane.addTab("SetLocation", panel69);
    final JLabel label179 = new JLabel();
    label179.setFont(new Font(label179.getFont().getName(), Font.BOLD, label179.getFont().getSize()));
    label179.setHorizontalAlignment(0);
    label179.setMaximumSize(new Dimension(600, 50));
    label179.setMinimumSize(new Dimension(600, 50));
    label179.setPreferredSize(new Dimension(600, 50));
    label179.setText(
            "Sets the geo data (latitude and longitude and, optionally, the accuracy level) for a photo.");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 0;
    gbc.gridwidth = 2;
    gbc.anchor = GridBagConstraints.NORTH;
    gbc.insets = new Insets(50, 0, 50, 0);
    panel69.add(label179, gbc);
    final JLabel label180 = new JLabel();
    label180.setFont(new Font(label180.getFont().getName(), Font.BOLD, label180.getFont().getSize()));
    label180.setHorizontalAlignment(4);
    label180.setMaximumSize(new Dimension(400, 25));
    label180.setMinimumSize(new Dimension(400, 25));
    label180.setPreferredSize(new Dimension(400, 25));
    label180.setText("Latitude    : ");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 2;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 0, 15, 0);
    panel69.add(label180, gbc);
    final JLabel label181 = new JLabel();
    label181.setHorizontalAlignment(4);
    label181.setMaximumSize(new Dimension(400, 25));
    label181.setMinimumSize(new Dimension(400, 25));
    label181.setPreferredSize(new Dimension(400, 25));
    label181.setText("Accuracy   : ");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 4;
    gbc.anchor = GridBagConstraints.WEST;
    panel69.add(label181, gbc);
    cmbGeoSetLocAccuracy = new JComboBox();
    cmbGeoSetLocAccuracy.setMaximumSize(new Dimension(200, 25));
    cmbGeoSetLocAccuracy.setMinimumSize(new Dimension(200, 25));
    cmbGeoSetLocAccuracy.setPreferredSize(new Dimension(200, 25));
    gbc = new GridBagConstraints();
    gbc.gridx = 1;
    gbc.gridy = 4;
    gbc.weightx = 1.0;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 100, 0, 0);
    panel69.add(cmbGeoSetLocAccuracy, gbc);
    geoSetLocInvoke = new JButton();
    geoSetLocInvoke.setFont(
            new Font(geoSetLocInvoke.getFont().getName(), Font.BOLD, geoSetLocInvoke.getFont().getSize()));
    geoSetLocInvoke.setMaximumSize(new Dimension(100, 30));
    geoSetLocInvoke.setMinimumSize(new Dimension(100, 30));
    geoSetLocInvoke.setPreferredSize(new Dimension(100, 30));
    geoSetLocInvoke.setText("Invoke");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 5;
    gbc.gridwidth = 2;
    gbc.insets = new Insets(25, 0, 25, 0);
    panel69.add(geoSetLocInvoke, gbc);
    final JScrollPane scrollPane48 = new JScrollPane();
    scrollPane48.setMaximumSize(new Dimension(550, 225));
    scrollPane48.setMinimumSize(new Dimension(550, 225));
    scrollPane48.setPreferredSize(new Dimension(550, 225));
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 6;
    gbc.gridwidth = 2;
    gbc.weighty = 1.0;
    panel69.add(scrollPane48, gbc);
    geoSetLocOutput = new JTextArea();
    geoSetLocOutput.setBackground(new Color(-3355444));
    scrollPane48.setViewportView(geoSetLocOutput);
    cmbGeoSetLocLatitude = new JComboBox();
    cmbGeoSetLocLatitude.setMaximumSize(new Dimension(200, 25));
    cmbGeoSetLocLatitude.setMinimumSize(new Dimension(200, 25));
    final DefaultComboBoxModel defaultComboBoxModel14 = new DefaultComboBoxModel();
    cmbGeoSetLocLatitude.setModel(defaultComboBoxModel14);
    cmbGeoSetLocLatitude.setPreferredSize(new Dimension(200, 25));
    gbc = new GridBagConstraints();
    gbc.gridx = 1;
    gbc.gridy = 2;
    gbc.weightx = 1.0;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 100, 15, 0);
    panel69.add(cmbGeoSetLocLatitude, gbc);
    final JLabel label182 = new JLabel();
    label182.setFont(new Font(label182.getFont().getName(), Font.BOLD, label182.getFont().getSize()));
    label182.setHorizontalAlignment(4);
    label182.setMaximumSize(new Dimension(400, 25));
    label182.setMinimumSize(new Dimension(400, 25));
    label182.setPreferredSize(new Dimension(400, 25));
    label182.setText("Longitude : ");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 3;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 0, 15, 0);
    panel69.add(label182, gbc);
    cmbGeoSetLocLongitude = new JComboBox();
    cmbGeoSetLocLongitude.setMaximumSize(new Dimension(200, 25));
    cmbGeoSetLocLongitude.setMinimumSize(new Dimension(200, 25));
    final DefaultComboBoxModel defaultComboBoxModel15 = new DefaultComboBoxModel();
    cmbGeoSetLocLongitude.setModel(defaultComboBoxModel15);
    cmbGeoSetLocLongitude.setPreferredSize(new Dimension(200, 25));
    gbc = new GridBagConstraints();
    gbc.gridx = 1;
    gbc.gridy = 3;
    gbc.weightx = 1.0;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 100, 15, 0);
    panel69.add(cmbGeoSetLocLongitude, gbc);
    final JLabel label183 = new JLabel();
    label183.setFont(new Font(label183.getFont().getName(), Font.BOLD, label183.getFont().getSize()));
    label183.setHorizontalAlignment(4);
    label183.setMaximumSize(new Dimension(400, 25));
    label183.setMinimumSize(new Dimension(400, 25));
    label183.setPreferredSize(new Dimension(400, 25));
    label183.setText("Photo ID    : ");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 1;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 0, 15, 0);
    panel69.add(label183, gbc);
    txtGeoSetLocID = new JTextField();
    txtGeoSetLocID.setMaximumSize(new Dimension(200, 25));
    txtGeoSetLocID.setMinimumSize(new Dimension(200, 25));
    txtGeoSetLocID.setPreferredSize(new Dimension(200, 25));
    gbc = new GridBagConstraints();
    gbc.gridx = 1;
    gbc.gridy = 1;
    gbc.weightx = 1.0;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 100, 15, 0);
    panel69.add(txtGeoSetLocID, gbc);
    final JPanel panel70 = new JPanel();
    panel70.setLayout(new GridBagLayout());
    geoOperationPane.addTab("SetPerms", panel70);
    final JLabel label184 = new JLabel();
    label184.setFont(new Font(label184.getFont().getName(), Font.BOLD, label184.getFont().getSize()));
    label184.setHorizontalAlignment(0);
    label184.setMaximumSize(new Dimension(600, 50));
    label184.setMinimumSize(new Dimension(600, 50));
    label184.setPreferredSize(new Dimension(600, 50));
    label184.setText("Set the permission for who may view the geo data associated with a photo.");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 0;
    gbc.gridwidth = 4;
    gbc.anchor = GridBagConstraints.NORTH;
    gbc.insets = new Insets(25, 0, 25, 0);
    panel70.add(label184, gbc);
    final JLabel label185 = new JLabel();
    label185.setFont(new Font(label185.getFont().getName(), Font.BOLD, label185.getFont().getSize()));
    label185.setHorizontalAlignment(4);
    label185.setMaximumSize(new Dimension(400, 25));
    label185.setMinimumSize(new Dimension(400, 25));
    label185.setPreferredSize(new Dimension(400, 25));
    label185.setText("Photo ID : ");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 1;
    gbc.gridwidth = 2;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 0, 10, 0);
    panel70.add(label185, gbc);
    chkGeoSetPermsPublic = new JCheckBox();
    chkGeoSetPermsPublic.setFont(new Font(chkGeoSetPermsPublic.getFont().getName(), Font.BOLD,
            chkGeoSetPermsPublic.getFont().getSize()));
    chkGeoSetPermsPublic.setHorizontalAlignment(4);
    chkGeoSetPermsPublic.setMaximumSize(new Dimension(300, 25));
    chkGeoSetPermsPublic.setMinimumSize(new Dimension(300, 25));
    chkGeoSetPermsPublic.setPreferredSize(new Dimension(300, 25));
    chkGeoSetPermsPublic.setText("Is Public   ");
    gbc = new GridBagConstraints();
    gbc.gridx = 1;
    gbc.gridy = 2;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 0, 10, 0);
    panel70.add(chkGeoSetPermsPublic, gbc);
    chkGeoSetPermsFriend = new JCheckBox();
    chkGeoSetPermsFriend.setFont(new Font(chkGeoSetPermsFriend.getFont().getName(), Font.BOLD,
            chkGeoSetPermsFriend.getFont().getSize()));
    chkGeoSetPermsFriend.setMaximumSize(new Dimension(200, 25));
    chkGeoSetPermsFriend.setMinimumSize(new Dimension(200, 25));
    chkGeoSetPermsFriend.setPreferredSize(new Dimension(200, 25));
    chkGeoSetPermsFriend.setText("Is Friend");
    gbc = new GridBagConstraints();
    gbc.gridx = 2;
    gbc.gridy = 2;
    gbc.weightx = 1.0;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 100, 10, 0);
    panel70.add(chkGeoSetPermsFriend, gbc);
    final JScrollPane scrollPane49 = new JScrollPane();
    scrollPane49.setMaximumSize(new Dimension(550, 225));
    scrollPane49.setMinimumSize(new Dimension(550, 225));
    scrollPane49.setPreferredSize(new Dimension(550, 225));
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 5;
    gbc.gridwidth = 4;
    gbc.weighty = 1.0;
    panel70.add(scrollPane49, gbc);
    geoSetPermsOutput = new JTextArea();
    geoSetPermsOutput.setBackground(new Color(-3355444));
    scrollPane49.setViewportView(geoSetPermsOutput);
    geoSetPermsInvoke = new JButton();
    geoSetPermsInvoke.setFont(
            new Font(geoSetPermsInvoke.getFont().getName(), Font.BOLD, geoSetPermsInvoke.getFont().getSize()));
    geoSetPermsInvoke.setLabel("Invoke");
    geoSetPermsInvoke.setMaximumSize(new Dimension(100, 30));
    geoSetPermsInvoke.setMinimumSize(new Dimension(100, 30));
    geoSetPermsInvoke.setPreferredSize(new Dimension(100, 30));
    geoSetPermsInvoke.setText("Invoke");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 4;
    gbc.gridwidth = 4;
    gbc.insets = new Insets(10, 0, 0, 0);
    panel70.add(geoSetPermsInvoke, gbc);
    chkGeoSetPermsContact = new JCheckBox();
    chkGeoSetPermsContact.setFont(new Font(chkGeoSetPermsContact.getFont().getName(), Font.BOLD,
            chkGeoSetPermsContact.getFont().getSize()));
    chkGeoSetPermsContact.setHorizontalAlignment(4);
    chkGeoSetPermsContact.setLabel("Is Contact");
    chkGeoSetPermsContact.setMaximumSize(new Dimension(300, 25));
    chkGeoSetPermsContact.setMinimumSize(new Dimension(300, 25));
    chkGeoSetPermsContact.setPreferredSize(new Dimension(300, 25));
    chkGeoSetPermsContact.setText("Is Contact");
    gbc = new GridBagConstraints();
    gbc.gridx = 1;
    gbc.gridy = 3;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 0, 10, 0);
    panel70.add(chkGeoSetPermsContact, gbc);
    txtGeoSetPermsID = new JTextField();
    txtGeoSetPermsID.setMaximumSize(new Dimension(200, 25));
    txtGeoSetPermsID.setMinimumSize(new Dimension(200, 25));
    txtGeoSetPermsID.setPreferredSize(new Dimension(200, 25));
    gbc = new GridBagConstraints();
    gbc.gridx = 2;
    gbc.gridy = 1;
    gbc.weightx = 1.0;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 100, 10, 0);
    panel70.add(txtGeoSetPermsID, gbc);
    chkGeoSetPermsFamily = new JCheckBox();
    chkGeoSetPermsFamily.setFont(new Font(chkGeoSetPermsFamily.getFont().getName(), Font.BOLD,
            chkGeoSetPermsFamily.getFont().getSize()));
    chkGeoSetPermsFamily.setMaximumSize(new Dimension(200, 25));
    chkGeoSetPermsFamily.setMinimumSize(new Dimension(200, 25));
    chkGeoSetPermsFamily.setPreferredSize(new Dimension(200, 25));
    chkGeoSetPermsFamily.setText("Is Family");
    gbc = new GridBagConstraints();
    gbc.gridx = 2;
    gbc.gridy = 3;
    gbc.weightx = 1.0;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 100, 10, 0);
    panel70.add(chkGeoSetPermsFamily, gbc);
    final JPanel panel71 = new JPanel();
    panel71.setLayout(new GridBagLayout());
    tabbedPane1.addTab("Groups", panel71);
    groupsOperationPane = new JTabbedPane();
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 0;
    gbc.weightx = 1.0;
    gbc.weighty = 1.0;
    gbc.fill = GridBagConstraints.BOTH;
    panel71.add(groupsOperationPane, gbc);
    final JPanel panel72 = new JPanel();
    panel72.setLayout(new GridBagLayout());
    groupsOperationPane.addTab("Browse", panel72);
    final JLabel label186 = new JLabel();
    label186.setFont(new Font(label186.getFont().getName(), Font.BOLD, label186.getFont().getSize()));
    label186.setHorizontalAlignment(0);
    label186.setMaximumSize(new Dimension(600, 50));
    label186.setMinimumSize(new Dimension(600, 50));
    label186.setPreferredSize(new Dimension(600, 50));
    label186.setText("Browse the group category tree, finding groups and sub-categories.");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 0;
    gbc.gridwidth = 2;
    gbc.insets = new Insets(50, 0, 50, 0);
    panel72.add(label186, gbc);
    final JLabel label187 = new JLabel();
    label187.setFont(new Font(label187.getFont().getName(), Font.BOLD, label187.getFont().getSize()));
    label187.setHorizontalAlignment(4);
    label187.setMaximumSize(new Dimension(400, 25));
    label187.setMinimumSize(new Dimension(400, 25));
    label187.setPreferredSize(new Dimension(400, 25));
    label187.setText("Category ID : ");
    label187.setVerticalAlignment(0);
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 1;
    gbc.anchor = GridBagConstraints.EAST;
    panel72.add(label187, gbc);
    txtGroupsBrowseID = new JTextField();
    txtGroupsBrowseID.setMaximumSize(new Dimension(200, 25));
    txtGroupsBrowseID.setMinimumSize(new Dimension(200, 25));
    txtGroupsBrowseID.setPreferredSize(new Dimension(200, 25));
    gbc = new GridBagConstraints();
    gbc.gridx = 1;
    gbc.gridy = 1;
    gbc.weightx = 1.0;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 100, 0, 0);
    panel72.add(txtGroupsBrowseID, gbc);
    groupsBrowseInvoke = new JButton();
    groupsBrowseInvoke.setFont(new Font(groupsBrowseInvoke.getFont().getName(), Font.BOLD,
            groupsBrowseInvoke.getFont().getSize()));
    groupsBrowseInvoke.setMaximumSize(new Dimension(100, 30));
    groupsBrowseInvoke.setMinimumSize(new Dimension(100, 30));
    groupsBrowseInvoke.setPreferredSize(new Dimension(100, 30));
    groupsBrowseInvoke.setText("Invoke");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 2;
    gbc.gridwidth = 2;
    gbc.insets = new Insets(50, 0, 50, 0);
    panel72.add(groupsBrowseInvoke, gbc);
    final JScrollPane scrollPane50 = new JScrollPane();
    scrollPane50.setMaximumSize(new Dimension(550, 225));
    scrollPane50.setMinimumSize(new Dimension(550, 225));
    scrollPane50.setPreferredSize(new Dimension(550, 225));
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 3;
    gbc.gridwidth = 2;
    gbc.weightx = 1.0;
    gbc.weighty = 1.0;
    panel72.add(scrollPane50, gbc);
    groupsBrowseOutput = new JTextArea();
    groupsBrowseOutput.setBackground(new Color(-3355444));
    groupsBrowseOutput.setEditable(false);
    scrollPane50.setViewportView(groupsBrowseOutput);
    final JPanel panel73 = new JPanel();
    panel73.setLayout(new GridBagLayout());
    groupsOperationPane.addTab("GetInfo", panel73);
    final JLabel label188 = new JLabel();
    label188.setFont(new Font(label188.getFont().getName(), Font.BOLD, label188.getFont().getSize()));
    label188.setHorizontalAlignment(0);
    label188.setMaximumSize(new Dimension(600, 50));
    label188.setMinimumSize(new Dimension(600, 50));
    label188.setPreferredSize(new Dimension(600, 50));
    label188.setText("Get information about a group.");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 0;
    gbc.gridwidth = 2;
    gbc.insets = new Insets(50, 0, 50, 0);
    panel73.add(label188, gbc);
    final JLabel label189 = new JLabel();
    label189.setFont(new Font(label189.getFont().getName(), Font.BOLD, label189.getFont().getSize()));
    label189.setHorizontalAlignment(4);
    label189.setMaximumSize(new Dimension(400, 25));
    label189.setMinimumSize(new Dimension(400, 25));
    label189.setPreferredSize(new Dimension(400, 25));
    label189.setText("Group ID : ");
    label189.setVerticalAlignment(0);
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 1;
    gbc.anchor = GridBagConstraints.EAST;
    panel73.add(label189, gbc);
    txtGroupsGetInfoID = new JTextField();
    txtGroupsGetInfoID.setMaximumSize(new Dimension(200, 25));
    txtGroupsGetInfoID.setMinimumSize(new Dimension(200, 25));
    txtGroupsGetInfoID.setPreferredSize(new Dimension(200, 25));
    gbc = new GridBagConstraints();
    gbc.gridx = 1;
    gbc.gridy = 1;
    gbc.weightx = 1.0;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 100, 0, 0);
    panel73.add(txtGroupsGetInfoID, gbc);
    groupsGetInfoInvoke = new JButton();
    groupsGetInfoInvoke.setFont(new Font(groupsGetInfoInvoke.getFont().getName(), Font.BOLD,
            groupsGetInfoInvoke.getFont().getSize()));
    groupsGetInfoInvoke.setMaximumSize(new Dimension(100, 30));
    groupsGetInfoInvoke.setMinimumSize(new Dimension(100, 30));
    groupsGetInfoInvoke.setPreferredSize(new Dimension(100, 30));
    groupsGetInfoInvoke.setText("Invoke");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 2;
    gbc.gridwidth = 2;
    gbc.insets = new Insets(50, 0, 50, 0);
    panel73.add(groupsGetInfoInvoke, gbc);
    final JScrollPane scrollPane51 = new JScrollPane();
    scrollPane51.setMaximumSize(new Dimension(550, 225));
    scrollPane51.setMinimumSize(new Dimension(550, 225));
    scrollPane51.setPreferredSize(new Dimension(550, 225));
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 3;
    gbc.gridwidth = 2;
    gbc.weightx = 1.0;
    gbc.weighty = 1.0;
    panel73.add(scrollPane51, gbc);
    groupsGetInfoOutput = new JTextArea();
    groupsGetInfoOutput.setBackground(new Color(-3355444));
    groupsGetInfoOutput.setEditable(false);
    scrollPane51.setViewportView(groupsGetInfoOutput);
    final JPanel panel74 = new JPanel();
    panel74.setLayout(new GridBagLayout());
    groupsOperationPane.addTab("Search", panel74);
    final JLabel label190 = new JLabel();
    label190.setFont(new Font(label190.getFont().getName(), Font.BOLD, label190.getFont().getSize()));
    label190.setHorizontalAlignment(0);
    label190.setMaximumSize(new Dimension(800, 50));
    label190.setMinimumSize(new Dimension(800, 50));
    label190.setPreferredSize(new Dimension(800, 50));
    label190.setText(
            "Search for groups. 18+ groups will only be returned for authenticated calls where the authenticated user is over 18.");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 0;
    gbc.gridwidth = 2;
    gbc.anchor = GridBagConstraints.NORTH;
    gbc.insets = new Insets(50, 0, 50, 0);
    panel74.add(label190, gbc);
    final JLabel label191 = new JLabel();
    label191.setFont(new Font(label191.getFont().getName(), label191.getFont().getStyle(),
            label191.getFont().getSize()));
    label191.setHorizontalAlignment(4);
    label191.setMaximumSize(new Dimension(400, 25));
    label191.setMinimumSize(new Dimension(400, 25));
    label191.setPreferredSize(new Dimension(400, 25));
    label191.setText("Text        : ");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 1;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 0, 15, 0);
    panel74.add(label191, gbc);
    final JLabel label192 = new JLabel();
    label192.setHorizontalAlignment(4);
    label192.setMaximumSize(new Dimension(400, 25));
    label192.setMinimumSize(new Dimension(400, 25));
    label192.setPreferredSize(new Dimension(400, 25));
    label192.setText("Page       : ");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 2;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 0, 15, 0);
    panel74.add(label192, gbc);
    txtGroupsSearchPage = new JTextField();
    txtGroupsSearchPage.setMaximumSize(new Dimension(200, 25));
    txtGroupsSearchPage.setMinimumSize(new Dimension(200, 25));
    txtGroupsSearchPage.setPreferredSize(new Dimension(200, 25));
    gbc = new GridBagConstraints();
    gbc.gridx = 1;
    gbc.gridy = 2;
    gbc.weightx = 1.0;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 100, 15, 0);
    panel74.add(txtGroupsSearchPage, gbc);
    final JLabel label193 = new JLabel();
    label193.setHorizontalAlignment(4);
    label193.setMaximumSize(new Dimension(400, 25));
    label193.setMinimumSize(new Dimension(400, 25));
    label193.setPreferredSize(new Dimension(400, 25));
    label193.setText("Per Page : ");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 3;
    gbc.anchor = GridBagConstraints.WEST;
    panel74.add(label193, gbc);
    cmbGroupsSearchPerPage = new JComboBox();
    cmbGroupsSearchPerPage.setMaximumSize(new Dimension(200, 25));
    cmbGroupsSearchPerPage.setMinimumSize(new Dimension(200, 25));
    cmbGroupsSearchPerPage.setPreferredSize(new Dimension(200, 25));
    gbc = new GridBagConstraints();
    gbc.gridx = 1;
    gbc.gridy = 3;
    gbc.weightx = 1.0;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 100, 0, 0);
    panel74.add(cmbGroupsSearchPerPage, gbc);
    groupsSearchInvoke = new JButton();
    groupsSearchInvoke.setFont(new Font(groupsSearchInvoke.getFont().getName(), Font.BOLD,
            groupsSearchInvoke.getFont().getSize()));
    groupsSearchInvoke.setMaximumSize(new Dimension(100, 30));
    groupsSearchInvoke.setMinimumSize(new Dimension(100, 30));
    groupsSearchInvoke.setPreferredSize(new Dimension(100, 30));
    groupsSearchInvoke.setText("Invoke");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 4;
    gbc.gridwidth = 2;
    gbc.insets = new Insets(50, 0, 50, 0);
    panel74.add(groupsSearchInvoke, gbc);
    final JScrollPane scrollPane52 = new JScrollPane();
    scrollPane52.setMaximumSize(new Dimension(550, 225));
    scrollPane52.setMinimumSize(new Dimension(550, 225));
    scrollPane52.setPreferredSize(new Dimension(550, 225));
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 5;
    gbc.gridwidth = 2;
    gbc.weighty = 1.0;
    panel74.add(scrollPane52, gbc);
    groupsSearchOutput = new JTextArea();
    groupsSearchOutput.setBackground(new Color(-3355444));
    scrollPane52.setViewportView(groupsSearchOutput);
    txtGroupsSearchText = new JTextField();
    txtGroupsSearchText.setMaximumSize(new Dimension(200, 25));
    txtGroupsSearchText.setMinimumSize(new Dimension(200, 25));
    txtGroupsSearchText.setPreferredSize(new Dimension(200, 25));
    gbc = new GridBagConstraints();
    gbc.gridx = 1;
    gbc.gridy = 1;
    gbc.weightx = 1.0;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 100, 15, 0);
    panel74.add(txtGroupsSearchText, gbc);
    final JPanel panel75 = new JPanel();
    panel75.setLayout(new GridBagLayout());
    tabbedPane1.addTab("GroupsPools", panel75);
    tabbedPane2 = new JTabbedPane();
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 0;
    gbc.weightx = 1.0;
    gbc.weighty = 1.0;
    gbc.fill = GridBagConstraints.BOTH;
    panel75.add(tabbedPane2, gbc);
    final JPanel panel76 = new JPanel();
    panel76.setLayout(new GridBagLayout());
    tabbedPane2.addTab("Add", panel76);
    final JLabel label194 = new JLabel();
    label194.setFont(new Font(label194.getFont().getName(), Font.BOLD, label194.getFont().getSize()));
    label194.setHorizontalAlignment(0);
    label194.setMaximumSize(new Dimension(600, 50));
    label194.setMinimumSize(new Dimension(600, 50));
    label194.setPreferredSize(new Dimension(600, 50));
    label194.setText("Add a photo to a group's pool.");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 0;
    gbc.gridwidth = 2;
    gbc.anchor = GridBagConstraints.NORTH;
    gbc.insets = new Insets(50, 0, 50, 0);
    panel76.add(label194, gbc);
    final JLabel label195 = new JLabel();
    label195.setFont(new Font(label195.getFont().getName(), Font.BOLD, label195.getFont().getSize()));
    label195.setHorizontalAlignment(4);
    label195.setMaximumSize(new Dimension(400, 25));
    label195.setMinimumSize(new Dimension(400, 25));
    label195.setPreferredSize(new Dimension(400, 25));
    label195.setText("Photo ID    : ");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 1;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 0, 15, 0);
    panel76.add(label195, gbc);
    final JLabel label196 = new JLabel();
    label196.setFont(new Font(label196.getFont().getName(), Font.BOLD, label196.getFont().getSize()));
    label196.setHorizontalAlignment(4);
    label196.setMaximumSize(new Dimension(400, 25));
    label196.setMinimumSize(new Dimension(400, 25));
    label196.setPreferredSize(new Dimension(400, 25));
    label196.setText("Group ID    : ");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 2;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 0, 15, 0);
    panel76.add(label196, gbc);
    txtGrpPoolsAddGroupID = new JTextField();
    txtGrpPoolsAddGroupID.setMaximumSize(new Dimension(200, 25));
    txtGrpPoolsAddGroupID.setMinimumSize(new Dimension(200, 25));
    txtGrpPoolsAddGroupID.setPreferredSize(new Dimension(200, 25));
    gbc = new GridBagConstraints();
    gbc.gridx = 1;
    gbc.gridy = 2;
    gbc.weightx = 1.0;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 100, 15, 0);
    panel76.add(txtGrpPoolsAddGroupID, gbc);
    grpPoolsAddInvoke = new JButton();
    grpPoolsAddInvoke.setFont(
            new Font(grpPoolsAddInvoke.getFont().getName(), Font.BOLD, grpPoolsAddInvoke.getFont().getSize()));
    grpPoolsAddInvoke.setMaximumSize(new Dimension(100, 30));
    grpPoolsAddInvoke.setMinimumSize(new Dimension(100, 30));
    grpPoolsAddInvoke.setPreferredSize(new Dimension(100, 30));
    grpPoolsAddInvoke.setText("Invoke");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 3;
    gbc.gridwidth = 2;
    gbc.insets = new Insets(50, 0, 50, 0);
    panel76.add(grpPoolsAddInvoke, gbc);
    final JScrollPane scrollPane53 = new JScrollPane();
    scrollPane53.setMaximumSize(new Dimension(550, 225));
    scrollPane53.setMinimumSize(new Dimension(550, 225));
    scrollPane53.setPreferredSize(new Dimension(550, 225));
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 4;
    gbc.gridwidth = 2;
    gbc.weighty = 1.0;
    panel76.add(scrollPane53, gbc);
    grpPoolsAddOutput = new JTextArea();
    grpPoolsAddOutput.setBackground(new Color(-3355444));
    scrollPane53.setViewportView(grpPoolsAddOutput);
    txtGrpPoolsAddPhotoID = new JTextField();
    txtGrpPoolsAddPhotoID.setMaximumSize(new Dimension(200, 25));
    txtGrpPoolsAddPhotoID.setMinimumSize(new Dimension(200, 25));
    txtGrpPoolsAddPhotoID.setPreferredSize(new Dimension(200, 25));
    gbc = new GridBagConstraints();
    gbc.gridx = 1;
    gbc.gridy = 1;
    gbc.weightx = 1.0;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 100, 15, 0);
    panel76.add(txtGrpPoolsAddPhotoID, gbc);
    final JPanel panel77 = new JPanel();
    panel77.setLayout(new GridBagLayout());
    tabbedPane2.addTab("GetContext", panel77);
    final JLabel label197 = new JLabel();
    label197.setFont(new Font(label197.getFont().getName(), Font.BOLD, label197.getFont().getSize()));
    label197.setHorizontalAlignment(0);
    label197.setMaximumSize(new Dimension(600, 50));
    label197.setMinimumSize(new Dimension(600, 50));
    label197.setPreferredSize(new Dimension(600, 50));
    label197.setText("Returns next and previous photos for a photo in a group pool.");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 0;
    gbc.gridwidth = 2;
    gbc.anchor = GridBagConstraints.NORTH;
    gbc.insets = new Insets(50, 0, 50, 0);
    panel77.add(label197, gbc);
    final JLabel label198 = new JLabel();
    label198.setFont(new Font(label198.getFont().getName(), Font.BOLD, label198.getFont().getSize()));
    label198.setHorizontalAlignment(4);
    label198.setMaximumSize(new Dimension(400, 25));
    label198.setMinimumSize(new Dimension(400, 25));
    label198.setPreferredSize(new Dimension(400, 25));
    label198.setText("Photo ID    : ");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 1;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 0, 15, 0);
    panel77.add(label198, gbc);
    final JLabel label199 = new JLabel();
    label199.setFont(new Font(label199.getFont().getName(), Font.BOLD, label199.getFont().getSize()));
    label199.setHorizontalAlignment(4);
    label199.setMaximumSize(new Dimension(400, 25));
    label199.setMinimumSize(new Dimension(400, 25));
    label199.setPreferredSize(new Dimension(400, 25));
    label199.setText("Group ID    : ");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 2;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 0, 15, 0);
    panel77.add(label199, gbc);
    txtGrpPoolsContextGrpID = new JTextField();
    txtGrpPoolsContextGrpID.setMaximumSize(new Dimension(200, 25));
    txtGrpPoolsContextGrpID.setMinimumSize(new Dimension(200, 25));
    txtGrpPoolsContextGrpID.setPreferredSize(new Dimension(200, 25));
    gbc = new GridBagConstraints();
    gbc.gridx = 1;
    gbc.gridy = 2;
    gbc.weightx = 1.0;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 100, 15, 0);
    panel77.add(txtGrpPoolsContextGrpID, gbc);
    grpPoolsContextInvoke = new JButton();
    grpPoolsContextInvoke.setFont(new Font(grpPoolsContextInvoke.getFont().getName(), Font.BOLD,
            grpPoolsContextInvoke.getFont().getSize()));
    grpPoolsContextInvoke.setMaximumSize(new Dimension(100, 30));
    grpPoolsContextInvoke.setMinimumSize(new Dimension(100, 30));
    grpPoolsContextInvoke.setPreferredSize(new Dimension(100, 30));
    grpPoolsContextInvoke.setText("Invoke");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 3;
    gbc.gridwidth = 2;
    gbc.insets = new Insets(50, 0, 50, 0);
    panel77.add(grpPoolsContextInvoke, gbc);
    final JScrollPane scrollPane54 = new JScrollPane();
    scrollPane54.setMaximumSize(new Dimension(550, 225));
    scrollPane54.setMinimumSize(new Dimension(550, 225));
    scrollPane54.setPreferredSize(new Dimension(550, 225));
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 4;
    gbc.gridwidth = 2;
    gbc.weighty = 1.0;
    panel77.add(scrollPane54, gbc);
    grpPoolsContextOutput = new JTextArea();
    grpPoolsContextOutput.setBackground(new Color(-3355444));
    scrollPane54.setViewportView(grpPoolsContextOutput);
    txtGrpPoolsContextPhotoID = new JTextField();
    txtGrpPoolsContextPhotoID.setMaximumSize(new Dimension(200, 25));
    txtGrpPoolsContextPhotoID.setMinimumSize(new Dimension(200, 25));
    txtGrpPoolsContextPhotoID.setPreferredSize(new Dimension(200, 25));
    gbc = new GridBagConstraints();
    gbc.gridx = 1;
    gbc.gridy = 1;
    gbc.weightx = 1.0;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 100, 15, 0);
    panel77.add(txtGrpPoolsContextPhotoID, gbc);
    final JPanel panel78 = new JPanel();
    panel78.setLayout(new GridBagLayout());
    tabbedPane2.addTab("GetGroups", panel78);
    final JLabel label200 = new JLabel();
    label200.setFont(new Font(label200.getFont().getName(), Font.BOLD, label200.getFont().getSize()));
    label200.setHorizontalAlignment(0);
    label200.setMaximumSize(new Dimension(800, 50));
    label200.setMinimumSize(new Dimension(800, 50));
    label200.setPreferredSize(new Dimension(800, 50));
    label200.setText("Returns a list of groups to which you can add photos.");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 0;
    gbc.gridwidth = 2;
    gbc.anchor = GridBagConstraints.NORTH;
    gbc.insets = new Insets(50, 0, 50, 0);
    panel78.add(label200, gbc);
    final JLabel label201 = new JLabel();
    label201.setHorizontalAlignment(4);
    label201.setMaximumSize(new Dimension(400, 25));
    label201.setMinimumSize(new Dimension(400, 25));
    label201.setPreferredSize(new Dimension(400, 25));
    label201.setText("Page       : ");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 1;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 0, 15, 0);
    panel78.add(label201, gbc);
    txtGrpPoolsGrpsPage = new JTextField();
    txtGrpPoolsGrpsPage.setMaximumSize(new Dimension(200, 25));
    txtGrpPoolsGrpsPage.setMinimumSize(new Dimension(200, 25));
    txtGrpPoolsGrpsPage.setPreferredSize(new Dimension(200, 25));
    gbc = new GridBagConstraints();
    gbc.gridx = 1;
    gbc.gridy = 1;
    gbc.weightx = 1.0;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 100, 15, 0);
    panel78.add(txtGrpPoolsGrpsPage, gbc);
    final JLabel label202 = new JLabel();
    label202.setHorizontalAlignment(4);
    label202.setMaximumSize(new Dimension(400, 25));
    label202.setMinimumSize(new Dimension(400, 25));
    label202.setPreferredSize(new Dimension(400, 25));
    label202.setText("Per Page : ");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 2;
    gbc.anchor = GridBagConstraints.WEST;
    panel78.add(label202, gbc);
    cmbGrpPoolsGrpsPerPage = new JComboBox();
    cmbGrpPoolsGrpsPerPage.setMaximumSize(new Dimension(200, 25));
    cmbGrpPoolsGrpsPerPage.setMinimumSize(new Dimension(200, 25));
    cmbGrpPoolsGrpsPerPage.setPreferredSize(new Dimension(200, 25));
    gbc = new GridBagConstraints();
    gbc.gridx = 1;
    gbc.gridy = 2;
    gbc.weightx = 1.0;
    gbc.anchor = GridBagConstraints.WEST;
    gbc.insets = new Insets(0, 100, 0, 0);
    panel78.add(cmbGrpPoolsGrpsPerPage, gbc);
    grpPoolsGrpsInvoke = new JButton();
    grpPoolsGrpsInvoke.setFont(new Font(grpPoolsGrpsInvoke.getFont().getName(), Font.BOLD,
            grpPoolsGrpsInvoke.getFont().getSize()));
    grpPoolsGrpsInvoke.setMaximumSize(new Dimension(100, 30));
    grpPoolsGrpsInvoke.setMinimumSize(new Dimension(100, 30));
    grpPoolsGrpsInvoke.setPreferredSize(new Dimension(100, 30));
    grpPoolsGrpsInvoke.setText("Invoke");
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 3;
    gbc.gridwidth = 2;
    gbc.insets = new Insets(50, 0, 50, 0);
    panel78.add(grpPoolsGrpsInvoke, gbc);
    final JScrollPane scrollPane55 = new JScrollPane();
    scrollPane55.setMaximumSize(new Dimension(550, 225));
    scrollPane55.setMinimumSize(new Dimension(550, 225));
    scrollPane55.setPreferredSize(new Dimension(550, 225));
    gbc = new GridBagConstraints();
    gbc.gridx = 0;
    gbc.gridy = 4;
    gbc.gridwidth = 2;
    gbc.weighty = 1.0;
    panel78.add(scrollPane55, gbc);
    grpPoolsGrpsOutput = new JTextArea();
    grpPoolsGrpsOutput.setBackground(new Color(-3355444));
    scrollPane55.setViewportView(grpPoolsGrpsOutput);
    findByEmailOutput.setNextFocusableComponent(tabbedPane1);
    blogsGetListOutput.setNextFocusableComponent(tabbedPane1);
}