Beruflich Dokumente
Kultur Dokumente
*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.filechooser.*;
import java.io.*;
JFrame frame;
// JPanel panel;
JMenuBar menubar;
JMenu mFile,mEdit,mBuild;
JPopupMenu pop1;
JMenuItem mNew,mOpen,mSave,mSaveAs,mExit;
JMenuItem mCut,mCopy,mPaste,mFind,mFindNext,mFindReplace;
JMenuItem mCompile,mRun;
JTextArea textArea,textArea2;
JSplitPane splitPane;
JScrollPane scrollPane1,scrollPane2;
JTabbedPane tabbedPane;
ImageIcon icon;
JFrame findReplaceFrame;
JPanel panel;
JPanel panel2;
JPanel panel3;
JLabel label1;
JLabel label2;
JButton findButton;
JButton replaceButton;
JButton replaceAllButton;
JButton cancelButton;
JTextField findText;
JTextField replaceText;
//-----------------------------------------
Notepad()
{
frame = new JFrame("Notepad");
textArea.setFont(font);
textArea2.setEditable(false);
splitPane.setOneTouchExpandable(true);
frame.add(menubar);
System.out.println (mNew);
mFile.add(mNew);
mFile.add(mOpen);
mFile.add(mSave); // ADD menus items(of FILE) to
MENU
mFile.add(mSaveAs);
mFile.add(mExit);
mEdit.add(mCut);
mEdit.add(mCopy);
mEdit.add(mFind);
mEdit.add(mFindNext);
mEdit.add(mFindReplace);
mBuild.add(mCompile);
menubar.add(mFile);
menubar.add(mBuild);
frame.setBounds(0,0,800,600);
frame.setVisible(true);
// tabCount = tabbedPane.getTabCount();
// System.out.println (tabCount);
//-------------------------Add Action Listners-------------------------------------------------
frame.addWindowListener(this);
mNew.addActionListener(this);
mOpen.addActionListener(this);
mSave.addActionListener(this);
mSaveAs.addActionListener(this);
mExit.addActionListener(this);
mCut.addActionListener(this);
mCopy.addActionListener(this);
mPaste.addActionListener(this);
mFind.addActionListener(this);
mFindNext.addActionListener(this);
mFindReplace.addActionListener(this);
mRun.addActionListener(this);
mCompile.addActionListener(this);
//--------------------------------------------------------------------------------------------
findReplaceFrame.addWindowListener(this);
findReplaceFrame.setLayout(new GridLayout(1,3));
panel.setLayout(new GridLayout(2,1));
panel2.setLayout(new GridLayout(2,1));
panel3.setLayout(new GridLayout(4,1));
findButton.addActionListener(this);
replaceButton.addActionListener(this);
replaceAllButton.addActionListener(this);
cancelButton.addActionListener(this);
findText.setColumns(50);
// findText.se
replaceText.setColumns(30);
panel.add(label1);
panel.add(label2);
panel2.add(findText);
panel2.add(replaceText);
panel3.add(findButton);
panel3.add(replaceButton);
panel3.add(replaceAllButton);
panel3.add(cancelButton);
findReplaceFrame.add(panel);
findReplaceFrame.add(panel2);
findReplaceFrame.add(panel3);
//-------------------------------------------------------------
try
JButton jb=null;
JMenuItem mi=null;
if(className.equals("class javax.swing.JMenuItem"))
mi = (JMenuItem)ae.getSource();
else
jb = (JButton)ae.getSource();
tabCount = tabbedPane.getTabCount();
int i = tabbedPane.getSelectedIndex();
JScrollPane jsp =
(JScrollPane)tabbedPane.getComponentAt(i);
//-------------------------------------------------------------------------------
if(mi == mCompile) // check if code is save or not
compileSave = true;
if(mi == mNew)
jta.setFont(font);
tabCount = tabbedPane.getTabCount();
System.out.println (tabCount);
tabbedPane.setSelectedIndex(tabCount);
tabCount = tabbedPane.getTabCount();
System.out.println (Notepad.this);
int s = fileChooser.showOpenDialog(null);
System.out.println (JFileChooser.APPROVE_OPTION);
System.out.println (s);
if (s == JFileChooser.APPROVE_OPTION)
r.read(ch,0,ch.length);
tabCount = tabbedPane.getTabCount();
System.out.println (tabCount);
tabbedPane.addTab(fileChooser.getName(file),new
JScrollPane(jta2));
jta2.setText(str);
jta2.setFont(font);
//jta.getActions();
tabbedPane.setSelectedIndex(tabCount); //Set
FOCUS to a tab in a JTabbedPane
r.close();
String tabTitle =
tabbedPane.getTitleAt(tabbedPane.getSelectedIndex());
System.out.println (str);
System.out.println (str.length);
for(int j=0;j<b.length;j++)
b[j] = (byte)str[j];
System.out.print((char)b[j]);
fos.write(b);
fos.flush();
fos.close();
}
else
int s = saveFileChooser.showSaveDialog(frame);
System.out.println (s);
if(s == JFileChooser.APPROVE_OPTION)
System.out.println (jta.getText());
Writer wr = new
FileWriter(saveFileChooser.getCurrentDirectory()+"\\"+file.getName());
currentDir =
""+saveFileChooser.getCurrentDirectory();
wr.write(str);
//JTabbedPane tbPane =
(JTabbedPane)tabbedPane.getTabComponentAt(i);
tabbedPane.setTitleAt(tabbedPane.getSelectedIndex(),file.getName());
wr.close();
}
compileSave = false;
System.out.println (j);
if(j==0)
frame.dispose();
selectedText = jta.getSelectedText();
System.out.println (jta.getSelectedText());
selectedText = jta.getSelectedText();
jta.replaceRange("",jta.getSelectionStart(),jta.getSelectionEnd());
jta.replaceSelection(selectedText);
System.out.println (str);
if(str!=null)
findNext = str;
int j = str2.indexOf(str);
indexOfString = j+findNext.length();
System.out.println (j);
jta.setSelectionStart(j);
jta.setSelectionEnd(j+str.length());
jta.setSelectedTextColor(Color.green);
}
else if(mi == mFindNext)
if(findNext.length()!=0)
int j = str2.indexOf(findNext,indexOfString);
if(j==-1)
indexOfString = 0;
j = str2.indexOf(findNext,indexOfString);
jta.setSelectionStart(j);
jta.setSelectionEnd(j+findNext.length());
jta.setSelectedTextColor(Color.green);
indexOfString = j+findNext.length();
}
findReplaceFrame.setVisible(true);
findReplaceFrame.setBounds(300,300,450,150);
int j = str2.indexOf(str,k);
System.out.println (j);
if(j==-1)
k=0;
j= str2.indexOf(str,k);
jta.setSelectionStart(j);
jta.setSelectionEnd(j+str.length());
jta.setSelectedTextColor(Color.green);
k = j+str.length();
}
else if(jb == replaceButton)
if(jta.getSelectedText()!=null)
System.out.println (";;;;;");
jta.replaceSelection(str);
int j;
System.out.println (str);
System.out.println (str.indexOf(str3));
while((j=str.indexOf(str3))!=-1)
jta.replaceRange(str2,j,j+str3.length());
str = jta.getText();
findReplaceFrame.dispose();
else{
if(mi == mCompile)
System.out.println (currentDir);
textArea2.setText("");
if((line=input.readLine())!= null)
{ textArea2.append(line+"\n");
while((line=input.readLine())!=null)
textArea2.append(line+"\n");
else
if(mi == mRun)
System.out.println (str);
{ textArea2.append(line+"\n");
while((line=output.readLine())!=null)
textArea2.append(line+"\n");
textArea2.append("\n");
if((line2=outputError.readLine())!= null)
{ textArea2.append(line2+"\n");
while((line2=outputError.readLine())!=null)
textArea2.append(line2+"\n");
} // END of actionPerformed
catch(Exception e)
{
e.printStackTrace();
if(jFrame == frame)
findReplaceFrame.dispose();
jFrame.dispose();
jFrame.dispose();
}
public static void main(String[] args)
new Notepad();