JGuiGenDemo Script

From lightwiki
Jump to: navigation, search

Back to JGuiGen Demo

The demo pre-script

  1. ./rec.sh
    1. rm -rf ~vds/.java/
    2. cd ~vds/downloads
    3. rm -rf jguigen
  2. enter password
  3. cd ~vds/downloads
  4. hide the panel
  5. xview JGuiGen_Screenshot.jpg & - Elegant CRUD
  6. maximize it
  7. throw it into workspace 2
  8. rec -c 1 -d /dev/dsp -t wav -r 44100 - | lame -h - junk.mp3
  9. F8 start recording swf

The Checkout and Build

  1. Here we are in a virtual network computing session ... going hardcore ...
  2. click the terminal's workspace
  3. svn checkout https://svn.sourceforge.net/svnroot/jguigen/JGuiGen/trunk/ jguigen
    1. Checking out of the latest JGuiGen source code
    2. In case this is your first time hearing about JGuiGen ... it is all about J for Java, Gui for Graphical User Interfaces, and the Generation thereof, hence "J" ... "Gui" ... "Gen"
    3. Some have said that they'd rather write code that writes code than just write code.
    4. So again what we are checking out here is code that compiles in order to generate code that compiles in order to render GUIs that allow users to do something I call ... View, add, edit, and delete from a table.
    5. The big picture here is that we will be able to quickly generate a screen that allows users to view, add, edit, and delete entries from a table.
    6. file:///home/vds/downloads/jguigen/htmlhelp/features.htm
      1. 4. The screens generated by JGuiGen can be multi-user safe.
      2. 6. All code generated by JGuiGen can run from a class, from a jar, or as part of a Java Web Start application
      3. 8. The JPanels are set up to work with Assistive Technology. for both blind and color blind.
    7. we have revision ...
    8. Let's get down to business in JGuiGen
  4. cd jguigen
  5. ls -l - looks like a normal project folder
  6. here's some images ... here's a lib for supporting libraries ...
  7. all code here is under the Gnu General Public License ... the GPL
  8. unzip JGuiGenMisc.zip - these are starter files that we usually don't want other folks committing back into the source, such as configuration files that you'll need to customize for yourself when you are generating your own Graphical User Interfaces here ... and other files that you will need to ...
  9. time ./build.sh
  10. Again, what we are doing here is building some code that builds some code that builds a screen that users can have to do views, adds, edits, and deletes from a table in a database.

Two of the widgets

  1. Ok so lets start JGuiGen ...
  2. ./run.sh JGuiGen
    1. first we will need to tell it who we are ... let's tell it we are Hale ... one of the folks in the default config file we checked out
    2. Look it found our browser ... and ...
    3. Look it found our favorite word processor, open office writer
  3. The help that is "here" one of the many examples of JGuiGen eating it's own dog food.
    1. Simply tonnes of documentation about JGuiGen e.g.
    2. here is a manual and for those of you who like to RTFM
    3. here is a read me which shows you, for example, all of the databases suppoerted by JGuiGen
    4. Let's mention the different DBs by name: Oracle, SQLServer, MySQL and Postgres
    5. You can cuddle up with this in bed some evening
  4. Users
  5. JGuiGenDemo
    1. Let launch right into a full blown gui ... with all the bells and whistles, to give you an idea of what you will be able to generate when you generate your own guis using JGuiGen
    2. Now this is a big screen with, lots, and lots of features ... let's look at a few of them
  6. here are examples of most of the visual components you can add to your GUI with JGuiGen
  7. These components are for each of the columns in a row of the table
  8. Down here is a the table with all of its rows and your users can simply navigate to the row they will want to edit in your GUI and then make the changes to that row.
  9. change the social security number
  10. change the start date
  11. change to a different row in the table and show off the validation catch
  12. sort by clicking on a column
  13. right click and drop your jaw
  14. try the new stats feature on the column you just sorted
  15. click back in the main window and change the ssn

Some validation

  1. right click ... choose next
  2. watch validation work again
  3. mention the 10 or so actions which are already coded for me, and I dont have to write code for that correctly validate and make sure the users of my gui do not loose data in irritating ways
    1. changing rows in the table
    2. right click and ... wow look at all these things you'll get ... do you want to write the code yourself to do all this?
    3. Anyway, if we try to right click and ...
      1. go to the "next" row in the table
      2. go to the "previous" row in the table
      3. "Dup" this row - which means duplicate the current row with a new id number
      4. "Refresh table" in the right click pop-up (not working ... oops)
      5. "Add" a new row
      6. "Find" another row
      7. "Extra" or any of a number of other things, like
    4. "Add" another row from the main menu
    5. "Find" another row from the main menu
    6. Or "Extra" another row from the main menu
    7. Or the "Exit" button in the upper left
    8. or even this nasty X button over here
    9. It's going to perform a check to see if we've changed something ... web developers eat your heart out
    10. Again, this checking is something we want in our gui ... it's just not something we want to actually have to sit down and write the code to do for our gui ... JGuiGen does that for us.
  4. then when we finally hit save ... we mention that this is a multi user save and what we did not just see, because it looked so painless, is that JGuiGen's gui did a multi user check to see if anything had changed since the record was retrieved.
  5. click into one of the big text fields ... nice feature ... do not want to write the code for that.

Print, EXtra, Find, Reports, and Help

  1. PRINT button that does a print screen.
  2. click on one of the columns and note the sorting
  3. Notice that "ExtRa" button ...
    1. This is just a simple button in the code that
    2. you will be able to easily find the code for it in the java
    3. rename it to "my custom report"
    4. add your own functionalty to it
    5. and look it has built in functionality underneath that you might like to use ... option 1, 2, 3
  4. Find
    1. First name "is equal to" Hale
    2. OR
    3. last name "is like" Sing%
    4. Execute
    5. Find ... note it saved our most recent find critereon
    6. note the "Show inactive" button which toggles and ... guess what allows the user to find rows that they or someone else deleted last week, but were not really deleted of course ... just flagged that way so that you did not have to write that code again ... just use JGuiGen
    7. Click Help in the Find box and talk it
  5. Reports
    1. 7. The GUIs are internationalized ... text, dates in other countries, symbols for money, and even the hot keys "y" for "yes" becomes "s" for "si senior" ...
    2. Click Help in the Report tab and talk it
  6. Now let us move on now and generate our own gui
  7. Exit out of JGuiGenDemo
  8. show them the first menu where the options are for creating your own GUI
  9. Exit JGuiGen