|
POST
|
attached is the code I used in my application. Any questions let me know Aaron, thank you for posting the code for printing the display features in a pdf. For the report.pdf, I assume that you used a spark datagrid. Could you please post the code for printing to pdf the datagrid as displayed in the report.pdf? Thanks.
... View more
05-07-2014
05:08 PM
|
0
|
0
|
1148
|
|
POST
|
our suite of apps parses the layers in each map service the apps will use via rest calls (an admin app that sets which users/groups can use which map services/tools, etc). that includes the legends. that's all stored in a sql server table & this reporting tool simply pulls that data out of the table & adds it to the PDF. the map template is from arcMap. i get a PDF of that blank template & measure out the available space for the legend, etc. using a PDF tool (foxit for example)--mainly because the designers either don't know or won't say the space available for each piece of the template. those become constants. the legend,etc. tables are built in server memory & measured against the available space.if they fit, they go in, if not they get added to a supplemental page (next iteration will measure rows & fit as many as possible instead of this binary approach). if you can read coldfusion, i'll try to get a generic example together. Thank you for your reply, Paul. It it very interesting the approach you described and open up to me new possibilities. I have a license of CF 9, and I was using it for web apps but since then I turned my attention to ASP.NET. Based on your reply, it seems that you also have a license for the Foxit PDF SDK to implement in your solution. If you provide a generic example it will be very helpful. Thanks.
... View more
04-29-2014
07:21 AM
|
0
|
0
|
1148
|
|
POST
|
oops didn't see this until just now. sorry no, its the clients. but if you have specific questions i can probably whip up generic cf code. Thank you Paul. I am interested to see how you posted the legend. Any generic code to share, I'd appreciate it. Thanks.
... View more
04-28-2014
11:19 AM
|
0
|
0
|
1148
|
|
POST
|
Yes, it makes sense. I resolved my issue. It was my oversight when I realized that widget B was not pre-loaded as I though it was. Thank you for your time.
... View more
03-21-2014
06:54 AM
|
0
|
0
|
477
|
|
POST
|
I have a widget (A) that needs to share data only with widgets B and widget B needs to shared data only with widget C. A-->B--->C They are all pre-loaded and in the widget A and B is the code addSharedData("xxxxx", arraycollection)... In the B and C widgets there is the line AppEvent.addListener(AppEvent.DATA_PUBLISH, sharedDataUpdated); How do you specify that widget B will get the data only when they are sent from A, and widget C will listen from widget B only. I hope it makes sense. It seems it should be a way that there is AppEvent listener in B that is listening for a specific addSharedData like addShareData2 but I cannot find anything like this. Thank you.
... View more
03-20-2014
06:34 PM
|
0
|
2
|
924
|
|
POST
|
Lefteris, I was able to dynamically create tabs that contain DataGrids. These grids contain the results of a IndentifyTask for each visible layer in a map. As each tab was added, an event listener was added for such events as ListEvent.ITEM_CLICK, ListEvent.ITEM_ROLL_OUT, etc. These listeners pointed to the same functions so that when the user did something like click on a row in a grid, it would highlight the feature on the map for that individual layer. I put the code in a thread in GIS.StackExhange here. Unfortunately, the link to the working example is no longer valid, since the project was ported over to JavaScript. Thank you Ken. That was very helpful. Do you have by any chance the myInfoRenderer scipt? I just wanted to see how you structure the infowindow. Thank you.
... View more
03-06-2014
08:01 AM
|
0
|
0
|
745
|
|
POST
|
Lefteris, Sure if you do not make any of those functions specific to the template tab or datagrid. So if you rollover event use the function event like event.target as DataGrid instead of hard coding the datagrid to a specific id. You can have all your tab using the same couple of functions. Thank you Robert. I thought the creationpolicy could be my answer, but I totally misunderstood it, since it just instantiates existing hard coded objects.
... View more
03-04-2014
07:23 AM
|
0
|
0
|
745
|
|
POST
|
I don???t if it is possible, but I will ask anyway. I hope it makes sense what it follows??? I am using the tabbar and viewstack to create tabs for different layers. The first tab will be created initially and the others will be created dynamically. The first tab will host a datagrid with the attributes for one layer. Also some mouse event actions will be present to provide user experience when they browse over the datagrid. Here is the question. When the second tab is dynamically created, can a datagrid be placed and with the functions that are under the first tab to be under the second tab as well (for example the mouse events) so the user experience will be the same. So, essentially it is more like a template to be adapted for each tab. Your thoughts? Thanks.
... View more
03-03-2014
08:00 PM
|
0
|
5
|
1065
|
|
POST
|
Does anyone know if the creationpolicy setting of the viewstack is set to "all", it means also the all mouse events that are defined in the first tab (tabbar) will be inherited in the subsequent tabs? In other words, if you set under the first tab, mouse events (like mouseover will initiate an action), then when you dynamically create other tabs, will the events be created? I hope I explain well here what I am asking.... Thank you.
... View more
03-03-2014
05:38 PM
|
0
|
0
|
494
|
|
POST
|
Lefteris, That is the problem... The LayerEvent.UPDATE_START and LayerEvent.UPDATE_END that are attached to the feature layer, are added by the AttributeTable Flex API component, and thus they are not exposed to you as a developer. The LayerEvent.UPDATE_START and LayerEvent.UPDATE_END both call CommitProperties function inside the component. The only reason I know this is by using a customized version of FlexSpy to see the eventListeners that are added by the AttributeTable component. The only possibility I can think of is to extend the AttributeTable component and override the CommitProperties function, but I don't know what all the function is doing. You are correct. After it first opens, any refresh is through the api. I am hesitant to spend time and effort to override the CommitProperties function since I don't know the implications I do so. Bummer.
... View more
02-28-2014
01:04 PM
|
0
|
0
|
1195
|
|
POST
|
Lefteris, I have to take back my suggestion as when I did my test app it was not using the AttributeTable widget, but just a Flex API app that was using an AttributeTable component, and I did have a Monkey Patch applied that gives me the removeEventListeners (which normally would not be there). I have now tried to duplicate my success in the test API app, but this time using viewer and the widget, and I have been unsuccessful. Oh, well I thought I had an easier route for you, but I didn't. Thank you for checking it out for me. Do you know what the triggers the attribute table refresh when you zoom in out (changing the extent of the map)? I was unable to find that and it would be a big help for me to take it from there... Thanks.
... View more
02-28-2014
07:18 AM
|
0
|
0
|
1195
|
|
POST
|
Lefteris, Strange in my test application it did exactly what you asked for, prevented the zoom or pan from updating the table. Perhaps, I inserted at the wrong location. Where did you inserted them? Thanks.
... View more
02-27-2014
01:14 PM
|
0
|
0
|
1195
|
|
POST
|
Lefteris, This might have some unforeseen consequences but try this The yourFeatureLayer is the id of your feature layers yourFeatureLayer.removeEventListeners(LayerEvent.UPDATE_END);
yourFeatureLayer.removeEventListeners(LayerEvent.UPDATE_START); Thank you Robert. This function takes two arguments, but anyway I tried it and it doesn't prevent the attribute table from refreshing. Do you know where in the api when you zoom in/out, it updates the attribute table entries? Thanks.
... View more
02-27-2014
12:35 PM
|
0
|
0
|
1195
|
|
POST
|
The attribute table is a tough nut to crack. I created a duplicated attribute table, so when I perform a query it will show only the results of the query. However, when you zoom in/out, the attribute table is updated to include any visible features that are not part of the query. So, my goal is to develop a way to disable the updating process when you zoom in/out and have this duplicate table post only query results. The attributetable has a property called updateEnabled but it didn't work. I think the process that updates the table must be buried in the API. So, I am in the process to create an alternate process that is not very practical. In the init of the attribute table, I set a boonlean variable that is by default to false. If it is false, then it should exit the init and terminate further process. The query process that it is originated from another widget sends a the boonlean variable (widget communication - Thanks Robert) to the attribute table as true and it opens the attribute table with the query results. If you zoom in/out that boonlean variable will be false it will not alter the table. So, here are my two questions. Is there an easier way to disable the updating the table when you zoom in out? If not, how can you exit the widget in runtime? If in the init of the attribute table the boonlean is false, how can it exit the widget.When I use vb.net it was easy to do so, but how it's done in flex? Thank you.
... View more
02-26-2014
06:31 PM
|
0
|
9
|
2352
|
|
POST
|
Lefteris, That line and the line above are leftover form some development/testing. There are times when you can do something similar to this in development and it will have a purpose. Here is an example: import com.esri.ags.layers.FeatureLayer;
FeatureLayer; This forces the compiler to use the import without warning that it is not used. This is sometimes needed in the parent component of another component to prevent a memory leak issue (if you receive a warning about this possible memory leak issue). We can see this in a viewer file called ForcedImports.as I am working on a 3.6.2 release this week, so thanks for letting me know about this. Thank you Robert. I didn't know that you can do that with raising error flags.
... View more
02-20-2014
07:36 AM
|
0
|
0
|
851
|
| Title | Kudos | Posted |
|---|---|---|
| 1 | 10-22-2025 03:33 PM | |
| 1 | 06-27-2025 11:29 AM | |
| 1 | 06-16-2025 08:49 PM | |
| 1 | 06-02-2023 03:22 PM | |
| 1 | 02-28-2024 09:35 AM |
| Online Status |
Offline
|
| Date Last Visited |
4 weeks ago
|