Alguem poderia Explicar A função desta aplicação

Olá estou desenvolvendo sistema de cadastro onde aprendi junto com colega adesenvolver um form q trabalha com metodos desta duas classe MydesktopPane e DesktopManeger mais não entendi sua funcionalida algem podeia me explicara ficaria grato…

Muito Obrigado Pela Atenção

package br.com.pacote.lib;

import java.awt.;
import java.awt.event.
;
import java.beans.;
import java.net.
;
import java.sql.;
import java.text.
;
import java.util.;
import java.util.Timer;
import java.util.TimerTask;
import javax.swing.
;
import javax.swing.UIManager;
import javax.swing.border.;
import javax.swing.event.
;

public class DesktopManager extends DefaultDesktopManager {

Dimension ps = null;

public void beginDraggingFrame(JComponent f)
{
ps = f.getParent().getSize(); //tamanho original do desktop
super.beginDraggingFrame(f);
}

public void dragFrame(JComponent f, int newX, int newY)
{
super.dragFrame(f, newX, newY);
}

public void endDraggingFrame(JComponent f)
{
Rectangle rf = f.getBounds();
boolean changeNeeded = false;

try
{
// ajusta o tamanho do se for extendido para o lado direito da tela ou p baixo
if (ps.width < (rf.x + rf.width))
{
changeNeeded = true;
ps.width = rf.x + rf.width;
}

if (ps.height < (rf.y + rf.height))
{
changeNeeded = true;
ps.height = rf.y + rf.height;
}

f.getParent().setSize(ps);

if (changeNeeded)
{
f.getParent().invalidate();
f.getParent().setSize(ps);
}

super.endDraggingFrame(f);
}
catch (NullPointerException errodrag)
{
}
}

/*
*

  • @param f DOCUMENT ME!
    */
    public void endResizingFrame(JComponent f)
    {
    super.endResizingFrame(f);
    }
    }

///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

package br.com.pacote.lib;

import javax.swing.;
import java.awt.
;

/**
*

  • @author Fabiano Pereira
    */
    public class MyDesktopPane extends JDesktopPane {
    Image image;
    JDesktopPane desktop;
    public MyDesktopPane(Image image, JDesktopPane desktop) {
    super();
    this.image = image;
    this.desktop = desktop;
    }

public void paintComponent(Graphics g) {
super.paintComponent(g);
if(image != null){
int altura = image.getHeight(null);
int largura = image.getWidth(null);
Dimension d = desktop.getSize();
int altura_total = d.height;
int largura_total = d.width;
int centro_altura = (int)altura_total/2;
int centro_largura = (int)largura_total/2;
int meio_altura = (int)altura/2;
int meio_largura = (int)largura/2;
int pos_x1 = centro_altura - meio_altura;
int pos_y1 = centro_largura - meio_largura;
g.drawImage(image, pos_y1, pos_x1, null );
}
}
public Dimension getPreferredSize() {
return super.getSize();
}
}
//////////////////////////////////////////////////////////////////////////
import br.com.pacote.lib.MyDesktopPane;
import br.com.pacote.lib.DesktopManager;
import br.com.pacote.lib.Conexao;
import br.com.pacote.lib.Splash;

import java.awt.;
import java.awt.event.
;
import java.sql.Connection;
import java.sql.SQLException;
import java.util.;
import java.util.Timer;
import javax.swing.
;
import javax.swing.UIManager;
/**
*

  • @author Fabiano Pereira
    */
    public class MainForm extends javax.swing.JFrame {
    private JDesktopPane desktop;

/** Creates new form MainForm */
public MainForm() {

initComponents();
Container contentPane = getContentPane();

desktop = new MyDesktopPane(null, desktop);
desktop.setDesktopManager(new DesktopManager());
JScrollPane spCentral = new JScrollPane();
spCentral.getViewport().add(desktop);
contentPane.setLayout(new BorderLayout());
contentPane.add(spCentral, BorderLayout.CENTER);
desktop.setSize(contentPane.getSize());
desktop.setBackground(java.awt.SystemColor.desktop);
desktop.setToolTipText(“Desenvolvedores–>Fabiano P, Lucas S, Bruno P”);

this.setExtendedState(JFrame.MAXIMIZED_BOTH);

}

public static void main(String args[]) {
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new MainForm().setVisible(true);
}
});
}

Vc tem é que aprender é o Java e não como fazer forms. !!! Isso não é VB e nem Delphi !!!

Caro Amigo eu quero aprender fazer os forms mais enteder qual ação destas duas class com seu metodos atinge no form principal é como um gerenciador dele, não entendi

Muito Obrigado pela atenção!!!