<?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>topic Re: LPXML - Making standalone GSM with macros in GDL</title>
    <link>https://community.graphisoft.com/t5/GDL/LPXML-Making-standalone-GSM-with-macros/m-p/166534#M5248</link>
    <description>Thank you! &lt;IMG src="https://community.graphisoft.com/legacyfs/online/emojis/icon_smile.gif" style="display : inline;" /&gt;&lt;BR /&gt;
&lt;BR /&gt;
You are right with the labels, it can be strings (even quoted) &lt;E&gt;&lt;span class="lia-unicode-emoji" title=":winking_face:"&gt;😉&lt;/span&gt;&lt;/E&gt;&lt;BR /&gt;
&lt;BR /&gt;
I'm not GDL programmer, so I don't know so much about it. I saw a couple of GSM having call inside it, calling another GSM.. and that GSM could be large, having specified 2D script, 3D script, etc. etc. I just still don't know if I should paste all scripts to the call section and how to handle "call someMacro with parameters abcd" with the gosub way  &lt;IMG src="https://community.graphisoft.com/legacyfs/online/emojis/icon_rolleyes.gif" style="display : inline;" /&gt; &lt;BR /&gt;
&lt;BR /&gt;
I need to automate this via scripts.</description>
    <pubDate>Mon, 08 Jul 2013 18:29:28 GMT</pubDate>
    <dc:creator>Anonymous</dc:creator>
    <dc:date>2013-07-08T18:29:28Z</dc:date>
    <item>
      <title>LPXML - Making standalone GSM with macros</title>
      <link>https://community.graphisoft.com/t5/GDL/LPXML-Making-standalone-GSM-with-macros/m-p/166530#M5244</link>
      <description>&lt;DIV class="actalk-migrated-content"&gt;Hi, I have a problem when making a standalone GSM.&lt;BR /&gt;&lt;BR /&gt;I Have a GSM with several macro calls (i.e. i call another GSM objects). I want to make a standalone GSM.&lt;BR /&gt;&lt;BR /&gt;I don't know if I can replace the call and macro sections and how. I'm working with XMLs converted with LPXML. I guessed LPXML has this feature (for embedding macros), but I'm not sure.&lt;BR /&gt;&lt;BR /&gt;Currently working on AC16 with LPXML for AC16.&lt;BR /&gt;&lt;BR /&gt;Any suggestions? Thx in advance.&lt;/DIV&gt;</description>
      <pubDate>Wed, 02 Aug 2023 12:04:53 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/GDL/LPXML-Making-standalone-GSM-with-macros/m-p/166530#M5244</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2023-08-02T12:04:53Z</dc:date>
    </item>
    <item>
      <title>Re: LPXML - Making standalone GSM with macros</title>
      <link>https://community.graphisoft.com/t5/GDL/LPXML-Making-standalone-GSM-with-macros/m-p/166531#M5245</link>
      <description>I'm not that up on the XML options. The old fashioned way is to copy/paste the scripts from the macros into the main part. This can be done inline or using GOSUB. &lt;BR /&gt;
&lt;BR /&gt;
If you go this route be sure to comment the code well. It is likely to get long and unwieldy. I find the following to be helpful...&lt;BR /&gt;

&lt;PRE&gt;!MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM   Description of Code Section&lt;/PRE&gt;

...for section headers.&lt;BR /&gt;

&lt;PRE&gt;!_________________________________________    Description of Code Segment to Follow&lt;/PRE&gt;

...to ID the functional parts.&lt;BR /&gt;
&lt;BR /&gt;
With long enough leaders I can scan the comments easily as I scroll the code.</description>
      <pubDate>Thu, 04 Jul 2013 15:15:52 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/GDL/LPXML-Making-standalone-GSM-with-macros/m-p/166531#M5245</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2013-07-04T15:15:52Z</dc:date>
    </item>
    <item>
      <title>Re: LPXML - Making standalone GSM with macros</title>
      <link>https://community.graphisoft.com/t5/GDL/LPXML-Making-standalone-GSM-with-macros/m-p/166532#M5246</link>
      <description>Can you please provide a little example using the GOSUB way? I don't know what sections from XML I need to copy from. I don't care about the comments sections. Thank you &lt;IMG src="https://community.graphisoft.com/legacyfs/online/emojis/icon_smile.gif" style="display : inline;" /&gt;</description>
      <pubDate>Mon, 08 Jul 2013 07:37:32 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/GDL/LPXML-Making-standalone-GSM-with-macros/m-p/166532#M5246</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2013-07-08T07:37:32Z</dc:date>
    </item>
    <item>
      <title>Re: LPXML - Making standalone GSM with macros</title>
      <link>https://community.graphisoft.com/t5/GDL/LPXML-Making-standalone-GSM-with-macros/m-p/166533#M5247</link>
      <description>I don't have an example handy as I am on my iPad. &lt;BR /&gt;
&lt;BR /&gt;
The process within GDL is pretty simple (generally) but as I said I don't know much about the XML.&lt;BR /&gt;
&lt;BR /&gt;
In the script you just replace the CALL statement with the GOSUB and copy/paste the necessary code into the script.&lt;BR /&gt;
&lt;BR /&gt;
The basic form is something  like...&lt;BR /&gt;

&lt;PRE&gt;! Bunch of code doing stuff...

GOSUB 1000

! More code doing more stuff...

END

1000: ! Code copied from previously used macro...

RETURN ! Continues execution back at the GOSUB statement&lt;/PRE&gt;

There are other ways to structure it but this is typical. The END statement terminates the script and prevents the subroutines from running again.&lt;BR /&gt;
&lt;BR /&gt;
Note that the line numbering is the old form. I believe it can also be done with arbitrary strings now but I haven't used this method myself yet. The line numbers are also arbitrary, don't have to be in any order and have nothing to do with the actual number of lines in the code.</description>
      <pubDate>Mon, 08 Jul 2013 14:22:38 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/GDL/LPXML-Making-standalone-GSM-with-macros/m-p/166533#M5247</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2013-07-08T14:22:38Z</dc:date>
    </item>
    <item>
      <title>Re: LPXML - Making standalone GSM with macros</title>
      <link>https://community.graphisoft.com/t5/GDL/LPXML-Making-standalone-GSM-with-macros/m-p/166534#M5248</link>
      <description>Thank you! &lt;IMG src="https://community.graphisoft.com/legacyfs/online/emojis/icon_smile.gif" style="display : inline;" /&gt;&lt;BR /&gt;
&lt;BR /&gt;
You are right with the labels, it can be strings (even quoted) &lt;E&gt;&lt;span class="lia-unicode-emoji" title=":winking_face:"&gt;😉&lt;/span&gt;&lt;/E&gt;&lt;BR /&gt;
&lt;BR /&gt;
I'm not GDL programmer, so I don't know so much about it. I saw a couple of GSM having call inside it, calling another GSM.. and that GSM could be large, having specified 2D script, 3D script, etc. etc. I just still don't know if I should paste all scripts to the call section and how to handle "call someMacro with parameters abcd" with the gosub way  &lt;IMG src="https://community.graphisoft.com/legacyfs/online/emojis/icon_rolleyes.gif" style="display : inline;" /&gt; &lt;BR /&gt;
&lt;BR /&gt;
I need to automate this via scripts.</description>
      <pubDate>Mon, 08 Jul 2013 18:29:28 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/GDL/LPXML-Making-standalone-GSM-with-macros/m-p/166534#M5248</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2013-07-08T18:29:28Z</dc:date>
    </item>
    <item>
      <title>Re: LPXML - Making standalone GSM with macros</title>
      <link>https://community.graphisoft.com/t5/GDL/LPXML-Making-standalone-GSM-with-macros/m-p/166535#M5249</link>
      <description>You should check the return value of ACAPI_3D_GetCurrentWindowSight before using the sight. In case of non-3d sight it will return APIERR_BADWINDOW I think. The void** parameter won't change.</description>
      <pubDate>Tue, 14 Oct 2014 16:48:33 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/GDL/LPXML-Making-standalone-GSM-with-macros/m-p/166535#M5249</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2014-10-14T16:48:33Z</dc:date>
    </item>
  </channel>
</rss>

