Modifying TPD4 sys template files

Stephen BoltonStephen Bolton Junior MemberPosts: 345
Hi all,

Has anyone changed the color of the keypad and keyboard that are part of the system template?

(example: __keyboard)

I have the file open and it appears as though I can change colors ok, but I just want to be sure it's not going to go horribly pearshaped before I press save!

I also assume I will need to create a new tpd file so that it uses this file....or does it grab these pages everytime it opens a file

(Hmmm can see logic behind both methods)

Comments

  • DHawthorneDHawthorne Junior Member Posts: 4,584
    You can't change the actual system pages, but you can copy them and paste them as "regular" pages, then modify them as much as you like. You then just call your copy instead of the original. I do this all the time with keypad and keyboard pages, especially if my device has some specific buttons I need to add that aren't part of the normal one. Even if I change nothing else, it's nice to have a different prefix for unique devices on the text field output.
  • Stephen BoltonStephen Bolton Junior Member Posts: 345
    DHawthorne wrote: »
    You can't change the actual system pages, but you can copy them and paste them as "regular" pages, then modify them as much as you like. You then just call your copy instead of the original. I do this all the time with keypad and keyboard pages, especially if my device has some specific buttons I need to add that aren't part of the normal one. Even if I change nothing else, it's nice to have a different prefix for unique devices on the text field output.
    Thanks for the reply Dave.

    If i go to C:\Program Files\Common Files\AMXShare\G4SupportFiles\__system\pages and open the 800x480 file, there are indeed no permission problems or anything, and I can happily mod the system page for the kp or kb. Just wondered if anyone had done it this way instead of creating a new one and what the implications are/were.

    I guess a new one with a unique name really doesn't have a down side either - and is probably safer!
  • jjamesjjames AMX Sustaining Engineer Posts: 2,900
    Interestingly, he is correct. Perhaps an issue that should be looked at? I believe they password protected from TPD4 for a reason, but I may be wrong. :D
  • Stephen BoltonStephen Bolton Junior Member Posts: 345
    jjames wrote: »
    Interestingly, he is correct. Perhaps an issue that should be looked at? I believe they password protected from TPD4 for a reason, but I may be wrong. :D
    ...which is why I haven't plucked up the courage to press Save yet!

    :-)

    Watching the way tpd files open and the files that go flying by, it could well be that mod'ing the pages as above changes every panel - existing and new...this wouldn't be ideal I guess and may well be why it's not done
  • jason_the_adamsjason_the_adams Junior Member Posts: 108
    I feel as though I must be missing something here, so let me respond with a few questions:

    When you talk about changing the system templates such as "_keypad" and "_keyboard", why would you want to change the actual system templates as opposed to "overloading" them within your own panels? That is, I have in all of my panels a "_keypad" popup that suits to my own graphical purposes, and when I upload the panel it uses my custom popups and ignores the default templates respectively.

    Doing it this way allows for me to use the same code as though I were to call the system popups, and even gives me further reign to change the returned string to be more specific to my purposes - for example, instead of everything returning "KEYB-String" it might return "POPUPNAME-" or whatever.

    Again though, I feel as though I'm perhaps misunderstanding. But I hope this helps. :)
  • Stephen BoltonStephen Bolton Junior Member Posts: 345
    I feel as though I must be missing something here, so let me respond with a few questions:

    When you talk about changing the system templates such as "_keypad" and "_keyboard", why would you want to change the actual system templates as opposed to "overloading" them within your own panels? That is, I have in all of my panels a "_keypad" popup that suits to my own graphical purposes, and when I upload the panel it uses my custom popups and ignores the default templates respectively.

    Doing it this way allows for me to use the same code as though I were to call the system popups, and even gives me further reign to change the returned string to be more specific to my purposes - for example, instead of everything returning "KEYB-String" it might return "POPUPNAME-" or whatever.

    Again though, I feel as though I'm perhaps misunderstanding. But I hope this helps. :)
    No, you're not missing anything!

    I started sniffing around the system pages because one of the projects we have going on has quite a distinctive colorset, so, to pop up pages that have electric blue buttons in the middle of it all isn't ideal.

    Certainly doing the kp and kb by copying them in and mod'ing them to match the scheme etc is a given, but there are other instances like time and date pages, pwd etc etc that follow with the same issue and styling those up as part of the panel is nice. They don't and won't get used a lot, but they will get used.

    So it isn't purely about the kb and kp (although that's all I posted about) entirely...and to that end, any of the system pages can be copied in to my project and mod'd to my needs I guess.

    I'm not suggesting these pages are wrong by any means, but after I got into them, I wondered that even though I could mod them, should I mod them, and what would happen if I did mod them.

    ...it became that curious cat thing...
  • jason_the_adamsjason_the_adams Junior Member Posts: 108
    Alright then, well then here would be my advice:

    Modifying the system popups and such are a great idea for whichever popups the end-user will actually see. It's a great way to go that extra mile in the fluency of your design, and I tend to go even further in completely customizing the appearance of the applicable system templates than simply changing the colors of the chameleon images therein - everything is completely altered in its bitmap and otherwise state to fit the design of said panel.

    Here's the issue however: it's important to make sure that you really understand what's going on in those templates, because its very easy to completely recreate the template and cut out many things you wish you hadn't, or perhaps even completely debilitate the function as a whole. It's easy to miss, for example, that the string prefix in sent back from a keyboard or keypad is actually derived from the name of the input field - one would assume by glancing at the channel and address codes that simply having the button set to be an input would take care of everything, but that would be a terrible mistake.

    So if you're going to make subtle modifications, then feel free and don't worry too much (changing a color, for example), but if you're going to make more serious modifications to the layout and function of said templates, then be sure to understand how everything works, and thoroughly test your new design afterwards to make sure you haven't sacrificed any functionality for cosmetics.

    Hope this helps. :)
  • liviolowliviolow Junior Member Posts: 48
    ...which is why I haven't plucked up the courage to press Save yet!

    :-)

    Watching the way tpd files open and the files that go flying by, it could well be that mod'ing the pages as above changes every panel - existing and new...this wouldn't be ideal I guess and may well be why it's not done

    Well I believe changing the colors in the System Template in TPD 4 only changes the outlook in TPD4. It does not change the Physical Touch Panel. Tried it before and did not work. Maybe someone else did which I am not too sure off :-)
  • Stephen BoltonStephen Bolton Junior Member Posts: 345
    liviolow wrote: »
    Well I believe changing the colors in the System Template in TPD 4 only changes the outlook in TPD4. It does not change the Physical Touch Panel. Tried it before and did not work. Maybe someone else did which I am not too sure off :-)
    Did you try a total download and not 'smart transfer'?

    I would guess they haven't been downloaded yet.

    Thanks for trying!
  • liviolowliviolow Junior Member Posts: 48
    Did you try a total download and not 'smart transfer'?

    I would guess they haven't been downloaded yet.

    Thanks for trying!

    Well I tried that as well. Full total download inluding graphical files. Doesn't work at all. Guess the physical touch panel already have it locked.

    Tried it a couple of months back with a MVP8400i. Maybe you might have better luck with other touch panels which I wouldn't know of :-)
  • jason_the_adamsjason_the_adams Junior Member Posts: 108
    ...No, that's what I've been saying; you can change the layouts to look like whatever you want. :)

    I do it all the time.
  • etranetran Junior Member Posts: 5
    I feel as though I must be missing something here, so let me respond with a few questions:

    When you talk about changing the system templates such as "_keypad" and "_keyboard", why would you want to change the actual system templates as opposed to "overloading" them within your own panels? That is, I have in all of my panels a "_keypad" popup that suits to my own graphical purposes, and when I upload the panel it uses my custom popups and ignores the default templates respectively.

    Doing it this way allows for me to use the same code as though I were to call the system popups, and even gives me further reign to change the returned string to be more specific to my purposes - for example, instead of everything returning "KEYB-String" it might return "POPUPNAME-" or whatever.

    Again though, I feel as though I'm perhaps misunderstanding. But I hope this helps. :)

    1. How do you control the prefix of the string that is returned from an overloaded keyboard "POPUPNAME-"?
    2. Is there a way to control the port number that the String is being sent. 10001:5:1 instead 10001:1:1?
    (I have two modules that are using two different ports)

    Thanks for any info,

    GPG
  • DHawthorneDHawthorne Junior Member Posts: 4,584
    etran wrote: »
    1. How do you control the prefix of the string that is returned from an overloaded keyboard "POPUPNAME-"?
    2. Is there a way to control the port number that the String is being sent. 10001:5:1 instead 10001:1:1?
    (I have two modules that are using two different ports)

    Thanks for any info,

    GPG

    The prefix is determined by the name property of the text field. You can't change the port it comes in on, you are stuck with port 1.
  • etranetran Junior Member Posts: 5
    DHawthorne wrote: »
    The prefix is determined by the name property of the text field. You can't change the port it comes in on, you are stuck with port 1.

    Is there a command to change the name property?

    Thanks,

    GPG
  • DHawthorneDHawthorne Junior Member Posts: 4,584
    etran wrote: »
    Is there a command to change the name property?

    Thanks,

    GPG

    I don't think so, if you mean from code, but don't hold me to that, there could be. I just change it in TPDesign.
  • sphere27sphere27 Junior Member Posts: 40
    I'm trying to wrap my head around all of this keypad stuff and I've got a couple basic questions.

    1. What's the best way to copy an existing system page or popup? I just went under File->Open System Page Template. But this is a cv7. I figured there might be different ones for different panels.

    2. From what I understand the prefix coming back from the touch panels keypad entry is the name of the Text Input field. But what ties the buttons back to that particular text field. Does the TP just assume there is one and only one on the particular popup that's up?


    I don't have a touch panel to test on right now and I'd like to make sure I go down the right path.


    Thank you,

    Jimi
  • DHawthorneDHawthorne Junior Member Posts: 4,584
    sphere27 wrote: »
    I'm trying to wrap my head around all of this keypad stuff and I've got a couple basic questions.

    1. What's the best way to copy an existing system page or popup? I just went under File->Open System Page Template. But this is a cv7. I figured there might be different ones for different panels.

    2. From what I understand the prefix coming back from the touch panels keypad entry is the name of the Text Input field. But what ties the buttons back to that particular text field. Does the TP just assume there is one and only one on the particular popup that's up?


    I don't have a touch panel to test on right now and I'd like to make sure I go down the right path.


    Thank you,

    Jimi

    1. Copy the page from the system template and paste it in the main section. There are minor differences between models, but the main functionality is in the address and channel codes. You'll notice they are all on port zero (setup), and the pulldown on the channel describes what they do. It's trivial to teak a design from one panel to another once you have exactly what you want in the first place. A great number of the system pages and popups are identical from one panel type to another, especially things like keypads and keyboards.

    2. I never asked that question myself, because it seems to just work ... but the only reasonable explanations are (1) that any text field on the same page as buttons programmed as "Text Entry" will get the text from those buttons, or (2) any buttons designated as text entry will send their text to whatever text field is currently displayed. They use the same port number (zero) and the only channel designation is text entry, so it wouldn't make sense any other way, or every text field in the project would report no matter where you were pushing the buttons.
Sign In or Register to comment.