<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>Kinetis MicrocontrollersのトピックRe: eGUI - purpose of the 'pOnUsrMsg' argument in object declaration</title>
    <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/eGUI-purpose-of-the-pOnUsrMsg-argument-in-object-declaration/m-p/187311#M2039</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I have two questions:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;1) Is the 'D4D_InvalidateObject' function thread-safe ? &lt;/P&gt;&lt;P&gt;Let's say I'm changing object parameter from a few threads concurrently. Should I protect (with the mutex for example) only the parts that change parameter (and next use D4D_InvalidateObject outside the protected block) ?&lt;/P&gt;&lt;P&gt;Or, should I protect the parts with parameter change AND the 'D4D_InvalidateObject' function (everything inside protected block) ?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;2) I'm not sure what is the meaning of bComplete parameter in D4D_InvalidateObject. I suppose 1 means that the object is fully redrawn (for example all the button with background, text, boarders etc. is redrawn). Am I right ? What is the meaning of 0 ?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks&lt;/P&gt;&lt;P&gt;Maciek&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ps. is there any chance to obtain the new User Guide (for 3.0) before official release ?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Sun, 16 Sep 2012 07:37:36 GMT</pubDate>
    <dc:creator>Maciek</dc:creator>
    <dc:date>2012-09-16T07:37:36Z</dc:date>
    <item>
      <title>eGUI - purpose of the 'pOnUsrMsg' argument in object declaration</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/eGUI-purpose-of-the-pOnUsrMsg-argument-in-object-declaration/m-p/187307#M2035</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;what is the purpose of 'pOnUsrMsg' argument in object declaration macro ?&lt;/P&gt;&lt;P&gt;How a user message can be sent to an object ?&lt;/P&gt;&lt;P&gt;What does it mean (user guide comment on pOnUsrMsg): "This callback is called before this&lt;/P&gt;&lt;P&gt;message event is sent to the object itself" ?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Any 'design patterns' here ?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;P&gt;Maciek&lt;/P&gt;&lt;P&gt;&lt;SPAN class="mce_paste_marker"&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sun, 09 Sep 2012 13:04:19 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/eGUI-purpose-of-the-pOnUsrMsg-argument-in-object-declaration/m-p/187307#M2035</guid>
      <dc:creator>Maciek</dc:creator>
      <dc:date>2012-09-09T13:04:19Z</dc:date>
    </item>
    <item>
      <title>Re: eGUI - purpose of the 'pOnUsrMsg' argument in object declaration</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/eGUI-purpose-of-the-pOnUsrMsg-argument-in-object-declaration/m-p/187308#M2036</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;the eGUI handles all actions/events to objects through the messages. So and if you want to do some advanced techniques you can catch the event just before the object get it and do your own action. And after your own action you can decide if the object gets the message or if will be discarded.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The example:&lt;/P&gt;&lt;P&gt;You want catch the message that the object has been just redrawn and you want to add to object some own graphics:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;1 declare object and for the parameter &lt;SPAN style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt; 'pOnUsrMsg'&lt;/SPAN&gt;, place name of your handle function with prototype: &lt;/P&gt;&lt;P&gt;Byte (*OnUsrMessage)(struct D4D_MESSAGE_S* pMsg)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;2. Create the handle function:&lt;/P&gt;&lt;P&gt;Byte MyObject_OnUsrMessage(D4D_MESSAGE_S* pMsg)&lt;/P&gt;&lt;P&gt;{&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if(pMsg-&amp;gt;msgId == D4D_MSG_DRAWDONE)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Draw your own graphic&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return D4D_MSG_NOSKIP; // Message won't be discarded&lt;/P&gt;&lt;P&gt;}&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Gargy&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 10 Sep 2012 04:43:23 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/eGUI-purpose-of-the-pOnUsrMsg-argument-in-object-declaration/m-p/187308#M2036</guid>
      <dc:creator>Gargy</dc:creator>
      <dc:date>2012-09-10T04:43:23Z</dc:date>
    </item>
    <item>
      <title>Re: eGUI - purpose of the 'pOnUsrMsg' argument in object declaration</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/eGUI-purpose-of-the-pOnUsrMsg-argument-in-object-declaration/m-p/187309#M2037</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Ok. Above is clear. Thanks.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;What is the preferred/right way of accessing objects (changing color, text, dimensions) - by a user of the library, from another MQX task ? For example I want to change the button property (color) in response to the CAN message received...&lt;/P&gt;&lt;P&gt;CAN message is received by another task.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;P&gt;Maciek &lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 11 Sep 2012 13:49:41 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/eGUI-purpose-of-the-pOnUsrMsg-argument-in-object-declaration/m-p/187309#M2037</guid>
      <dc:creator>Maciek</dc:creator>
      <dc:date>2012-09-11T13:49:41Z</dc:date>
    </item>
    <item>
      <title>Re: eGUI - purpose of the 'pOnUsrMsg' argument in object declaration</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/eGUI-purpose-of-the-pOnUsrMsg-argument-in-object-declaration/m-p/187310#M2038</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;good question.&lt;/P&gt;&lt;P&gt;With colours this is easy because the eGUI is running on colour schemes so you need do for your button own colour scheme in RAM.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;In other task you can changed this colour normally (if you do this from more task the MUTEX will be fine), and then you can call the D4D_InvalidateObject function, and it depends on color what you change, you will use parameter for full redraw or just content.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Gargy &lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 12 Sep 2012 04:53:06 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/eGUI-purpose-of-the-pOnUsrMsg-argument-in-object-declaration/m-p/187310#M2038</guid>
      <dc:creator>Gargy</dc:creator>
      <dc:date>2012-09-12T04:53:06Z</dc:date>
    </item>
    <item>
      <title>Re: eGUI - purpose of the 'pOnUsrMsg' argument in object declaration</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/eGUI-purpose-of-the-pOnUsrMsg-argument-in-object-declaration/m-p/187311#M2039</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I have two questions:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;1) Is the 'D4D_InvalidateObject' function thread-safe ? &lt;/P&gt;&lt;P&gt;Let's say I'm changing object parameter from a few threads concurrently. Should I protect (with the mutex for example) only the parts that change parameter (and next use D4D_InvalidateObject outside the protected block) ?&lt;/P&gt;&lt;P&gt;Or, should I protect the parts with parameter change AND the 'D4D_InvalidateObject' function (everything inside protected block) ?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;2) I'm not sure what is the meaning of bComplete parameter in D4D_InvalidateObject. I suppose 1 means that the object is fully redrawn (for example all the button with background, text, boarders etc. is redrawn). Am I right ? What is the meaning of 0 ?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks&lt;/P&gt;&lt;P&gt;Maciek&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ps. is there any chance to obtain the new User Guide (for 3.0) before official release ?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sun, 16 Sep 2012 07:37:36 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/eGUI-purpose-of-the-pOnUsrMsg-argument-in-object-declaration/m-p/187311#M2039</guid>
      <dc:creator>Maciek</dc:creator>
      <dc:date>2012-09-16T07:37:36Z</dc:date>
    </item>
    <item>
      <title>Re: eGUI - purpose of the 'pOnUsrMsg' argument in object declaration</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/eGUI-purpose-of-the-pOnUsrMsg-argument-in-object-declaration/m-p/187312#M2040</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;1. The &lt;SPAN style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt;'D4D_InvalidateObject' function is thread-safe. Don't worry to use it.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;2. bComplete parameter when is set force the complete redraw of the object, if it clear then the object redraw just only content (no frame, no background, no titles redraw).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The documentation at the moment is not available, I'm so sorry (is in publication process).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Gargy&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 17 Sep 2012 04:52:25 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/eGUI-purpose-of-the-pOnUsrMsg-argument-in-object-declaration/m-p/187312#M2040</guid>
      <dc:creator>Gargy</dc:creator>
      <dc:date>2012-09-17T04:52:25Z</dc:date>
    </item>
    <item>
      <title>Re: eGUI - purpose of the 'pOnUsrMsg' argument in object declaration</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/eGUI-purpose-of-the-pOnUsrMsg-argument-in-object-declaration/m-p/187313#M2041</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Can I change the color scheme of a screen after creating it?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I'm trying to disable an entire screen once I open another one. Can I change the colors of the previous screen so it is obvious that it is disabled?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Elisa &lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 22 Jun 2015 20:56:27 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/eGUI-purpose-of-the-pOnUsrMsg-argument-in-object-declaration/m-p/187313#M2041</guid>
      <dc:creator>elisamejia</dc:creator>
      <dc:date>2015-06-22T20:56:27Z</dc:date>
    </item>
  </channel>
</rss>

