As far as I know the code is open source but you could add a comment at his blog (http://www.jabbypanda.com/blog/?p=28).
You will either have to disable the datagrids click event handler on that specific column or figure out a way to put each link in its own column. --- In [email protected], "aramsdell2000" <aramsdell2...@...> wrote: > > Actually I am not so sure how this will work in a datagrid. One datagrid cell > would have multiple hyperlink buttons. Right now the click event for the > datagrid behaves differently depending on which column you click. In another > column I have one link button per row. But for this one, I would have several > link buttons in one row's cell. Do I do nothing on the datagrid's click event > and then the listerner events for the links would take over? Haven't tried > anything yet, just thinking about how to approach it. > > Thanks! > > --- In [email protected], "aramsdell2000" <aramsdell2000@> wrote: > > > > Oh wow, this looks great! Thank you! This looks like what I want to do, > > just curious, how do I cite it if I use it/ modified version of it?? I can > > add a link to his website and blog in the code? > > > > --- In [email protected], "valdhor" <valdhorlists@> wrote: > > > > > > Here is a quick and dirty example using the hyperlink component from > > > jabbypanda (http://jabbypanda.com/labs/hyperLink/srcview/index.html): > > > > > > <?xml version="1.0" encoding="utf-8"?> > > > <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" > > > layout="absolute" width="700"> > > > <mx:Script> > > > <![CDATA[ > > > import mx.collections.ArrayCollection; > > > > > > [Bindable] public var initDG:ArrayCollection = new > > > ArrayCollection([ > > > {Company: 'Apple Computer', WebSites: > > > 'www.apple.com,store.apple.com,developer.apple.com'}, > > > {Company: 'Google', WebSites: > > > 'www.google.com,code.google.com,mail.google.com'} > > > ]); > > > ]]> > > > </mx:Script> > > > <mx:DataGrid id="myGrid" dataProvider="{initDG}" > > > rowCount="{initDG.length}"> > > > <mx:columns> > > > <mx:DataGridColumn width="120" dataField="Company" > > > editable="false"/> > > > <mx:DataGridColumn width="500" dataField="WebSites" > > > itemRenderer="Renderers.LinksRenderer"/> > > > </mx:columns> > > > </mx:DataGrid> > > > </mx:Application> > > > > > > LinksRenderer.as: > > > package Renderers > > > { > > > import flash.net.*; > > > import htmltext.controls.HyperLink; > > > import htmltext.controls.events.HyperlinkEvent; > > > import mx.containers.HBox; > > > > > > public class LinksRenderer extends HBox > > > { > > > private var link1:HyperLink = new HyperLink(); > > > private var link2:HyperLink = new HyperLink(); > > > private var link3:HyperLink = new HyperLink(); > > > > > > public function LinksRenderer() > > > { > > > super(); > > > } > > > > > > override public function set data(value:Object):void > > > { > > > super.data = value; > > > if(value != null) > > > { > > > var linksArray:Array = data.WebSites.split(","); > > > link1.linkText = linksArray[0]; > > > link1.addEventListener(HyperlinkEvent.HYPERLINK_CLICK, > > > hyperLinkClicked); > > > link2.linkText = linksArray[1]; > > > link2.addEventListener(HyperlinkEvent.HYPERLINK_CLICK, > > > hyperLinkClicked); > > > link3.linkText = linksArray[2]; > > > link3.addEventListener(HyperlinkEvent.HYPERLINK_CLICK, > > > hyperLinkClicked); > > > addChild(link1); > > > addChild(link2); > > > addChild(link3); > > > } > > > } > > > > > > private function hyperLinkClicked(event:HyperlinkEvent):void > > > { > > > navigateToURL(new URLRequest("http://" + > > > event.target.linkText), '_blank'); > > > } > > > } > > > } > > > --- In [email protected], Tino Dai <oberoc@> wrote: > > > > > > > > Have you looked at the class LinkBar? I think that would be a good way > > > to > > > > return a multiple buttons in a cell of a datagrid. > > > > > > > > http://livedocs.adobe.com/flex/3/langref/mx/controls/LinkBar.html > > > > > > > > -Tino > > > > > > > > > > > > On Wed, Jan 13, 2010 at 10:11 AM, aramsdell2000 > > > aramsdell2000@: > > > > > > > > > > > > > > > > > > > OK, that's the problem. I don't know how to add multiple link > > > buttons > > > > > through action script. And here goes my feeble attempt at explaining > > > what I > > > > > did so that it makes sense: > > > > > > > > > > This is how I am now populating the column with multiple hyperlinks, > > > using > > > > > the itemrenderer approach from Alex's Flex Closet "HTML in an Item > > > Renderer" > > > > > on this website: > > > > > http://blogs.adobe.com/aharui/item_renderers/ > > > > > > > > > > var params:Array = (data[column.dataField]).split(", "); > > > > > var urls:String = ""; > > > > > for (var i:Number=0; i < params.length; i++) > > > > > { > > > > > ... > > > > > urls += "<a href='http://webaddress?charname=" > > > > > + params[i] > > > > > + "&someid=" > > > > > + station > > > > > + "&anotherid=" > > > > > + org > > > > > + "' target='_blank'>" + params[i] + "</a>, "; > > > > > } > > > > > ... > > > > > cdataTag = urls; > > > > > ..... > > > > > htmlText = cdataTag; > > > > > > > > > > but only a right click works to open a new window. I would like it > > > to work > > > > > with just clicking on the text like a normal HTML href. > > > > > > > > > > So what I wanted to do was have each string be a link button (except > > > i > > > > > don't really like the fact that it looks like a button). I have been > > > > > experimenting with using a single linkbutton in a datagridcolumn for > > > > > something similar: > > > > > > > > > > else if (column.dataField == "details"){ > > > > > var linkItemRendererFactory:ClassFactory = new > > > ClassFactory(LinkButton); > > > > > > > > > > var someid:String = data["someid"]; > > > > > var anotherid:String = data["anotherid"]; > > > > > > > > > > var queryExpr:String = "&SomeParameterId=" + someid + > > > > > "&AnotherParameterId=" + anotherid + "restofurl"; > > > > > //this line isn't quite working either but I hope you get the idea.. > > > > > //linkItemRendererFactory.properties = > > > > > {label:data[column.dataField],click:"callGetDetailsWebService(" + > > > queryExpr > > > > > + ");"}; > > > > > > > > > > linkItemRendererFactory.properties = {label:data[column.dataField]}; > > > > > column.itemRenderer = linkItemRendererFactory; > > > > > > > > > > I am not sure how to expand the above code to add multiple buttons. > > > Instead > > > > > of using an inline? renderer, do I have to make a new link button > > > class and > > > > > extend it or can I somehow write it into the custom > > > > > CustomDataGridItemRenderer class I have now that extends > > > > > DataGridItemRenderer. > > > > > > > > > > Hopefully that makes sense! > > > > > > > > > > Thanks! > > > > > Amy > > > > > > > > > > > > > > > --- In [email protected] <flexcoders%40yahoogroups.com>, > > > Tino Dai > > > > > oberoc@ wrote: > > > > > > > > > > > > Some code would help > > > > > > > > > > > > On Tue, Jan 12, 2010 at 8:36 PM, aramsdell2000 amy.ramsd...@wrote: > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > I have a datagrid column that for each row, has several text > > > values > > > > > each > > > > > > > with its own hyperlink. > > > > > > > > > > > > > > Ex: the data in the datafield looks like: "Atext, Btext, Ctext". > > > As it > > > > > is > > > > > > > now, I was able to add href anchor tags but they only open in a > > > new > > > > > window > > > > > > > with the right mouse click. The datagrid item click event takes > > > over > > > > > the > > > > > > > left mouse click and I am not sure how to prevent that. So I > > > thought I > > > > > would > > > > > > > add multiple link buttons in the datagrid column instead. My > > > question > > > > > is how > > > > > > > to add these multiple buttons using an itemrenderer in > > > actionscript. If > > > > > I > > > > > > > was adding just one I would assume it would be > > > datagrdcol.itemrenderer > > > > > = new > > > > > > > ClassFactory(LinkButton) and then you just set the properties of > > > the > > > > > link > > > > > > > button. But how do you do it if there are multiple buttons for > > > the data > > > > > in > > > > > > > the datafield. Do you extend the LinkButton or list data in a > > > > > > > customitemrenderer class? How? > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > >

