Easy-to-follow video tutorials help you learn software, creative, and business skills.Become a member

Using the Builder extension

From: ColdFusion Builder Essential Training

Video: Using the Builder extension

We're going to use an extension to build an extension? You've got it. We're going to use the Extension Builder extension, which ships with CFBuilder, to do all the dirty work in building out our ide_config.xml file. Now if you haven't already watched the rest of the videos in this chapter, be sure to go back and watch them all, so that you understand how all the moving parts fit together before you try and take the easy way out. With that being said, let's start learning how to use the Extension Builder. So, you can right-click anywhere in your project, choose Adobe Extension Builder and New.

Using the Builder extension

We're going to use an extension to build an extension? You've got it. We're going to use the Extension Builder extension, which ships with CFBuilder, to do all the dirty work in building out our ide_config.xml file. Now if you haven't already watched the rest of the videos in this chapter, be sure to go back and watch them all, so that you understand how all the moving parts fit together before you try and take the easy way out. With that being said, let's start learning how to use the Extension Builder. So, you can right-click anywhere in your project, choose Adobe Extension Builder and New.

The first page of the Extension Builder just asks where you want your new extension to be placed. By default, it's going to specify the folder that you right-clicked on, and then we can choose to create a folder with the extension name. If you uncheck this box, CFBuilder is going to place all of your extension files in the Chapter 8 folder, which is not what we want, since we have a bunch of other stuff in there already. So, we're going to leave this box checked, and after we give our extension a name, CFBuilder will create the folder for us. Now that the easy part is done, we'll click OK.

Now we need to configure everything about the extension. As we go through each of the tabs, you'll need to make sure you click Save in all the right spots, so your data is maintained for when you finally click Finish and generate the extension. So, let's go through each of the tabs. The first one is all of our extension details, basically what the user sees when they install the extension. So, let's just call this Test Extension. We're going to specify our author and the version, as well as an E-mail address, our description, and our license.

Once we have all that complete, click Save. Then we can go on to the next tab. The next one specifies all of our menu contributions. Basically, what we want to display when a user right-clicks in any of the appropriate spots. So, I click Add menu, and I just need to fill out my details for that main flyout menu. If you recall in our previous videos, this is what's going to display in the Name attribute of the menu tag. So, we'll call this Test menu, and specify our target.

You can see we have rdsview, projectview, outlineview, and editor. I'm going to stick with projectview, which we used in the Creating User Interfaces video. Once I have that saved, I can click on Action and start creating our Action tags. The Name attribute is going to be that secondary flyout on our menu. So, in this case, let's just call it Test Action, and if I had previously defined any handlers, I would see them listed here in this list, but I need to create a new handler Id, since I haven't yet defined any. Call this testHandler. For our handler file, we'll just name it testHandler.cfm.

I can then define if I want that handler to show a response, and how big I want the dialog to be for this particular handler. For our title, let's call it Test Action Inputs. And then we'll specify a dialog height and width. Let's make it 600 wide and 400 tall. I can then specify a close handler file, which is a ColdFusion file that will be run if the user closes the dialog without actually clicking OK or Finish. When I have that action complete, I can click Save and then start adding my inputs.

I'll click Add Input, and I can specify all of the attributes for our Input tag. Let's create an input for an E-mailAddress, no spaces or special characters, and then a Label. I can specify a tooltip, and I have a handy list of all the valid types for our inputs. For this one, we'll leave it as a string. And then I can specify defaults. I can either hardcode a default here, or I have a handy list of system variables that can be used as a default. For example, the project name that they clicked on, the project location, the server home, or even the wwwroot for the ColdFusion server that's associated with this project.

The rest of the dialog allows me to add some validation, such as the Pattern, Error Message, Help Message, for Boolean values, whether this box is checked by default, and whether it's required. I'll click Save and Done. Now I can see the input for my action. I can continue clicking Add Input, and add as many as I'd like. If I see something I need to edit or remove, I can just click the appropriate links here in the Actions column. When I'm through defining this action, I'll scroll down, click Done, and then I'm back to my menu contributions list.

I can see all the actions that are associated with this menu. I can also add filters from here. A filter allows me to limit this menu to a particular folder, project, or file by using a regular expression. For example, if I only wanted the extension to be available to a folder that was named Chapter8, I could choose folder, and then type Chapter8 into the Pattern. For now, I'm going to leave the filters off, so we'll click Done without filling out anything. So, we still have no filters added.

When I'm done with this menu, I'll click Done, and now I have a list of defined menus. I can continue adding as many menus as I want. For now, we'll stick with the one and move on to our handlers. Now because I've already defined at least one handler in my menu, I can see that handler here in my list. I can edit or delete it directly from here or add new ones. If I click Add Handler, I'm going to end up with the same dialog that I had through the Menu Contributions tab.

Now the last tab is Install Wizards. ColdFusion Builder extensions can actually have multi-page wizards that will guide a user through all the necessary inputs for your extension. So, if you have a large extension that requires many inputs from the user, it might make sense to break it up into more digestible pieces. To configure a wizard, you first need to give it a width and height. We'll do 600x400, the same as our previous menu contributions. We can then specify a handler for the wizard. We'll leave it as testHandler.

If I wanted a new one, I can specify here. And then click Save. Once the wizard is defined, I can then click Add Page. The setup is almost exactly the same as an action. You're going to specify a title for the page. Let's call this Page 1, click Save, and then start adding inputs. We'll just do a quick input here. We'll ask for the user's project name. Leave it as string and for the default, we'll choose the currently selected project, and make it required.

Click Save and Done. Now I have my input for this first page of the wizard. Click Done again. And now I can see each of my pages. I can continue to click Add Page and add as many pages to the wizard as I'd like. Now that I've been through all the tabs, saved each of them as I've gone, I'm now ready to click Finish. I'm going to get a complete summary of exactly what the Extension Builder is going to generate for me. It shows where it's going to be installed, all of my details, each of my menus, their actions and inputs, as well as the installation wizard.

At this point, I can return to the Home and actually go through and double-check everything if I see something wrong. I can click Cancel, which is going to remove all of the information and you won't get a confirmation, so make sure that's actually what you want to do, or the button I really want to click is Generate Extension. Extension then tells me everything that it did. It created a folder for me, created my ide_config.xml file, created the handlers directory, and added my testHandler. And it also created a framework directory and copied a bunch of framework files that I'm going to be able to use to build out my ColdFusion handlers.

It's also created an application.cfm, which actually disables debugging and does some other fancy tricks to make sure that there's no variable clashing as I execute my extensions. Then it has installed the extension for me at this particular location. So, I'll click Close. If I go to my Test Extension folder, I can see my ide_config.xml file. Go ahead and open that up and you can see it's done a whole lot of work for me. Now it didn't add many inputs, so this isn't quite as impressive as it could be, but as you can imagine writing all of these input fields is far more tedious than just filling out the dialogs through the Extension Builder UI.

But the more interesting part is in the handlers directory. Here, I have my application.cfm and my testHandler, and inside my testHandler, it's actually running part of this ColdFusion Extension framework. It's processing all of my request information into a variable, which it then dumps to the page and tells me where I need to add all of my handler logic. Now if you're serious about developing extensions, it's worth your time to go to the framework directory,and take a look at some of the tools available to you. There are CFCs for not only processing the request from the extension, but also pulling out field information from tables, getting info on tables themselves, and even taking a look at Outline nodes and pulling project info directly from the Navigator.

Show transcript

This video is part of

Image for ColdFusion Builder Essential Training
ColdFusion Builder Essential Training

40 video lessons · 3879 viewers

Daniel Short
Author

 
Expand all | Collapse all
  1. 7m 48s
    1. Welcome
      59s
    2. Installing ColdFusion Builder
      2m 20s
    3. Installing ColdFusion Builder as a plug-in
      3m 18s
    4. Using the exercise files
      1m 11s
  2. 17m 42s
    1. Workspace overview
      2m 25s
    2. Organizing your workspace
      6m 19s
    3. Adding and selecting workspaces
      2m 53s
    4. Installing and managing plug-ins
      6m 5s
  3. 12m 12s
    1. Creating projects
      2m 11s
    2. Importing projects
      2m 48s
    3. Creating project working sets
      2m 23s
    4. Managing projects
      2m 22s
    5. Linking folders
      2m 28s
  4. 23m 2s
    1. Configuring and managing ColdFusion servers
      6m 26s
    2. Using the Services Browser
      4m 15s
    3. Using RDS Dataview and Fileview
      4m 52s
    4. Using FTP
      7m 29s
  5. 18m 10s
    1. Creating editor profiles
      2m 6s
    2. Using Code Assist
      5m 43s
    3. Setting code coloring
      4m 5s
    4. Using shortcut keys
      3m 5s
    5. Working with outlines and syntax checking
      3m 11s
  6. 37m 40s
    1. Using code completion
      7m 25s
    2. Using snippets
      9m 23s
    3. Using SQL editing and the Query Viewer
      5m 55s
    4. Working with components
      7m 27s
    5. Working with variable mapping
      2m 14s
    6. Navigating code and documents
      5m 16s
  7. 13m 12s
    1. Getting set up
      3m 50s
    2. Using the ColdFusion debugger
      5m 37s
    3. Watching logs with Tailview
      3m 45s
  8. 13m 8s
    1. Installing extensions
      4m 5s
    2. Using the CFC Generator extension for ColdFusion 8
      4m 52s
    3. Using the CFC Generator extension for ColdFusion ORM
      4m 11s
  9. 34m 5s
    1. Building a simple contact form extension
      3m 42s
    2. Creating user interfaces
      8m 55s
    3. Packaging the extension
      3m 55s
    4. Building the handler
      8m 10s
    5. Using the Builder extension
      9m 23s
  10. 25s
    1. Goodbye
      25s

Start learning today

Get unlimited access to all courses for just $25/month.

Become a member
Sometimes @lynda teaches me how to use a program and sometimes Lynda.com changes my life forever. @JosefShutter
@lynda lynda.com is an absolute life saver when it comes to learning todays software. Definitely recommend it! #higherlearning @Michael_Caraway
@lynda The best thing online! Your database of courses is great! To the mark and very helpful. Thanks! @ru22more
Got to create something yesterday I never thought I could do. #thanks @lynda @Ngventurella
I really do love @lynda as a learning platform. Never stop learning and developing, it’s probably our greatest gift as a species! @soundslikedavid
@lynda just subscribed to lynda.com all I can say its brilliant join now trust me @ButchSamurai
@lynda is an awesome resource. The membership is priceless if you take advantage of it. @diabetic_techie
One of the best decision I made this year. Buy a 1yr subscription to @lynda @cybercaptive
guys lynda.com (@lynda) is the best. So far I’ve learned Java, principles of OO programming, and now learning about MS project @lucasmitchell
Signed back up to @lynda dot com. I’ve missed it!! Proper geeking out right now! #timetolearn #geek @JayGodbold
Share a link to this course

What are exercise files?

Exercise files are the same files the author uses in the course. Save time by downloading the author's files instead of setting up your own files, and learn by following along with the instructor.

Can I take this course without the exercise files?

Yes! If you decide you would like the exercise files later, you can upgrade to a premium account any time.

Become a member Download sample files See plans and pricing

Please wait... please wait ...
Upgrade to get access to exercise files.

Exercise files video

How to use exercise files.

Learn by watching, listening, and doing, Exercise files are the same files the author uses in the course, so you can download them and follow along Premium memberships include access to all exercise files in the library.


Exercise files

Exercise files video

How to use exercise files.

For additional information on downloading and using exercise files, watch our instructional video or read the instructions in the FAQ.

This course includes free exercise files, so you can practice while you watch the course. To access all the exercise files in our library, become a Premium Member.

Join now "Already a member? Log in

Are you sure you want to mark all the videos in this course as unwatched?

This will not affect your course history, your reports, or your certificates of completion for this course.


Mark all as unwatched Cancel

Congratulations

You have completed ColdFusion Builder Essential Training.

Return to your organization's learning portal to continue training, or close this page.


OK
Become a member to add this course to a playlist

Join today and get unlimited access to the entire library of video courses—and create as many playlists as you like.

Get started

Already a member?

Become a member to like this course.

Join today and get unlimited access to the entire library of video courses.

Get started

Already a member?

Exercise files

Learn by watching, listening, and doing! Exercise files are the same files the author uses in the course, so you can download them and follow along. Exercise files are available with all Premium memberships. Learn more

Get started

Already a Premium member?

Exercise files video

How to use exercise files.

Ask a question

Thanks for contacting us.
You’ll hear from our Customer Service team within 24 hours.

Please enter the text shown below:

The classic layout automatically defaults to the latest Flash Player.

To choose a different player, hold the cursor over your name at the top right of any lynda.com page and choose Site preferencesfrom the dropdown menu.

Continue to classic layout Stay on new layout
Exercise files

Access exercise files from a button right under the course name.

Mark videos as unwatched

Remove icons showing you already watched videos if you want to start over.

Control your viewing experience

Make the video wide, narrow, full-screen, or pop the player out of the page into its own window.

Interactive transcripts

Click on text in the transcript to jump to that spot in the video. As the video plays, the relevant spot in the transcript will be highlighted.

Are you sure you want to delete this note?

No

Your file was successfully uploaded.

Thanks for signing up.

We’ll send you a confirmation email shortly.


Sign up and receive emails about lynda.com and our online training library:

Here’s our privacy policy with more details about how we handle your information.

Keep up with news, tips, and latest courses with emails from lynda.com.

Sign up and receive emails about lynda.com and our online training library:

Here’s our privacy policy with more details about how we handle your information.

   
submit Lightbox submit clicked
Terms and conditions of use

We've updated our terms and conditions (now called terms of service).Go
Review and accept our updated terms of service.