Home AMX User Forum AMX General Discussion

Feedback on AMX tools

1235»

Comments

  • viningvining Posts: 4,368
    Ok, what if you went into another programmers PC while they were away and changed some of these parameter names around to something to obscene, personal or just plain stupid. Then watch them when they come back to program and see how long it takes them to notice the changes and figure out how it was done.
  • PhreaKPhreaK Posts: 966
    vining wrote: »
    Ok, what if you went into another programmers PC while they were away and changed some of these parameter names around to something to obscene, personal or just plain stupid. Then watch them when they come back to program and see how long it takes them to notice the changes and figure out how it was done.

    Ha ha, gold.

    Stupid question, but won't changing the parameter names only in NetLinx.axi bork all those functions, or are values referenced internally (ie firmware side) by their position rather than than name. Chances are that those useless parameter names are a side effect of uber optimisation.
  • jjamesjjames Posts: 2,908
    Spire_Jeff wrote: »
    OneCouldJustUseCapitalsToDefineTheWordsAsWell :)
    I knew someone would say that after I posted - haha!

    My point was, it's just style. Just like when I see the Java programmers put brackets on the same line in Netlinx makes me cringe (hence my demand, yes demand) for a code beautifier / formatter that would reformat any code to the style that we individually like. (Sorry Jeff!) I absolutely detest, loathe, and get violently angry (ok, not really) when having to go through hundreds, if not thousands of lines of someone else's code and reformat it the way I write code just to be able to read it quickly.

    But again, my point should be obvious. :D
  • the8thstthe8thst Posts: 470
    Spire_Jeff wrote: »
    Yes, I could change the NetLinx.axi, but then I have to do it every time a new version is released ... which is only often enough for me to forget that I made changes until a few days after the upgrade which will inconveniently fall in the middle of some catastrophic failure at a job site and only serve to piss me off when I have to deal with the "old" way until I have time to make the changes again.... or AMX could make the changes once and we would not have to worry about it :)


    As for the discussion about _ .... OneCouldJustUseCapitalsToDefineTheWordsAsWell :)

    Jeff

    We could collaborate on fixing the axi file and then all email identical, fixed, files to the engineering staff at AMX. Hopefully they would adopt the revised version after getting bombarded with 100 copies of it and include that as the standard in the next NS release.
  • a_riot42a_riot42 Posts: 1,624
    jjames wrote: »

    oneCouldArgueThatMashingAllTheWordsTogetherWithoutAnyUnderscoresCouldLookALittleBusy.

    One_could_argue_that_mashing_all_the_words_together_without_any_underscores_could_look_a_little_busy.

    Which of these looks busier? To me, its the latter and its also slower to type. Using camel case lets my eye read it all in one chunk for faster processing.

    Considering a more normal example, I prefer

    findString

    to

    FIND_STRING

    which is why I have changed my wrapper functions to reflect that. But changing the Netlinx.axi file seems like a better idea that I hadn't considered so I think I have a new project for tomorrow.
    Paul
  • ROOROO Posts: 46
    XML Translator -from (any XML editor) to Netlinx Format

    I would like to be able to use any XML editor I chose to work on a file, then in Netlinx Studio - convert the file from the generic XML format to the Netlinx XML supported format. The value would be that any editor that creates an XML format, could be used to build structures for the Netlinx. It would seem to be an easier task then creating an editor that everybody likes, and a way we could update a Netlinx XML file without fouling up the Netlinx format.

    ROO
  • DHawthorneDHawthorne Posts: 4,584
    ROO wrote: »
    I would like to be able to use any XML editor I chose to work on a file, then in Netlinx Studio - convert the file from the generic XML format to the Netlinx XML supported format. The value would be that any editor that creates an XML format, could be used to build structures for the Netlinx. It would seem to be an easier task then creating an editor that everybody likes, and a way we could update a Netlinx XML file without fouling up the Netlinx format.

    ROO

    XML is a published standard, and NS should support it without conversion. I think they just need to fix this, period, forget about tools to make it happen.
  • annuelloannuello Posts: 294
    DHawthorne wrote: »
    XML is a published standard, and NS should support it without conversion. I think they just need to fix this, period, forget about tools to make it happen.

    I agree. I haven't tried "non-NetLinx" XML for a few years but if I remember rightly, it doesn't like EOL characters between elements. It may not like whitespace being used to pad/indent elements either. At a bare minimum it would be nice if NetLinx could cope with these two situations. Our XML files would then become more human-readable and editable using standard text editors.

    Roger McLean
    Swinburne University
  • Duplicated Function Names

    I'd like to see the NS complier indicate the name of any duplicated Functions/Calls instead of coming to a screeching halt indicating a Major Error....

    Simmo
  • ROOROO Posts: 46
    I agree with you both - but it's been a problem for years
    annuello wrote: »
    I agree. I haven't tried "non-NetLinx" XML for a few years but if I remember rightly, it doesn't like EOL characters between elements. It may not like whitespace being used to pad/indent elements either. At a bare minimum it would be nice if NetLinx could cope with these two situations. Our XML files would then become more human-readable and editable using standard text editors.

    Roger McLean
    Swinburne University

    Both of you and DHawthorne are correct- but we haven't seen any movement on the issue. People need to be able to move standard XML to our programs without any issues. Too many people could use this! There has to be a way!

    Thanks Guys.
    ROO
  • RVanceRVance Posts: 14
    NS - on the find / replace feature, maintain focus where it was last, i.e. if I press find, leave focus on the find button. Everytime I click find, focus returns to the "Find What" field. So for keyboard commandos like me, pressing 'f' for find next and 'r' for replace, would put an f and an r in the "Find What" field replacing the text I was looking for. I reverted back to 2.6 because of this. :(

    TPD4 - +1 on scaling images to button sizes. Admittedly, scaling a small image to a large button could create some pixelization / aliasing issues, but going from a large image to a small image should be "easy" enough.

    IREdit - +1 on allowing me to extract the hex values for a function. Maybe read in a pronto file? Although you run into the same issues mentioned earlier with the RTI(?).

    KPD - on engraving, would it be (or is it) possible to allow more than one line of text per button?
  • PhreaKPhreaK Posts: 966
    Continuing on from the better variable names discussion, it would be nice if NetLinx had a standardised documentation style (i.e. something javadoc-esque) which could form the content that appears in the function parameter helper tooltips within NLStudio and be used to create code documentation.
  • Additional param for @AKB

    I would like the ability to specify the prefix when using the send command below so that when you receive the string from the TP you know which entry type has been used.

    "'@AKB-&lt;initial text>;<prompt text>, <prefix text>'"

    SEND COMMAND Panel,"'@AKB-Texas;Enter State, STATE_KEYB'"
    String From [10001:1:1]-STATE_KEYB-Texas]

    This way it will easier to use a single keyboard for updating any text values.
    It would be useful for all Keypads/Keyboards
  • jjamesjjames Posts: 2,908
    So many...

    There have been so many requests, that I've lost track - so sorry if it's a duplicate.

    I'd like to know if there are variables and constants (or any definitions) in code that are not used. I think there was a warning when compiling in Axcess to let you know this.
  • ROOROO Posts: 46
    An evaluated wait - storing assignments at instanciation

    It would be handy to have a Evaluated Wait that assigns the variables when they are encountered. It would be like a function call that takes the variables when it was called, but delays the execution for the wait time.

    simple example:

    INTEGER nCurrent_assignment

    nCurrent_assignment = nCamera3;
    EV_WAIT 100
    {
    fnInitCam ( nCurrent_asssignment)
    }
    ncurrent_assignment = nCamera2;
    EV_WAIT 120
    {
    fnInitCam ( nCurrent_asssignment)
    }

    In my program, when I go through a routine that knows the variables assignments, but I just want to delay execution I run the chance that some other event will modify the variable that the wait is using. If the wait itself stored the value of the variables, I wouldn't need to worry about timing issues, since the Wait instanciation would store the values when encountered. Kind of like creating stack_values for the wait, making the assignments to the stack variables, then using them when the wait time was met. So the Evaluated Wait or a standard wait would be an option for the programmer.... Just think it would be handy....ROO
  • Spire_JeffSpire_Jeff Posts: 1,917
    One of the guys working on TPD4 had this suggestion:

    It would be nice if we could define buttons that were not just a square. Something that allows the use of the built-in borders and can wrap text accordingly. I know that we can (and we do) use active touch, but there are situations that we encounter were it would be nice to just use the built-in buttons.

    Also, it would be nice if we could define the text area of a button separate from the whole button.

    Jeff
  • I know that this was discussed on a separate thread a while back, but I"ll mention it hear again since this is a discussion of future feature ideas. It would be great to have a way to compare 2 TPD4 files. The compare could work on several layers, compare the page and pop-up list, then within each page/pop-up, compare the buttons on each one and within each button compare the properties top to bottom and so on through the entire file.

    If the TPD4 file is an XML or other text-based format encapsulated within the TPD4 file, then another approach would be a de-compiler of sorts to convert the file back to text, so that we can use third-party compare utilities (WinMerge, TortioseSVN, even Studio's compare, etc.).

    This would be a life saver in my world.

    Thanks.
    Sheldon Samuels
  • DHawthorneDHawthorne Posts: 4,584
    ipssheldon wrote: »
    I know that this was discussed on a separate thread a while back, but I"ll mention it hear again since this is a discussion of future feature ideas. It would be great to have a way to compare 2 TPD4 files. The compare could work on several layers, compare the page and pop-up list, then within each page/pop-up, compare the buttons on each one and within each button compare the properties top to bottom and so on through the entire file.

    If the TPD4 file is an XML or other text-based format encapsulated within the TPD4 file, then another approach would be a de-compiler of sorts to convert the file back to text, so that we can use third-party compare utilities (WinMerge, TortioseSVN, even Studio's compare, etc.).

    This would be a life saver in my world.

    Thanks.
    Sheldon Samuels

    Something along those lines must already be active in TPD4, or you wouldn't be able to do smart transfers. It might not go past a manifest and CRC's, but even that is a start.
  • champchamp Posts: 261
    I would like AMX to revisit this thread, there are a lot of excellent feature requests here that have not been implemented and have definitely not become outdated.

    Here are a few more requests:
    Autocomplete and code coloring in Netlinx Studio should look at all files in the system, not just the current file.

    More attention to making large scale deployments easier to manage.
    Over two years down the line that firmware update tool never saw the light of day.
    Add up/downloading files to/from the ftp server to the file transfer tool.

    Upload to touchpanels directly without a master or manually setting up a virtual master connection.
    I want to enter the IP address of the touchpanel then press go. Maybe the software can negotiate a virtual master in the background then reset to the original master on completion, just don't bother me with the details.

    Upload to touchpanels via USB directly without needing to manually install a driver and set up a virtual master and praying to my deity of choice that this is the one in 10 times where it will actually work.

    Have TPD4 and Netlinx Studio use the same TCP settings connection address book.

    An easy way to see the current program name and date that the program was compiled and uploaded, "program info" in terminal is a bit clunky and doing it in code relies on the fact that it needs to have been programmed first.

    Diagnostics tools...

    Netlinx Notification options presets. I want to be able to save the current Device Notification list and recall it later.
    Netlinx send_comand and send_string presets. When I want to test some serial commands for a device I would like to be able to save some shortcuts, then save those shortcuts to a file eg I want to test an NEC projector so I load my "NEC proj.xyz" file and then hit F1 and it loads the string to then the projector on into the control device SEND_STRING window.
  • catalinocatalino Posts: 25
    I usually keep a library of buttons sizes/shapes/texts and use the capture/paint properties feature of TPD to quickly reassign button styles(along with the "apply to all" mode). I didn't find this feature until recently so it may have escaped other's views as well.
  • Interesting, will have to look at that!
  • @ipssheldon said:
    Cafe Duet vs Netlinx Studio

    As someone who is doing more and more work in Duet, I am finding that I am loving the Duet development environment compared with what is available in Studio. If Duet could do more of the editing of the actual Netlinx code in systems that use code in both or if Studio could get updated with some of the capabilities of Duet (actually, Eclipse) that would be great.

    Some areas that are very helpful in Duet:

    On the right side of all views are all of your variables, subroutines/functions/classes, etc. So, if you forget the format for a particular call or variable name, you can quickly scroll through what's available on the right bar and never leave the line of code that you are working in.

    Format: You can right click and re-format your code if indents get skewed.

    Autocomplete: Yes, Studio has this, but in Duet, the editor will autocomplete across your entire project, so if you use separate class files (essentially, include files in Netlinx terminology), you can still use this feature to give you the complete function call, if you don't remember exactly what to pass into the call.

    These are just a few of what I find to be helpful. And yes, these are standard to any Java editor, but it would be nice if Studio had more of these as well. Or if we could have the option to work with all code in Eclipse, that would be even better.

    Just a few thoughts that came to mind.

    Sheldon Samuels
    SchoolView Technologies, LLC
    www.schoolviewtech.com

    Another thought: When using the NLS Device Notification Options to debug many "cookie-cutter" rooms (the only difference being system numbers), I have to manually look up the system number and create a new entry in the Device Notification Options list to match the new system number. This leads to a lot of repetitive delete/create for me. It would be nice/convenient if DNO worked when we specified a system number of '0'. (Interpreting '0' to be the-master-that-NLS-is-currently-connected-to). I would expect that notification would still have their real system number.

    If this is not possible, a useful alternative would be to allow us to edit the DPS details for the entries in the Device Notification Options list. At least we can leave all our notification options set up for what we are interested in, and just edit/change the system number. If you were really kind, a button which auto-assigns the system number to the current system (derived from current master connection) would be sweet.

    Roger McLean
    Swinburne University

Sign In or Register to comment.