Help get this topic noticed by sharing it on Twitter, Facebook, or email.

v4.5 Global Macros

New Features included - Knowledge Base Articles

- Global Macros - create a macro once and use it in any panel, page or handset as many times as you want

- Customizable URL Widgets - Add a custom background color and set the opacity to make your URL widgets look just right

- Fully customizable color options - Text labels can now be any color in the spectrum to give you full control of the appearance of labels, feedbacks and text on buttons

We have also fixed bugs related to Generation 4 AppleTV's and our module, Google+ login issues on handsets running older OS versions, and improved stability with handsets using URL widgets. 
Reply
  • GREAT - looking forward to test the Global Macros!
  • (some HTML allowed)
    How does this make you feel?
    Add Image
    I'm

    e.g. kidding, amused, unsure, silly happy, confident, thankful, excited sad, anxious, confused, frustrated indifferent, undecided, unconcerned

  • Wow, at last. This is GREAT news, but why keep us in the dark about such desperately needed features.

    I look forward to re-writing my system to take advantage of Global Macros.
  • (some HTML allowed)
    How does this make you feel?
    Add Image
    I'm

    e.g. kidding, amused, unsure, silly happy, confident, thankful, excited sad, anxious, confused, frustrated indifferent, undecided, unconcerned

  • Even an Entrance can be converted to a Global Macro. Looking good :-)
  • (some HTML allowed)
    How does this make you feel?
    Add Image
    I'm

    e.g. kidding, amused, unsure, silly happy, confident, thankful, excited sad, anxious, confused, frustrated indifferent, undecided, unconcerned

  • First question.

    I created a GM from an exiting one and it shows the following:-

    "Warning: This macro contains a variable or media control"

    So what does this mean? Well it's obviously telling me the macro contains a variable (which it does), but why the warning? Is it just for information (rather unnecessary I think) or does this mean a GM cannot contain a variable?

    If the former, I can live with the red text warning, but if the latter... Well I'll say no more until I find out.
  • (some HTML allowed)
    How does this make you feel?
    Add Image
    I'm

    e.g. happy, confident, thankful, excited sad, anxious, confused, frustrated kidding, amused, unsure, silly indifferent, undecided, unconcerned

  • Here's an odd one:-

    A GM cannot contain a Link.

    That sucks.
  • (some HTML allowed)
    How does this make you feel?
    Add Image
    I'm

    e.g. indifferent, undecided, unconcerned sad, anxious, confused, frustrated kidding, amused, unsure, silly happy, confident, thankful, excited

  • It's not a bug. It's because global macros can be used across all your handsets. It might mean that a link to a page might not exist on a certain handset and that would cause problems. If you convert a macro with a link in it to a global macro then the link is not converted. If you convert a macro that has a link within a conditional then the link stays but you get a red advisory message and you can't edit the link. I'm not sure if it still works.

    I had high hopes for global macros but without being able to add links makes them pretty useless for me. It better off sticking to entrances.
  • (some HTML allowed)
    How does this make you feel?
    Add Image
    I'm

    e.g. indifferent, undecided, unconcerned sad, anxious, confused, frustrated kidding, amused, unsure, silly happy, confident, thankful, excited

  • iRule Team,

    My limited experience now with global macros is awesome. Thanks.

    ...and a couple observations :-)
    1) Is there a way to change the name of a global macro and have the rename propagate to the instances where that global macro is used?

    2) builder: Safari on Mac - The Global macro label looks bad. The word MACROS looks like it is in strikethrough font.

    Regards,
    -c
    • 1. Yes absolutely. Currently if you change the GM name the calling widget just loses it. Rename the GM back as it was and all is restored. However, since the whole point of a GM is to be able to call it multiple times, if you do need to rename it, you're back into a nightmare scenario of having to trawl through your code trying to locate all instances of where you are calling it which partially defeats the object of having a GM in the first place. This needs to be changed so that just like linking to Panels and Pages, if the base name changes, the links remain intact.

      2. Yup, it looks pants. Why not have 'Global Macros' on one line. Even better, have them as tabs BELOW that frame rather than at the side. Where they are now means I keep opening Safari's sidebar instead of switching between Handsets and Global Macros. These tabs at the side are too close to that built-in gesture. Move them underneath and out of the way.
    • The Global Macros Vertical tab text has now been sorted. Thanks.
  • (some HTML allowed)
    How does this make you feel?
    Add Image
    I'm

    e.g. kidding, amused, unsure, silly happy, confident, thankful, excited sad, anxious, confused, frustrated indifferent, undecided, unconcerned

  • Although primarily to allow the re-use of macro/code, I actually see their use extending to meaning you can separate the code from the GUI. So ALL macro/code is a GM and the GUI just calls the appropriate GM.

    Hoever, the more use I make of GMs, the more GMs I want to use and it's going to become a nightmare to try and work with hundreds of GMs. I would dearly love to see and suggest it as an enhancement, that the GM list can have folders (which can contain GMs and other folders). So it becomes just like the file structure on a disk. Then a GM can be accessed by "folder/folder/folder/GM" for whatever path is appropriate and this path can of course be constructed from variables. That would be brilliant.

    Being able to organise like this is not just prettification. It would make working with GMs easier and also I suspect just like for aHD file system, faster for access.

    GMs are great, but having them all just thrown into the same bin is only acceptable when you have a dozen or so GMs. If you really make use of this feature the problem just gets exponentially worse.

    Also, we really do want to be able to include Links. Quite frankly it's ludicrous that this was thought acceptable. To hand-hold the user to the point where you prevent anyone from making full use of the feature. C'mon, there's loads of places where we can get it wrong and not allowing Links in GMs is the least of our worries. Seriously. Any macro/device/code/Link can be referenced by a variable. Get that wrong and things won't work. We have the ability to screw up Links EVERYWHERE - except in Global Macros 'cos we're not allowed to have them there. This is nuts.
  • (some HTML allowed)
    How does this make you feel?
    Add Image
    I'm

    e.g. indifferent, undecided, unconcerned sad, anxious, confused, frustrated kidding, amused, unsure, silly happy, confident, thankful, excited

  • Hmm, an old problem has re-appeared. I renamed some GMs, but then changed my mind and changed them back. Well, most of them. Two out of about 20 I changed cannot be changed back as there's an error saying that name already exists, which of course it doesn't.

    Looks like it forgot to delete some entry from an internal list of what exists when I first edited the names. So now it thinks that original name already exists.

    Looks like the same bug as before with Panel/Page names.
  • (some HTML allowed)
    How does this make you feel?
    Add Image
    I'm

    e.g. happy, confident, thankful, excited sad, anxious, confused, frustrated kidding, amused, unsure, silly indifferent, undecided, unconcerned

  • I agree with UkenGB. Links are essential. I suggest that Global macros are left as is but an additional tab be added, perhaps called Intra handset macros that can contain macros specific to the handset that is loaded in builder. These Intra handset macros would be tied to the handset and therefore would vary depending on the handset that is loaded whereas the global macros would be static across handsets. Finally the intra handset macros would not have the limitations and omissions including links that the global macros do.
    • view 1 more comment
    • I agree, It seems like iRule development omitted links just to stay true to the definition of "Global", it's silly.
    • Links in GM would be very helpful for code re-use. If the idea is to prevent new users from making mistakes, make this an option to 'enable links in global macros' or something. I've had two issues so far that require either working around or code duplication when I could have just put a link in a GM. Also I think the limitation is short-sighted because users who want this are probably changing panels based on variables in the links already so it's really just limiting them not protecting them.

      My use case is this: I prefer not to have the main source buttons immediately change sources, but rather prompt the user to either change sources OR simply take them to the page for that device. Why? Because sometimes you just need to eject the disc, or turn off the other device, and you don't want the current source to change. To do this I need a page entrance to check if the source might be changing, and link to a page that prompts whether the user wants to change. This requires a simple if/then and a link, and then a macro to update the current status based on feedback. Not a big deal but putting all this in one macro instead of four lines of code in EVERY entrance would be much better, simply because if the methodology changes I can just change the one macro and be done. Also because the chance of missing an entrance or making a typo is greatly reduced or eliminated.

      Software is awesome though, keep it up!
  • (some HTML allowed)
    How does this make you feel?
    Add Image
    I'm

    e.g. kidding, amused, unsure, silly happy, confident, thankful, excited sad, anxious, confused, frustrated indifferent, undecided, unconcerned

  • It gets worse. It's jumbled up the order of the GMs. Not all, but several have been shuffled around in the list. Worse, one of those that it wouldn't allow me to rename was duplicated and there are now 2 entries in the list, the same names as existing GMs, but these have no expand widget beside the name and I cannot click on them. Well I can but they do not get the focus. If I use the arrow keys to move the focus up, it skips these 2 entries. If I try to do the reverse and move the focus down, it gets stuck at the one above those entries.

    Obviously not real Global Macros, but it's somehow got confused and is screwing about which is becoming rather worrying that it's simply going to roll over and throw everything away.

    Perhaps the iRule tech team could chime in here.
  • (some HTML allowed)
    How does this make you feel?
    Add Image
    I'm

    e.g. indifferent, undecided, unconcerned sad, anxious, confused, frustrated kidding, amused, unsure, silly happy, confident, thankful, excited

  • A question about GM efficiency. Which is faster when the conditional fails:-

    A conditional that checks whether to call a GM or not (and so doesn't)
    OR
    Call the GM which includes the same conditional test to check whether to do anything (which it doesn't)?

    So the conditional test is run in either case, but what is the penalty for invoking the GM to do the test rather than testing first and maybe avoiding calling the GM at all?

    The advantage of putting the conditional test in the GM is that it therefore doesn't need to be duplicated everywhere you call the GM and this is after all the whole point of GMs.
  • (some HTML allowed)
    How does this make you feel?
    Add Image
    I'm

    e.g. kidding, amused, unsure, silly happy, confident, thankful, excited sad, anxious, confused, frustrated indifferent, undecided, unconcerned

  • What is the bug fix for Apple TV 4?
  • (some HTML allowed)
    How does this make you feel?
    Add Image
    I'm

    e.g. indifferent, undecided, unconcerned sad, anxious, confused, frustrated kidding, amused, unsure, silly happy, confident, thankful, excited

  • GMs really need to copy over links as well. This is a BIG limitation with using a GM!
  • (some HTML allowed)
    How does this make you feel?
    Add Image
    I'm

    e.g. kidding, amused, unsure, silly happy, confident, thankful, excited sad, anxious, confused, frustrated indifferent, undecided, unconcerned

  • i think why links are not included with the GM is so you can use them on multiple handsets.

    Other wise you would get broken links and would have to have a duplicate GM for every handset.
  • (some HTML allowed)
    How does this make you feel?
    Add Image
    I'm

    e.g. indifferent, undecided, unconcerned sad, anxious, confused, frustrated kidding, amused, unsure, silly happy, confident, thankful, excited