University of Notre Dame NetScale Laboratory

Changes I Made

In order to get SoNIA to do what we needed it to do, I need to make changes to the code. This is a list of what I did, and in which files.

In a number of files there is a Point translate. I used that to keep track of how I should translate the picture. So that is in SoniaController? , LayoutWindow? , and NodeMover? for sure, but just in case. Just know anything that has translate in it, was added by me.

Also, everything except for the above mentioned has a comment 'Added by GregAllan' next to it. So if you search that in the .java files, you will see what all I changed.

sonia.SoniaController.java

Added the fields:
  • private NodeClickedWindow? nodeClickedWindow;
  • private NodeClickedArt? nodeClickedArt;

main():

  • boolean tempBigfont = false;
  • boolean tempStep = false;
  • boolean tempChirp = false;
  • The 7 or so commented lines under these for debugging purposes

In the for loop in main():

  • if (arg.startsWith("output:")){...}
  • if (arg.startsWith("bigfont:")){...}
  • if (arg.startsWith("step:")) {...}
  • if (arg.startsWith("chirp:")){...}

In loadFile() :

  • else if (fileName.endsWith(".xml")) {...}

runBatch():

  • if(step){...}
  • else if(outputFileName!=null){...}

createLayout():

  • added the NodeClickedWindow? stuff
  • added the NodeClickedArt? stuff

I also added the last 7 methods in the file.

sonia.ui.ExportableFrame.java

Added the whole kludgeExportContent(), used in batch mode when you want to output only one frame instead of a movie.

sonia.NodeMover.java

Added the fields:

  • public static final String STARS = "**********************";
  • public static final String ARROWS = "<><><><><><><><><><><>";

Added everything in the mouseClicked()

sonia.parsers.DotSonParser.java

at the end of the ParseNetwork() there is a try-catch block I added. It checks to see if there is a .meta file with the same name as the .son file it just read it. If there is, it then calls the parseMetaData(s, nodeList). s being the scanner it tried to open with the file name. If there is no .meta file, then things proceed as normal.

sonia.MetaData.java

I added this whole file to be able to associate more data with a particular node. NodeAttribute? uses this.

sonia.NodeAttribute.java

Added field
  • public MetaData? meta_data = new MetaData? ();

sonia.LayoutSlice.java

Added the gOutDegree(); Added the gInDegree();

Added Vector users Added Vector apps

added the populateUsersCombo() added the populateAppsCombo()

sonia.settings.{LayoutSettingsDialog.java, GraphicsSettingsDialog? .java, ApplySettingsDialog? .java} & sonia.layouts.MultiCompKKLayout.java

Changed a couple of the fields so that they would default to what I wanted them to default to

sonia.render.Render.java

Modified the paintNodeLabels method, add the last parameter to it, boolean bigFont. So this way when you call it, it checks to see if that flag is set and if it is then it will make the labels be a size eighteen.

sonia.render.Graphics2DRender.java

In the paintNodeLabels() function i added the if(bigFont){...} statement, it changes for a moment paints the label, and then changes back

sonia.parser.XMLtoSon.java

Added the whole file. Takes an XML file and graphs the hierarchy

sonia.parser.ChirpXML.java

Added the whole file. Pings the chrip site, then graphs the data.

sonia.ui.NodeClickedWindow.java

Added the whole file. Makes a new frame which you can output data about a node that you clicked

soina.ui.NodeClickedArt.java

Added the whole file. Does nothing except pop up as of now. But we talked about using it to draw something, hence the art in the title;

soina.settings.GraphicsSettingsDialog.java

I commented out four lines in readsettings(), the ones to do with WindowHeight? , and WindowWidth? , this is because when you had resized your pane, and then you clicked the View Options button, it would put the original height and width into the boxes, and I wanted it to put the current height and width into the appropriate boxes. Commenting these four line out made that possible.

sonia.ui.LayoutWindow.java

Added a mouseMotionListener, and a mouseListener, and the functions associated with them

Added the function APPLY(), used in KludgeExportContent? , this was so you could apply the apply settings without actually having to click on any buttons.

in the moveNodes() method i added the LayoutArea? .removeMouseListeners and LayoutArea? .addMouseListeners, so that when you instantiated another listener they wouldn't mess with each other.

sonia.Meta2Data

Added the whole file. It parses the .meta2 file that is associated with a .son file.

-- GregAllan - 31 Jul 2007

r1 - 31 Jul 2007 - 21:45:22 - GregAllan
This site is powered by the TWiki collaboration platformCopyright © by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback
Syndicate this site RSSATOM