Professional Documents
Culture Documents
NotePad Code
NotePad Code
package note_pad;
import java.awt.*;
import java.awt.event.*;
import java.io.*;
import javax.swing.*;
import javax.swing.event.*;
import javax.swing.text.BadLocationException;
class Notepad_Area extends JFrame implements ActionListener {
JTextArea jt=new JTextArea();
JLabel statusbar;
File CurrentFile=null;
Boolean Saved=false;
Notepad_Area()
{
statusbar=new JLabel("|| Ln 1, Col 1 ",JLabel.RIGHT);
jt.setBounds(0,0,600,500);
add(statusbar,BorderLayout.SOUTH);
add(new JLabel(" "),BorderLayout.EAST);
add(new JLabel(" "),BorderLayout.WEST);
add(jt);
setTitle("Untitled-Javapad");
File CurrentFile=new File(getTitle());
jt.addCaretListener(
new CaretListener()
{
public void caretUpdate(CaretEvent e)
{
int lineNumber=0, column=0, pos=0;
try
{
pos=jt.getCaretPosition();
lineNumber=jt.getLineOfOffset(pos);//current position k mutabiq num of char in
line count krta hn
column=pos-jt.getLineStartOffset(lineNumber);
}catch(Exception excp){}
if(jt.getText().length()==0){lineNumber=0; column=0;}
statusbar.setText("|| Ln "+(lineNumber+1)+", Col "+(column+1));
}
});
WindowListener close=new WindowAdapter()
{
public void WindowClosing(WindowEvent e)
{
if(Saved==true)
SaveAsFile();
else
System.exit(0);
}
};
addWindowListener(close);
}
void Menubar()
{
JMenuBar menubar = new JMenuBar();
JMenu file = new JMenu("File");
JMenuItem Exit=new JMenuItem("Exit");
JMenuItem New=new JMenuItem("New");
JMenuItem Save=new JMenuItem("Save");
JMenuItem Open=new JMenuItem("Open");
JMenuItem Save_As=new JMenuItem("Save As");
JMenu imp=new JMenu("Import");
JMenuItem mail=new JMenuItem("Import mail..");
JMenuItem Feedback=new JMenuItem("Import Feedback..");
JMenuItem Bookmark=new JMenuItem("Import Bookmark..");
imp.add(Feedback);
imp.add(Bookmark);
imp.add(mail);
@Override
public void actionPerformed(ActionEvent e)
{
if("New"==e.getActionCommand())
{
NewFile();
}
else if("Open"==e.getActionCommand())
{
OpenFile();
}
else if("Save As"==e.getActionCommand())
{
SaveAsFile();
}
else if("Save"==e.getActionCommand())
{
SaveFile();
}
else if("Cut"==e.getActionCommand())
{
jt.cut();
}
else if("Copy"==e.getActionCommand())
{
jt.copy();
}
else if("Paste"==e.getActionCommand())
{
jt.paste();
}
else if("Find"==e.getActionCommand())
{
}
else if("FindNext"==e.getActionCommand())
{
}
else if("Replace"==e.getActionCommand())
{
}
else if("Goto"==e.getActionCommand())
{ int LineNumber=0;
try
{
LineNumber=jt.getLineOfOffset(jt.getCaretPosition());
String str=JOptionPane.showInputDialog(this,"Enter Line Number
"+LineNumber);
LineNumber=Integer.parseInt(str);
jt.setCaretPosition(jt.getLineStartOffset(LineNumber-1));
}
catch(Exception EX){}
}
}
void NewFile()
{
}
JFileChooser chooser=new JFileChooser();
void OpenFile()
{
}
Boolean fileflag=false;
void SaveFile()
{
if(fileflag==false)
{
SaveAsFile();
}
else
{
Save(CurrentFile);
}
}
void SaveAsFile()
{
chooser.showSaveDialog(jt);
chooser.setDialogTitle("Save As");
File temp=chooser.getSelectedFile();
Save(temp);
}
void Save(File temp)
{
FileWriter fw=null;
try
{
fw=new FileWriter(temp);
fw.write(jt.getText());
}catch(Exception e){}
finally
{
try {
fw.close();
CurrentFile=temp;
setTitle(CurrentFile.getName());
}catch(Exception e){}
fileflag=true;
Saved=true;
}
}