Mozart Project Log




Weather in Richmond
Debian/GNU Linux
Parallel Virtual Machine
PVM Book
FreeBSD


Parallel Computing
Networks and Networking
Senior Seminar
Robotics


Math Modelling Competition
Networking
Mozart
Presentation



Project Notes
Project Log
Project Document
Project Links

Project Source
Class Hierarchy

Class Homepage

September 16, 1998
  • I gave my presentation on TCP/IP for the class. You can see my notes.
October 9, 1998
Week of the 11th to the 17th
  • Installed Interactive-C for Unix of Magellan
  • Researched some more, found some assembler code that sends and receives data with interrupts.
October 29, 1998
  • Set up Magellan to connect to Handy Board. Had to shut it down to configure the serial ports. It had been running for 71 days ...waaah.
  • Downloaded several library files and bootstrap code for the Handy Board
  • Have to test the communication between the Handy Board and Magellan. It wasn't working. I'm going to see if it works between a Mac and the Handy Board.
October 30, 1998
I'll be honest, I created this log tonight. There, I said it.
  • Added some links to the links page.
  • Created this log file.

I'm finding that I'm not too excited about this project.

November 2, 1998
After talking with Charlie, I've changed my project to something completely different: A WYSIWYG Web page editor written in Java. This kind of application I like because, first, I have never written anything as big as this before, second, I wanted a good reason to learn Java, but most important, this editor will be useful. It's going to have the following features:
  • Multiple-document, WYSIWIG interface
  • HTML 3.2 compliance
  • Undo/redo capable

Wishlist (In no particular order):

  • Website structure analyzer
  • Remote opening and saving through FTP
  • Context-sensitive popup menus (FrontPage Style)
  • Spell Checking? (maybe way in the future)

Most of the early features are made possible through Sun's new Swing classes. These classes have most of these capabilities built in already; it's just up to me to figure out how to put them together.

I've compiled a list of relevant links I think you should see.

November 4, 1998
  • After numerous trials, I got the latest version of the JDK and the Swing classes installed on Magellan and Copernicus (my other computer).
  • Refreshing my memory about Java and OOP
November 8, 1998
  • Actually built the first skeleton version of Mozart (that's what I'm calling it).
  • I'll keep the latest version of Mozart here. (There isn't too much commenting right now because I'm still learning about Java)
November 10, 1998
  • Continuing to learn about Swing
  • Added some EventHandlers and support for Multiple Documents
  • Read some more about the AbstractDocument class
  • If you look at the source, it's still a little rough

To do next time:

  • add some more menu choices
  • add support for opening files.
  • add support for closing internal frames
  • make internal frames appear maximized (just nit-picking)
  • try to get the HTMLEditorKit involved in all this.  (Maybe even view an HTML document!)
November 12, 1998
  • I did something....hmm....
November 14, 1998
  • Really dug around for info on the HTMLEditorKit and how to use it.
  • Still designing the interface and module layout.
  • I'm having a hard time figuring out how to do events. The new 1.1 version has me a little baffled. I also have a bunch of menu choices, each of which needs a definition, but I'm not sure where they go. Right now, they are in the main Mozart() constructor, but I have a feeling that I can (and should) put them somewhere else.
  • Found out how to open and read files:

File file = new File(String filename);
editor.read(new FileReader(file), file);

(Is is me or do you reuse words an AWFUL lot!)

Next time:

  • Work on the HTMLEditorKit stuff. Try and find more example source.
  • Look at example source for locations of event handling routines and menu definitions (I'm guessing they go in the Frame's declaration)
November 15, 1998
  • Actually got an editor window with HTML in it. Its still a little rough, though. I guess that's due to the Swing html parser. I've got to find out how to talk to the document itself.
November 16, 1998
  • Worked heavily on the Project Document
  • I think I'll start implementing the interface to Mozart

Next time:

  • Learn about dialog objects
  • How to do tell an object to fire from another object?
  • Where do menu actions live?
November 17- early 18, 1998 (Up waaaay too late)
  • After a talk with JJ about event listeners and handlers, I added some listeners to the menu stuff.
  • Got the HTMLEditorPane to show up in a scrolling child window in Mozart. It's actually very cool to see in action. I think I'll start taking screen shots and publishing them somewhere.
  • Since time is rapidly drawing to a close, I decided to download a trial version of the Java Workshop from Sun. I figured it'll help me make the dialogs and everything and will help organize the source code. (I also just want to tinker with it!!!)

Next time:

  • Install the JWS
  • Add some more handlers (other than the file menu's handlers)
  • Start building some Dialog modules (Page Properties)
  • look for font chooser source (I bet there already is one)
November 18, 1998 - Not a busy day...
  • Installed the JWS, not worth the download time...damnit.
  • Played with the interface, trying it out and stuff. I still like it.
  • I was thinking about starting a wishlist. The project is growing rapidly out of control, and I should have a place to put ideas and stuff.
November 20, 1998
  • Learning about the intricacies of the 1.1 version of Events.
November 21, 1998
  • Downloaded a bunch of example source from Sun.
  • Still banging my head...
November 22, 1998
  • I've realized that I've bitten of a very large chunk of stuff to do and I decided that the best way to learn it is to read about the structure and organization of typical Swing applications.
  • Started a page to keep track of tidbits, code snippets and other useful paraphernalia.
Thanksgiving Break
This break was a little strange. I worked on and off all week. On a trip to Indianapolis, I bought a book from O'Riley's on the Java Swing libraries, but (of course) its on the 1.0.3 version. I found out an awful lot on AbstractActions, and begun to add them to the project. I'm thinking about completely restructuring the architecture of Mozart, but we'll see (I'll probably do that anyway).
  • Added a split pane in the MozartFrame class (going to rename it to MozartDocumentFrame). The split pane will display the rendered view in the upper portion, and the HTML source in the lower. (Not sure how)
  • Started creating the AbstractActions needed for the program. I figure I'm going to need about 45.

Next time:

  • Spend the entire time figuring out documents and views. See if you can create a small app that can switch between the rendered HTML view and the HTML source view.
  • Send actions to documents.
November 30, 1998
  • Started restructuring Mozart. Made the main "Mozart" class the new MozartFrame class and made the old MozartFrame the new MozartInternalFrame.
  • Started working on the MozartActions class which will be a HashTable with all of the program's actions.
  • Played around with javadoc. Put the results here.
December 1, 1998 (Happy December!)
  • Spent a long time reading about the text features of Swing. (Sadly discovered that the book was written before a stable version of the HTML package!!!)
  • Made some significant changes to MozartActions. Started the action hash. (I've got about 5 right now, only 40 or so to go. (AND MY PRESENTATION IS ON FRIDAY!   AAAAAAAAAAAAAAH!))
  • Discovered that DocumentActions refer directly to a JTextPane, which means that I have to create my own document actions, then redirect them to the respective document. Aah, the joys of MDI!
December 2, 1998
  • Continued learning about the joys of documents. I think I've got all of the actions configured correctly, but the document doesn't show format changes. I should try some actions other than Bold, Italics, and Underline. (Cut, copy and paste work, though!)
  • Created the FileMenu and EditMenu classes. I figured that I could clean up the MozartFrame by moving the menu declarations to their own modules. Besides, if I ever wanted to update something in the menus, this allows me that chance. I also put the constants that I was going to put into MozartActions into FileMenu and EditMenu.
  • Just for fun, I created a little batch file on my machine that synchronizes the source code and the javadocs on this server. I just thought you'd like to know that you see exactly what I have.
December 3-4, 1998
  • Spent serious time preparing for my presentation. Outline is as follows:

Introductions

Learning by Doing

A Look at Mozart

December 15, 1998
Yes, it's been a long time...its an even longer story...
  • Moved the rest of the menus into respective source files...(Format, Insert, Table, Window, Help)
  • Tried to get the HelpBrowser installed. It's really pretty neat. I want to maintain a set of help documents that will reside on this server. That way, any updates that I make to the documents will be universally updated.
  • Worked on getting files opened...
Early December 16, 1998
  • Tidied up some of the code. Admittedly, its not quite ready, but you can see how it's going.

Last Updated:12/16/98 04:38 AM


Copyright © 1999 by Jim Garlick. All rights reserved.
Last Updated: May, 1999