Pages

John Lynch, Founder of Lynchburg VA

In my 30 minute Lynchburg photo-shoot, I also learned that John Lynch founded the city in 1786. I have the picture to prove it.  I am assuming that it would be far too an elaborate prank to pull of deceit in such a public setting. 

 

John Lynch, founder of Lynchburg in 1786

John Lynch, founder of Lynchburg in 1786

Lynchburg, VA WWI Memorial

 

WWI Memorial at the Lynchburg, VA courthouse

WWI Memorial at the Lynchburg, VA courthouse

Walking up the staircase leading to the Lynchburg Courthouse has several memorials to those from Lynchburg that sacrificed their lives in wars.

 

Here is a pic from the WWI Memorial

Death To All Insects

I got the chance to walk quickly through the historic part of downtown Lynchburg before the sun went down.  The architecture is interesting to look at, I wish there were more of it. 

The Amazing Square building was interesting.

 

Death To All Insects

Death To All Insects

Here is a pic of the Courthouse, which is now a museum of Lynchburg history.  I guess this is a fairly famous view — it was one of the pictures hanging in my hotel room.

 

Lynchburg Courthouse

Lynchburg Courthouse

James River Foot Bridge

I chose to drive to Lynchburg, VA this week and had a wonderful drive there. I hope the drive back is as good. It was a gorgeous day filled with lovely scenery. If I had more time, I would have loved to take more pictures. 

 

 

James River Foot Bridge, Black and White

James River Foot Bridge, Black and White

Since there was a small parking lot close to this scene where one could put in a small boat like a kayak or canoe, I stopped and took this picture. A bit of googling revealed that I was taking a picture of the James River Foot Bridge. I hope that is correct.

The black and white treatment worked really well on this one. Below is a different shot in color:

 

James River Foot Bridge

James River Foot Bridge

Frozen Foliage

 
The sun came out today and even though it was still pretty frigid an slippery with ice, I felt like a walk was in order. I took a few pics along the way. This is a pic of ice on a shrub I saw while out walking.

 Frozen Foliage

Frozen Foliage

 

 This is just another piece of frozen foliage I saw that I thought was interesting. 

 

More Frozen Foliage

More Frozen Foliage

The Visitor

When the snow has fallen, one of the interesting things to observe is the pattern of footprints around the house.  Often, children will run through the yard, or we’ll see the trail of the gas meter reader. 

Yesterday, we found an interesting set of prints on our doormat: a single set of bird prints. From what I could tell, it appears that the bird flew directly onto our mat, perhaps knocked on our door and flew away again without taking a step. 

Bird Prints

Bird Prints

Infomercial Life Lessons – You Don’t Realize Your Problems

I recently caught a glimpse of Billy Mays pitching for Mighty Putty.   Several things struck me that I had never considered before:

  • If a glass gets a hole in it, glue can not plug the hole like Might Putty.
  • Epoxy is messier than Mighty Putty.
  • Power tools like drills are too destructive. Mighty Putty would be safer. 
  • Normal adhesives don’t allow me to pull an 80,000 pound truck.

I had no idea how many problems faced me without the aid of this product.  In fact, I was completely unaware of this blind spot of adhesive unpreparedness.

After thinking a bit further, I decided I didn’t honestly have a looming need to stick something to the wall and couldn’t recall the last time I needed to repair a hole in a drinking glass. It turned out that I didn’t need to order now.

Nevertheless,  Billy taught me something valuable — often we are not equipped to realize our own problems or weaknesses.  Many times it takes an independent observer to point them out.  All too often, we dismiss that person as just another know-it-all, which they usually are. Instead, we fancy ourselves as figurative master craftsmen able to easily navigate drilling through our bathroom tile or mix a mean epoxy.  

Most of us are delusional.  Billy knows better. He knows our problems and just wants to help. 

 

 


Looking Forward To Spring

 

Flowers at Prairie Oaks

Flowers at Prairie Oaks

Spring is a long way off yet here in Ohio. I was reviewing some pictures I took in 2008 while in Prairie Oaks metro park and am looking forward to seeing some greenery and life soon in 2009.

For now, I’ll try to enjoy the winter walks.

Floating Field Fun

Floating fields in Adobe LiveCycle Designer allow you to create text in a form that contains variables such that the text wraps around these variables according to the length of the variable text. Using them is mostly straightforward in situations where they aren’t expected to change as a result of form interactions. If you do, however, the solution is less obvious.

The examples shown below were done in Adobe LiveCycle Designer 8.2.

The Scenario

  1. We have a ‘legal’ document that is created, as in a LiveCycle process, that contains boilerplate text which is a combination of static and dynamic information like the user’s name and a corporate name.
  2. We’d like the boilerplate text to dynamically size itself around the dynamic portions to account for different length names.
  3. We also have a few editable fields in another portion of the form, which also includes the users name. If a user needs to modify their name, we’d like the boilerplate text to update itself as well. One of our customers might be Prince, as in ‘The Artist Formerly Known As Prince’.  We honestly don’t know what his legal name is at any given time, so we’ll allow him to change this as needed.

These aren’t unusual requirements, nor do they seem at first glance difficult to achieve.

  1. If the floating field hasn’t already been created, we’ll do that first in the appropriate location of the form. No problem.

    Floating Field Creation

    Floating Field Creation

  2. Next, we’ll add some JavaScript to the initalize event of this floating field(’floatName1′) and set its value to that of the matching field that has been merged. No problem.
    this.rawValue = subMatchingField.txtName.rawValue;
  3. We’ll define the value for the corporate name as a script element on the form itself. No problem.

    Storing a variable in a script object

    Storing a variable in a script object

  4. Now, let’s test that if the user updates the editable field, the floating field would update as well. Problem. Changing the Name from ‘Prince’ to ‘Prince Rogers Nelson’ did not also update the boilerplate text.

    Changing the name does not update the floating field

    Changing the name does not update the floating field

Once the form is rendered in the client( Reader, Acrobat, etc.), some trickery is required if we need modify a floting field in conjunction with an interactive event.

How do we do this?

There are at least 2 different ways I have discovered:

1.Force a Form Re-layout

Below, is the same script we had used in step 4 above. Only now, we are invoking xfa.layout.relayout() prior to updating the field. This forces the form to go through the layout process again, and will now be able to adjust the floating field.

xfa.layout.relayout();
subBoilerPlate.floatName1.rawValue = subMatchingField.txtName.rawValue;

2. Modify the floating field on the layout:ready event

While this works, I can’t recommend this approach several reasons.

  • Firstly, the event fires quite often when working with an interactive form, so this script will be executed quite often, not just when the specific field in question is updated. Recall that the layout:ready event fires as a result of any ’substantial’ changes on the entire form, not just the field we have attached the script to.
  • Secondly, I discovered something quite interesting that I don’t know if it is a feature or a bug.  In either case, I don’t quite understand it, so can’t recommend it. It turns out that setting the value of the floating field to equal the matching name field on the layout:ready event instead of the initialize event doesn’t work for the reasons I thought it would .  In fact, if I leave my script to fire on the initialize event of the floating field and then add even something as trivial as a commented line of code in the layout:ready event on any field, the floating field will again update as we want it to.  It’s as though just going through the effort of trying to interpret any script during the layout:ready event is enough time to allow the update to happen.  To me, that doesn’t feel trustworthy. If anyone can explain this better, please leave a comment.

Summary / Sample

The attached XDP file below demonstrates the situation described above and how we might address it.

For ease of demonstration, I have two buttons on the form to attempt to trigger the update in the boilerplate text section as well as to update another text field. This allows you to see how the floating field behaves differently. In a real world scenario, you might actually see the script on the exit event of the field ‘txName’.

The first button will attempt to to the update without using xfa.layout.relayout() whereas the second button does.

Hope this helps — good luck!

Download Sample:  Floating Field

Great View of the Chicago Skyline

 

Chicago Skyline view from 49th floor of 175 North Harbor, daytime

Chicago Skyline view from 49th floor of 175 North Harbor by day.

 

 

View of from 175 North Harbor, 49th floor

View of from 175 North Harbor, 49th floor by day.

We had a great weekend in Chicago. This picture was taken from the condo we rented on the 49th floor of 175 North Harbor. We had a perfect view of Lakeshore Drive, Millenium Park, Cloud Gate, Grant Park, Shedd’s Aquarium, The Field Museum, The Art Museum much of Michigan Avenue and of course Lake Michigan. 

I finally made it to Intelligentsia on Randolph and had what has to be the single best cup of coffee I have ever had: Kenya, Ndaroini brewed with the Clover.  I can’t wait to try the Black Cat espresso.