[osflash] Eclipse view quick start guide
Luke Hubbard (luke at codegent.com)
king.selassie at gmail.com
Sat Jun 18 05:52:02 PDT 2005
Hi Martin,
Great intro to creating a plugin.
I've added it to the wiki for reference and incase people want to add notes.
http://www.osflash.org/doku.php?id=eclipse:plugin_development_guide
-- Luke
On 6/18/05, Martin Wood <flashdev at relivethefuture.com> wrote:
> Right, heres the slightly more detailed steps towards getting a custom
> swf view :
>
> 1. Install the Plug-In development environment (PDE) if you need to.
>
> 2. Read the docs.
>
> :)
>
> really though, goto
>
> Help Contents
>
> Platform PlugIn developer guide
>
> Programmers Guide
>
> Simple plug-in example
>
> This gives you a nice run through creating your first plug-in, the only
> problem i had is that i couldnt view the help properly when a dialog was
> showing in eclipse, so i ended getting halfway through the tutorial and
> being confronted with a panel and no assistance, so in case that happens
> on your eclipse, i'll rewrite all the steps here and try and give them a
> bit of explanation.
>
> BUT, please read the tutorial itself, because im not going to ^C ^V the
> whole lot in here :)
>
> Im running 3.02, so i cant say what the steps are for 3.1, if someone
> else wants to run through this in 3.1 and say if its the same, or where
> things are different that would be handy, because i guess most of you
> are running 3.1 for the latest version of flashout
>
> Ok, so start with creating a new plug-in project, File->New->Project and
> choose Plug-in project.
>
> Next we give the project a name, and the convention for naming plugin
> projects is with the classpath style com.foo.blah so use your own here
>
> i'll call mine com.relivethefuture.flashpanel
>
> my project settings say create a java project and use src and bin
> folders, the way nature intended.
>
> i wont worry about the OSGI stuff about the bottom yet, i havent got a
> clue what it means.
>
> Next up are the plugin properties, we'll go through them one by one so
> that when eclipse generates the project you hopefully wont be thinking,
> why the hell has it got that name? (which ive done multiple times :)
>
> ID : from what i can find in the help docs this is a unique way of
> naming your plugin so you can do things with it later on in other parts
> of the platform, so i'll follow the example and just use the package
> name : com.relivethefuture.flashpanel
>
> Version : :)
>
> Plug-in name : This is what will appear in the Window->Show View menu
> underneath our category
>
> Plug-in provider : thats your provider name, leave it as is.
>
> Runtime Library : the name of the .jar file it will build containing
> your binary code.
>
> In the next box we have some settings for a plug-in class. This is the
> class that will be created for managing and controlling the plugin. It
> does things like managing its lifecycle and gives you somewhere to add
> resource control or something.
>
> The name of the class looks fine from the default, so lets leave that,
> and im certain were making contributions to the UI, so that should be
> checked.
>
> If you are making a plugin thats just a resource like documentation then
> you wont need this checked.
>
> Click Next
>
> Template
>
> We'll do as the manual says and create a template, and we'll select
> plugin with a view.
>
> Click Next
>
> Now we have to configure the class responsible for creating and managing
> the view we actually want to work with.
>
> The manual says to change the package back to the base package, but i
> quite like it in its own package, so i leave that at the default.
>
> Next we have to choose a name for the class, so if were intending to
> make a log viewer, lets says so and call it : LogViewer
>
> Now we can give it the name that appears under the category in the View
> menu, lets use : Log Viewer
>
> The next two boxes control our category information, which you will see
> as a folder in the View menu.
>
> Stick with the default ID, but i fancy giving it a nice name, so im
> going to use : FreeFlash
>
> The next bit doesnt matter too much for this demo (as in the manual
> we'll just delete it all and replace it with something else, but its
> worth having a look through it to get an idea of what youre dealing with)
>
> But, we'll follow their advice and not add the view to the resource
> perspective. (Untick the box)
>
> Once ive got through this and understand it i'll have a look at creating
> and configuring perspectives so we can combine our custom panels with
> asdt / flashout / whatever in our own layouts which can be triggered by
> choosing a .as file or similar.
>
> :)
>
> so, on we go, click next
>
> Lets follow the instructions and not add any of these features, so
> untick all the boxes, although they do look interesting, maybe next time.
>
> so, click Finish, and you'll probably be asked to switch to the plug-in
> development perspective, which is a good idea.
>
> so, click Yes and we should see the plugin configuration panel.
>
> Onto the next section, creating the view.
>
> We want to use the SWT Browser in our view, and nothing else yet, so
> we'll start with a skeleton view and add the browser code later.
>
> so, open up the src folder and dig right down to the bottom where our
> view class is. Open the .java file and either read it now, or delete
> everything apart from the package declaration and carry on.
>
> Now we have a nice clean file, paste in this code :
>
> import org.eclipse.swt.widgets.Composite;
> import org.eclipse.ui.part.*;
>
> public class LogViewer extends ViewPart
> {
> /**
> * The constructor.
> */
> public LogViewer()
> {
> }
>
> /**
> * This is a callback that will allow us
> * to create the viewer and initialize it.
> */
> public void createPartControl(Composite parent)
> {
> }
>
> /**
> * This is where we do something useful if we are bothered
> * about the focus.
> */
> public void setFocus()
> {
> }
> }
>
> // END CODE
>
> right, so we'll need to create the browser in the createPartControl
> method, kind of like an onLoad for our plugin view.
>
> the SWT is just called browser, so with the minimum of typing lets do :
>
> new <CTRL + SPACE> and select the 'new' template
>
> Browser <TAB> b <TAB> parent, SWT.WRAP <ENTER>
>
> nice :)
>
> now we get the lovely red cross on the side complaining about not
> knowing what a Browser is and what SWT is, so click it and let it fill
> in the imports with SWT and org.eclipse.swt.Browser.
>
> so, make sure your problems panel is up and theres nothing in there for
> this project (i often use the filter settings on the panel to just show
> problems for the enclosing project)
>
> Now we need to stick some content in the panel, so find where the swf
> you want to use is on your hard drive and add the call to setUrl :
>
> b.setUrl("file:///D:/Work/Dev/Flash/Tools/LogViewer.swf");
>
> but with your own path of course :)
>
> now save the file, and lets launch a test. The easy way to do this is
> with a run-time workbench, basically another copy of eclipse but that
> can run plugins and features you are developing. very handy. :)
>
> So you should be able to drop the menu by the Run button, go to Run As..
> and select Runtime Workbench
>
> Another copy of eclipse should fire up.
>
> In the runtime workbench, go to the Window menu, Show View -> Other, and
> in the dialog you should find your new view with the names from earlier.
> So mine has a FreeFlash folder and inside is the Log Viewer, double
> click that and bingo (hopefully), a nice panel you can call home.
>
> if you do have any problems, please read the help provided with eclipse
> and check everything, i'll try and answer what i can, but this is all i
> know :)
>
> but do let me know if ive got something blatantly wrong.
>
> thanks,
>
> martin
>
>
>
>
> _______________________________________________
> osflash mailing list
> osflash at osflash.org
> http://osflash.org/mailman/listinfo/osflash_osflash.org
>
More information about the osflash
mailing list