Salve,
ho un problema con il layout utillizzando il GridBagLayout.

Posto l'img dell'applet che riesco ad ottenere:


e quella che vorrei ottenere:


I due quadratini alla destra della 2° img (che nella prima il secondo prende tutto lo spazio) sono 2 JButton.
Il codice all'interno del metodo init() è questo:

codice:
        c = getContentPane();
        c.setLayout(new GridBagLayout());
        GridBagConstraints cg = new GridBagConstraints();
        cg.fill = GridBagConstraints.HORIZONTAL;

        jTextField1 = new JTextField();
        jTextField1.setText("aaaaaa");
        jTextField1.setEditable(false);
        jTextField1.setBorder(null);
        cg.fill = GridBagConstraints.HORIZONTAL;
        cg.ipadx = 0;
        cg.weightx = 0.0;
        cg.gridx = 0;
        cg.gridy = 0;
        c.add(jTextField1, cg);

        jButton1 = new JButton("");
        jButton1.setMinimumSize(new Dimension(0, 0));
        jButton1.setSize(23,23);
        cg.fill = GridBagConstraints.HORIZONTAL;
        cg.anchor = GridBagConstraints.EAST;
        cg.ipadx = -13;
        cg.ipady = 7;
        cg.gridx = 1;
        cg.gridy = 0;
        c.add(jButton1, cg);

        jButton2 = new JButton("");
        jButton2.setMinimumSize(new Dimension(0, 0));
        jButton2.setSize(23,23);
        cg.fill = GridBagConstraints.HORIZONTAL;
        cg.anchor = GridBagConstraints.EAST;
        cg.ipadx = -13;
        cg.ipady = 7;
        cg.gridx = 2;
        cg.gridy = 0;
        c.add(jButton2, cg);
        
        jSeparator1 = new JSeparator();
        cg.ipady = 0;      
        cg.weightx = 0.0;
        cg.insets = new Insets(3,0,0,0);  
        cg.fill = GridBagConstraints.HORIZONTAL;
        cg.gridwidth = 3;     
        cg.gridx = 0;
        cg.gridy = 1;
        c.add(jSeparator1, cg);

        jTextArea1 = new JTextArea();
        jTextArea1.setColumns(20);
        jTextArea1.setRows(7);
        jTextArea1.setLineWrap(true);
        jScrollPane1 = new JScrollPane(jTextArea1);
        cg.fill = GridBagConstraints.HORIZONTAL;
        cg.ipady = 0;       
        cg.weighty = 0.0;   
        cg.insets = new Insets(3,0,0,0);  
        cg.gridx = 0;       
        cg.gridwidth = 3;   
        cg.gridy = 2;       
        c.add(jScrollPane1, cg);
Praticamente la 1° cella in posizione 0,0 dovrebbe prendere tutta la larghezza possibile dopo aver ridimensionato i due bottoni, che sono rispettivamente nella celle 0,1 e 0,2 (come in fig 2 a differenza della fig 1).
Vorrei sapere dove sbaglio e che cosa dovrei fare per ottenere il risultato voluto.

Ringrazio già da ora chiunque possa essermi d'aiuto.