Tuesday 10 June 2014

DONEZIES!!

I FORGOT TO DO A "BYEBYE" POST...

SO THE PROGRAM'S DONE AND DONE AND VERY MUCH DOONNNEEE! :D

ANYWAYS, CAN'T WAIT FOR RYK'S REACTION TO THE UNZIPPING :)

Sunday 1 June 2014

PROBLEMS SOLVED~~

RAN INTO LIKE A WHO-KNOWS-HOW-MANY-WHOLE-BUNCH-OF-ERROR KIND OF THING. YEAH. YOU KNOW THAT KIND OF THING? YEAH, THAT KIND OF THING.

I'M CURRENTLY WORKING ON THE INSTRUCTION MANUAL, AND I DIDNT REALIZE WHAT WAS WRONG WITH THE PROGRAM UNTIL I BROUGH IT HOME AND LIKE DISSECTED IT PIECE BY PIECE.

First, for the collection of information from the drop down menus and the JTextArea, it was collecting the information properly. Running countless of tracing statements throughout the code finally helped us realize that the drop down menu names were right, but the comments were taken from the default comment rather than editComment, which is why it appeared not to change.

The second thing, for the array..it wasn't updating when we added a new entry, and that was because we would need to add one to the array to have the updated version of each thing.

Phase 1: Preliminary report includes:
-  Explanatory info
-  Introduction
-  3 or more aspect paragraphs
-  Optional extras
-  Professional approach
-  States who will be responsible for what
-  Relates to other areas of computer science
-  Outlines potential ethical issues and solutions
Phase 2:
-  Title page
-  Data flow diagrams (one diagram, or one level drop in Smart Ideas, for each of the 3 or more aspects)
Phase 3: Program code
-  Naming conventions
-  Indentation & spacing
-  Documentation
-  Program header info (for each class)
-  User friendliness
-  Instructions/Help
-  Use of grade 12 programming concepts
-  Program is error free

Phase 4: User manual
-  Professional
-  Language appropriate
-  Table of contents
-  Glossary/Definitions
-  Screen shots
-  Describes each part of the application in detail
-  Troubleshooting guide/ FAQ
Phase 4: Problems & Solutions
-  5+ major complex problems
-  5+ detailed solutions
-  Testing phase description
Phase 5:
Midpoint assessment (3a) form
- is created
- signed by client
Contract & Feedback
-  Feedback form is created
-  Client has completed the feedback form
-  Contract is created
-  Client has signed contract to indicate satisfaction
Phase 6: Presentation
-  Client
-  The Problem
-  Problem breakdown
-  Issues that arose
-  School/society benefit
-  Impact on environmental concerns
-  Demonstration of the product
-  Correct presentation format

Tuesday 27 May 2014

TABLE THING

YELLO! SO I'VE BEEN TESTING THE TABLE. I MEAN, NO, IT ISN'T REALLY EASIEST THING TO READ, BUT LIKE YA KNOW...

Okay, so anyway, here it is. It's not the most beautiful thing you've ever seen. Okay, yeah, it isn't. We know, don't worry. We know. So um..yeah - I'm going to edit it so it has alternating colours of white and light blue :)

Uhm so, yeah, that's the version with only white. this is it with white and blue: 


So this is the white and orange (no way I'm doing white and yellow): 

So there's the white and orange - not really a fan of this one. Looks a bit too much like yellow and white which was not a good memory at all. Too much like that disgusting old awkward looking BTT thing.

Then, here's the carnation pink and white - I think i prefer the blue one? 



Monday 26 May 2014

BREAKING!! AHHHHHHH!

OKAY I CAN'T EVEN BEGIN TO UNDERSTAND THIS WHOLE BREAKING THING AND UGH! 

OKAY. I HAVE A FOR LOOP THINGY GOING THROUGH THE TEACHER LINKED LIST, AND IF IT HAS ALREADY INSERTED THE THING, IT SHOULD JUST QUIT, RIGHT?? YEAH! IT SHOULD JUST QUIT! BUT NO! IT DOESN'T! >_< 

UGGHAAAA. 

Updated Colours

Here are some updated colour options for the teacher report card: 

This is a thing of the main screen, a rather catchy shade of green! :) 

Here's the instruction screen (or at least the bulk of it) 


Sunday 25 May 2014

HTML

Yello.

I still don't really know how to make the HTML page colourful, so I'll leave it as it is now, and try to get the program colour scheme going first.

AND HOLY FRIGAMOLE. I SPENT MORE THAN TWO HOURS TRYING TO FIGURE OUT HOW AND WHY ONE OF THE HEADINGS WASN'T LOOKING LIKE A <H1> AND A <H2> AND THE DIFFERENCE BETWEEN THE TWO AND I....FORGOT A FRICKIN ANGLE BRACKET ON THE </H1> LIKE HOLY GUACAMOLE! IS THAT HOW YOU SPELL GUACAMOLE?! GOSH WHATEVER I JUST UGH THAT WAS SUCH A FRIGGIN WASTE OF TIME!

Anyways, so I'm currently fooling 'round with the Teacher Report Card and the shade of green and shade of blue I should use :)

This is it so far - I think I might switch the text to a darker shade of blue though.

This is the option with the lightest shade of blue. 

or:

This is the option with the darker shade of blue on the text. 

I just have one thing left to do: write the deletion code (which is rather simple) and find out how to sort the array using Arrays.sort, however the heck you do that O.o

Friday 23 May 2014

Instructions and .exe file

I finished with the instructions, which includes what each button does, and what the levels for the form means.

I also found a way to execute the file! Yay :D It took me so long. I finally downloaded Netbeans onto my Windows computer and used the Jar2Exe program I downloaded to convert jar to exe, and voila. I even have a...splash screen for it although it's obviously going to change to something that is more appropriate for the application. However, it will only work on Windows, not Mac or anything else. I'll have to double check to see if it can open at school on Monday.

Oh! And writeToFile REALLY works this time. I'm serious.

Changes

In initialiseBoxes()
for(int box=0; box<sunBlindsLevels.length; box++)
turned into
for(int box=0; box<4; box++)
because the first one just doesn't make sense anymore. Sure it works the same but 4 is more to the point.

New methods

  • removeBoxValues() has been made to removeAllItems from the ComboBoxes so that I could initialize them again.
  • instructions() 


Changes Made To Reset Entry Values
In the global variable declaration area:
private JTextField teacherName = new JTextField("Type the first name of the teacher here (eg. Ryk)", 10); 
is now simply:
private JTextField teacherName = new JTextField();
and the same for:
private JTextArea comments = new JTextArea();

Added to the top of the insertEntry method:
teacherName.setText("Type the first name of the teacher here (eg. Ryk)");
comments.setText("Place comments here");

MouseClicked--> addEntryButton

  • Now has a JOptionPane that pops up when they press the button Add Entry. 
  • JComboBoxes, text fields, and text areas are reset to original values
  • Tracing statement for the teacherList is now ((Node)teachers.getLast()). instead of .get(0) so that when the tracing is printing, it will print the most recent entry that has been added (I was confused at first before I made this change because the tracing statement wasn't updating xD)

Monday 19 May 2014

HOLY COW

OH MY ROWLING, OH MY ROWLING, OH MY ROWLING, OH MY ROWLING, OH MY ROWLING I GOT THE HTML THING WORKING OH MY ROWLING HOLY COW!

I MEAN DESPITE THE FACT THAT THE TEACHER'S NAME ISN'T UP ON THERE YET - BUT HOLY SHOOT! I GOT IT WORKING FINALLY! IT ONLY REQUIRED THAT TINY BIT OF CODE HOLY SHOOT!


OH MY ROWLING OH MY ROWLING HOW THE OH MY ROWLING!!!

IT WORKS!!!!!!
OKAY, I'M RELATIVELY CALM NOW (YEAH, RELATIVELY), BUT HOLY HOLY MOLY - I'T JUST MISSING THE TEACHER'S NAME AND THE PROGRAM'S NEARLY DONE HOLY COW!

LOL

Things I've changed part two :) 

...basically everything in the displayToUser method, haha. 

I mean, pretty literally..you can just copy the entire bloody method! 

Not that this looks really good or anything, but I've struggled the entire day to create this screen, so the mere creation is really rewarding :) 

Once we find a colour scheme, I'm totally up for changing the colour of the text in the headings! 

And with the scroll pane, there's no need to worry about whether something is lengthy enough (because it will automatically increase the width of the table.. :D)  

Man this is so exciting - I don't really know why I had that much trouble with it, but the thing I love about computer programs is the creation of something from nothing. 

Okay my little rant is over - I'm going to attempt to HTML bit...

Oh maybe a little rant about the HTML - I'm thinking, I don't have to make it in a table format; I could just do something like this: 

Name: [teacher's name] 
Sunlight Level: [insert level] 
...
etc
Comments: 
[insert comments] 

Instead of formatting it and making it pretty. Although I still have a little while until this program is due - I'd still like to make the HTML file ... usable and pretty. So if I have time, I'll try the <div> tags and whatnot :) Perhaps even a bit of CSS to make it prettiful. 

Things I've changed


  • Removed the calling of menu(); method the second time in the main class constructor 
  • Inserted pre and post conditions throughout the program (for documentation purposes - really just for the marks but they do help in programming, especially cause we won't be there to be tech support next year). 
  • Inserted a bunch of comments throughout the code telling an EA member what it's doing (and what order it is reading it in as). 
  • Added a line of code adding the northIcons to to gridPanelNorth (....that's why it wasn't displaying - because I didn't even bloody add them, sheesh!). 
  • Created a JScrollPane in the the displayMethod (in other words, there's no need for any additional clicking, just scrolling)

Executable

I just realized that we haven't had enough time to find out how to make a program executable, and we should really, really, really do that soon..considering Ryk can't even run the code on his machine given that we have updated versions of java..so I mean, honestly, however has time - we should really get started on the colour scheme for the program, finding out how to make it executable, creating a title page, and maybe even starting the instruction manual... :) Just me ranting and thinking a little. 

Reading From File & HTML

Hello!

So I'm done the reading from file bit. It works! HURRAY! At least, all the tracing statements and things work, so that's really, super exciting.

Also, I've been looking at the HTML thing, and I'm thinking - it doesn't have to be in the format of a table, it can just be a list kind of like this:

Name: [insert teacher's name here]
Sunlight Level: [insert teacher level here]
...
etc.
Comments: [insert comments here]

Rather than having to be in a very professional looking way with all the table (because that not only requires an excessive amount of code, it also requires knowing HTML...which I, unfortunately, don't know that much about other than the basic <head> and <body> and <html> tag things).

+Vivian - I also just realized we really need to show Monika the initial report..like now.

Also, when you get a chance can you do post conditions and preconditions for each method that you wrote? It can be really brief, but what has to be true for each method to run and what happens afterwards :)

Saturday 17 May 2014

Things that I've changed...


  1. Renamed the LinkedList variable that +Vivian  used in the mouseListener method to "teachers" instead of "n" (and made it global...because all of the methods in that class need it)
  2. Changed all the method headings to private in the main class (except the mouseListener ones because they're abstract and must be declared public in the class for some reason? *shrug*). 
  3. Adding the line: numberOfEntries = teacher.size(); every single time we add something. 
  4. Changed the windowClosing listener on the menuFrame class, so when someone tries to close to program (pressing the 'x' button), you can ask whether they want to save it. 
    1. Vivi - once you find out how to write to the file, maybe you can just copy and paste the code there.. :) 



Friday 16 May 2014

Yeloo.

Hi :) 

Just had to post this here 'cause I'm going to need it a lot and I don't want to have to go to Google Drive and refer back to it all the time. And having this posted in more places is probably much more 

Teacher Name
Sunlight/Blinds
Vents/Heating
Recycling/Garbage
Ecoriculumn
Posters/Signs
Computers with monitors turned on (%) when not in use
Comments

BufferedReader

I totally forgot - I ended up starting the readerFromFile method last class. And I got to declaring the BufferedReader, the try catch statements, and printing out the number of indices, until I got really confused about how to read from it. 

It wasn't until I got on the bus today and it all made sense. I could read in the first __ things in the list, which would be the information required in the node. Then, I can just use the node-constructor to create a node and then add that to the teacherList. 

So yeah..weird things come to be in weird place. 

Thursday 15 May 2014

Write To File

Program now writes to a file called outFile. Includes length of the array used, teacher's name and the levels and comments.

Next: writing the code for sorting the teachers alphabetically yet.

Monday 12 May 2014

DisplayUser + Classes

So I just realized that we don't actually have to create a separate list class - we can just use the default one! Hurrah! We've refracted both versions of the program to do it..so yay.

Anyway, the display to user is nearly done :) I mean, the frame and everything is coded, the thing's just have be inserted into the array so I can test it out. All the setup for the look of it is all done though.

Node info tracing

I forgot that casting had to be done within a method and couldn't be done globally. That was why the casting of JTextArea/Field into a String wasn't working when I showed the tracing.
Tracing for Node info is good. So is the one for the linked list (since we're not making our own linked list.

Up next: reading from file.

Thursday 8 May 2014

Node info

Uhm...well Node info will now be declared when Add Entry button is pressed. Had some trouble with it before but that's over after fixing up a few things. Values from drop down list are now available for use. Now it's time for the list of teachers.

Thursday 1 May 2014

Insert Entry GUI

The GUI for the insert entry frame is finished. All the drop down menus and the JTextField for the teacher's name is in a grid layout that is added to the north border layout. The comments box is set in the centre and is a very nice box-ey length in case the user really wants to critic the teacher and give many very useful tips.

Up next is to fiddle with the ComboBoxes so that when the user presses the "Add Entry" button that's in the south border layout, the values that they chose from the drop down menus will be added to the variables that they represent, and those variables will be used for displaying onto the screen and also to record what the user chose.

Or so I think that is what will happen. I'll have to actually start coding to tell what I'm going to do with it because I might be forgetting some steps right at this moment.

Linked Lists

YELLOOOOOOOO! So I made a sudden decision that we might as well used linked lists in the program if I'm not going to do a JTable (otherwise, I would  have needed a 2D array). But in that case, it makes programming this a little easier than what it would have been but not by much. 

So I've got the insert method from the TDSB eLearning and used it in the code (I'm not sure whether it works because I need the insert method to test it, but I guess I can make something up...weirdly enough). 

Anyway, so I haven't programming any GUI things, but I have started the whole creation of the linked lists. 

I'm also considering and thinking about the printing out of the entries. I can't use a JTable (I mentioned that before). I also can't use a GridLayout to increase the the dimensions of the comments column so that's out the window. The other choice is the GridBagLayout which is just JSKDJLKVLSKDJDSIOFJLSKVJSLDKVJSODIFJDSLKFJSDFJSDLKFJSDOIFOSIDFJLSKV LSVJODSF. 

Tuesday 29 April 2014

Ah. Menu.

This probably isn't even worth mentioning but I finished adding the buttons onto the menu...maybe I should have made it prettier. But we haven't talked about the colour scheme (perhaps green and white?) yet so I didn't want to add unnecessary work to whichever one of us is going to add the logo.

Monday 28 April 2014

Viewing Entries


Quack. So I should probably find out how to make the viewing entries screen. This is what I ha(d)/have in mind, but I don't know if it's going to work. And I can't try it until the things for the initialization of the array is written...sigh.

Here's the type of "plan" that I'm thinking for the viewing 'o the entries. But as I said before, I can try to program this bit, but nothing will get done until the other array has been created. So I think I'll have to make a temporary array that has bogus values.

I also need to find a way to export from java to HTML. Anyways, onto that now..:D 

There are a few ideas for it including: 
  • String Builder
    • "Adding" all the information for the required HTML (in other words, adding each line individually using ".appends();" and then writing that to an HTML file rather than TXT file. 
  • RenderSnake
    • A list of classes here will provide head and body opening and closing tabs
    • There's a ton of HTML/Java crossovers (For instance: canvas.div(id("header")) in Java is equivalent to <div id = "header">
    • Can also make something Renderable

Oh, and at the fire drill, Vivian and I agreed that I'll do the whole initialize thing - creation of new class, lalala, get and set methods, lala. All of that fun stuff. 

ALSO RANDOM HIDDEN FACT - my posts will probably be super colourful because colours are fun :) 

Flow Chart

Huzzah, we started the flow chart, which  makes the program seem... a bit simpler than we thought it might be. At least for some parts. We've also divided up who's going to do what at this point:

Chilly:
Instructions
View Entries
Export

Vivian:
Menu
Insert Entries
Create object array


Tuesday 22 April 2014

Proposal

Well at least we started on something. We're well......we've started the proposal and filled out bits and pieces of it (at least the ones that we know)...which is mainly Introduction (and explaining what the program does), applications (adding an entry, deleting an entry, viewing entries and exporting it to HTML), relations to computer science, optional extras and potential ethical issues.

Anyway, toddles ~~. Until next time.