Re: Method to put a c-obj (or JSON) into a hierarchical list

2017-10-29 Thread Kirk Brooks via 4D_Tech
To follow up a little bit -

After working with the above code I'm starting to really like it.

First a correction, where it says " $subList:=New list" change it to "
$subList:=0".
As soon as the next line is executed $sublist gets assigned a new list
anyway and this is a memory leak.

The other change I made is to write the full path to the key as another
parameter. The benefit with this is I have that path to use for updating
the c-obj when something is changed.

It turns out to be pretty simple to handle editing the values. I added an
enterable variable to the form and hide it. When I double click on the
display hList I can get all the relevant bits easily:

: (Form event=On Double Clicked)

GET LIST ITEM(Self->;*;$itemRef;$itemText)

GET LIST ITEM PARAMETER(Self->;$itemRef;Additional text;$value)

GET MOUSE($x;$y;$mousebutton)

GET LIST PROPERTIES(Self->;$appearance;$icon;$lineHeight)

OBJECT GET COORDINATES(Self->;$left;$top;$right;$bottom)


​And with a little math determine the x,y and width of where the ​to
position my hidden variable relative to the hList:

$n:=($y-$top)\$lineHeight  //  n lines from top of the list

$y:=$top+($n*$lineHeight)

$x:=$left+150  //  the 150 is arbitrary

$width:=$right-$x-18  //  18 is for the scroll bar


​Then just move it into place, make if visible and put $value into it. This
is when I realized having the full path to the value is useful - much
easier than having to work it out by walking back up the list. ​


-- 
Kirk Brooks
San Francisco, CA
===

*The only thing necessary for the triumph of evil is for good men to do
nothing.*

*- Edmund Burke*
**
4D Internet Users Group (4D iNUG)
FAQ:  http://lists.4d.com/faqnug.html
Archive:  http://lists.4d.com/archives.html
Options: http://lists.4d.com/mailman/options/4d_tech
Unsub:  mailto:4d_tech-unsubscr...@lists.4d.com
**

Re: Method to put a c-obj (or JSON) into a hierarchical list

2017-10-29 Thread Keisuke Miyako via 4D_Tech
I think that's because the assignment operator is typically over-ridden by a 
toString() method or something similar in template or class based languages.

anyway,

4D is a strongly typed language, so the use of the 3rd argument "Is text" does 
not remove the need to declare the left operand.

if you

$t:=OB Get($o;"foo";Is text)

then you must

C_TEXT($t)

to make it work in compiled mode.

> 2017/10/30 7:57、Kirk Brooks via 4D_Tech <4d_tech@lists.4d.com> のメール:
>
> ​This aspect of using text is in keeping with what I've noticed working
> with other platforms that use JSON heavily - they frequently make all the
> JSON values text.




**
4D Internet Users Group (4D iNUG)
FAQ:  http://lists.4d.com/faqnug.html
Archive:  http://lists.4d.com/archives.html
Options: http://lists.4d.com/mailman/options/4d_tech
Unsub:  mailto:4d_tech-unsubscr...@lists.4d.com
**

Re: Method to put a c-obj (or JSON) into a hierarchical list

2017-10-29 Thread Kirk Brooks via 4D_Tech
Hi folks,

Here's a native 4D solution. This is something I just roughed out so
consider it a starting point for your own work.

I noticed, and take advantage of, a couple of interesting aspects of how 4D
handles c-objects.

1) OB GET($obj;"some key"; Is text)  will almost always return the correct
value as a text string.

I say "almost" because I couldn't find this documented as an official thing
and I haven't tried it with stuff like pointers. And it doesn't return
c-objects as stringified JSON. So - almost.

But it does seem reliable for text, numbers, booleans, and nulls. What
about dates? Dates are turned into strings in a c-obj (and JSON) so they
are actually already text. Not to worry. What about blobs? Big long text
fields.

2) OB GET ARRAY($obj;"some array";$aText_arrary)  works with everything
except actual object arrays. And nothing in native 4D works with arrays
containing mixed type (like an array with some number, some text and some
objects as elements, which is valid JSON) though it will parse such an
array.


​This aspect of using text is in keeping with what I've noticed working
with other platforms that use JSON heavily - they frequently make all the
JSON values text. I see this with DocuSign, for instance. Huge JSONs and
every value is wrapped in double quotes. Put me off at first but as I
worked with it came to appreciate the strategy - virtually no confusion
about data type. When I needed a number I knew I had to turn the string
into a number and change it back when writing. Was actually quite simple.

This is the first time I've used the 'Additional text' parameter on a
hierarchical list. I use it for the 'value'. The docs say it's a string
which suggests it could hold up to 255 chars. I decided to limit this to
100 for cosmetic reasons. Since a text key could have a lot more data than
that I put the entire data value into another custom parameter I call
'c_data' as hat tip to XML. Again the docs are a little unclear about
whether this is text or string. I'm thinking text and I'm also thinking I
wouldn't use this approach if I know I've got big text blocks in this JSON.

​A real draw back to using the hList is I can't figure out how to make the
'Additional data' part enterable. The keys are enterable is you make the
list enterable. ​

​Nonetheless it does what I wanted: take a c-obj and display it in a
hierarchical list. ​


==
  //  Json_to_hList
  // Written by: Kirk as Designer, Created: 10/29/17, 04:06:00
  // --
  // Method: Json_to_hList (c-obj; ptr; ptr)
  // $1 is c-obj
  // $2 is ptr list var
  // $3 is ptr to itemRef longint
  // Purpose: tranfer the c-obj to an hList

Err_check_methodParams (3;Count parameters;Current method name)

C_OBJECT($obj;$1)
C_POINTER($2;$3)
C_LONGINT($i;$n;$j)
C_TEXT($errMsg)

$obj:=OB_new
$obj:=$1
$list_ptr:=$2
$itemRef_ptr:=$3

$list:=New list  // this list will get this c-object
$list_ptr->:=$list

ARRAY TEXT($aKeys;0)
ARRAY LONGINT($aTypes;0)

OB GET PROPERTY NAMES($obj;$aKeys;$aTypes)
SORT ARRAY($aKeys;$aTypes;>)

$n:=Size of array($aKeys)

For ($i;1;$n)
  $itemRef_ptr->:=$itemRef_ptr->+1
  $itemRef:=$itemRef_ptr->  //  the itemRef for this item

  Case of
: ($aTypes{$i}=Is object)
  $subList:=New list
  Json_to_hList (OB Get($obj;$aKeys{$i};Is
object);->$subList;$itemRef_ptr)

  APPEND TO LIST($list;$aKeys{$i};$itemRef;$subList;False)
  SET LIST ITEM PARAMETER($list;$itemRef;"type";$aTypes{$i})

: ($aTypes{$i}=Object array)
  $arrList:=New list

  ARRAY OBJECT($aObjs;0)
  ARRAY TEXT($aText;0)
  OB GET ARRAY($obj;$aKeys{$i};$aText)  //  most accomodating
  OB GET ARRAY($obj;$aKeys{$i};$aObjs)

  For ($c;1;Size of array($aText))
$value:=$aText{$c}
$thisKey:=$aKeys{$i}+"["+String($c)+"]"

If ($value="[object Object]")  // this is an object
  $subList:=New list
  Json_to_hList ($aObjs{$c};->$subList;$itemRef_ptr)

  APPEND TO LIST($arrList;$thisKey;$itemRef;$subList;False)
  SET LIST ITEM PARAMETER($arrList;$itemRef;"type";$aTypes{$i})
Else   //   use this
  If (Length($value)>100)  // could be 255
$c_data:=$value
$value:=Substring($value;1;100)+"..."
  Else
$c_data:=""
  End if

  APPEND TO LIST($arrList;$thisKey;$itemRef)
  SET LIST ITEM PARAMETER($arrList;$itemRef;Additional text;$value)
  SET LIST ITEM PARAMETER($arrList;$itemRef;"cData";$c_data)
  SET LIST ITEM PARAMETER($arrList;$itemRef;"type";Is text)

  $itemRef_ptr->:=$itemRef_ptr->+1
  $itemRef:=$itemRef_ptr->  //  the itemRef for this item
End if
  End for

// 
  APPEND TO LIST($list;$aKeys{$i};$itemRef;$arrList;False)
  SET LIST ITEM PARAMETER($list;$itemRef;"type";$aTypes{$i})

Else
  $value:=OB Get($obj;$aKeys{$i};Is text)

  If

Re: Method to put a c-obj (or JSON) into a hierarchical list

2017-10-29 Thread Jeffrey Kain via 4D_Tech
I thought it was clever too. That’s why we like hiring the young’ns...

1. Create a form named JSON_Viewer that has:
  - a system web area with On Load enabled
  - a button labeled “Save as JSON” with On Clicked enabled

2. Create two project methods:
  - JSON_Display
  - JSON_Display_Initialize

3. Download the four required files from my Dropbox and put them into whatever 
resource distribution system you use (Resources folder, templates table, etc.):
  - jquery.js
  - json-viewer.css 
  - json-viewer.js
  - JSON_Viewer_Template.html

https://www.dropbox.com/sh/bcmzoq0n8l8m84a/AABIrBuuvVGNYJworNFvZWVMa?dl=0

4. Replace File_Create and File_Cleanup in the code below with your own file 
management wrappers.

5. Usage:

   JSON_Display ($my4DObjectVar)



 Code for the web area On Load event:

Case of 
: (Form event=On Load)

WA OPEN URL(*;OBJECT Get name;tJSON_Display_Path)

End case 


 Code for the Save as JSON button:

Case of 
: (Form event=On Clicked)

$hDoc:=Create document("";".json")
If (OK=1)
SEND PACKET($hDoc;tJSON)
CLOSE DOCUMENT($hDoc)
End if 
End case 


 Code for JSON_Display_Initialize:

  // JSON_Display_Initialize
  //
  // Backend method for JSON_Display to work. This creates the prerequisite .js 
  // files in the temp folder.
  //
  // No Parameters.

C_TEXT($tJQuery;$tJsonViewerCSS;$tJsonViewerJS)

  // Copy the required files into text variables and write
  // them into the temp directory. These must be saved into the
  // same directory.

$tJQuery:=Global_TextForKey ("jquery.js")
$tJsonViewerCSS:=Global_TextForKey ("json-viewer.css")
$tJsonViewerJS:=Global_TextForKey ("json-viewer.js")

File_Create ("jquery.js";$tJQuery;"Temp_Folder")
File_Create ("json-viewer.css";$tJsonViewerCSS;"Temp_Folder")
File_Create ("json-viewer.js";$tJsonViewerJS;"Temp_Folder”)


 Code for JSON_Display:

  // JSON_Display ( $oObject )
  //
  // Displays an object as JSON in a web area.
  //
  // $1 - OBJECT - the JSON object to display

C_OBJECT($1;$o)
$o:=$1

  // Initialize components.
JSON_Display_Initialize 

C_TEXT($tHTML;$tName;tJSON_Display_Path;tJSON)

tJSON:=JSON Stringify($o)

  // Create HTML file using text substitution on the
  // file JSON_Viewer_Template.html
$tHTML:=Replace string(Global_TextForKey 
("JSON_Viewer_Template");"[json_goes_here]";tJSON)
$tName:="json-"+String(Milliseconds)+".html"

tJSON_Display_Path:=File_Create ($tName;$tHTML;"Temp_Folder")

  // Open window and display object.
C_LONGINT($lWin)
$lWin:=Open form window("JSON_Viewer";Plain form window)
DIALOG("JSON_Viewer")
CLOSE WINDOW

  // Clean up stuff left around.
File_Cleanup (tJSON_Display_Path)
CLEAR VARIABLE(tJSON_Display_Path)
CLEAR VARIABLE(tJSON)


**
4D Internet Users Group (4D iNUG)
FAQ:  http://lists.4d.com/faqnug.html
Archive:  http://lists.4d.com/archives.html
Options: http://lists.4d.com/mailman/options/4d_tech
Unsub:  mailto:4d_tech-unsubscr...@lists.4d.com
**

Re: Image Grid Widget

2017-10-29 Thread Keisuke Miyako via 4D_Tech
rendering SVG is CPU expensive,
it's normally better to rasterise (convert to PNG) if the image is static.

> 2017/10/28 19:49、Ingo Wolf via 4D_Tech <4d_tech@lists.4d.com> のメール:
> try "image/svg+xml" as media type, e.g.
> $dataURI:="data:image/svg+xml;base64,"+...




**
4D Internet Users Group (4D iNUG)
FAQ:  http://lists.4d.com/faqnug.html
Archive:  http://lists.4d.com/archives.html
Options: http://lists.4d.com/mailman/options/4d_tech
Unsub:  mailto:4d_tech-unsubscr...@lists.4d.com
**

Re: Resizable subforms

2017-10-29 Thread Keisuke Miyako via 4D_Tech
widget resizing based on
OBJECT GET SUBFORM CONTAINER SIZE + On Load
will not work if you use Open window.

you should use Open form window.

if you must use Open window,
the earliest you can resize the widget would be On Timer.

> 2017/10/28 21:03、Pat Bensky via 4D_Tech <4d_tech@lists.4d.com> のメール:
> I've decided that it must be something to do
> with the way the parent form is resized when it's opened.




**
4D Internet Users Group (4D iNUG)
FAQ:  http://lists.4d.com/faqnug.html
Archive:  http://lists.4d.com/archives.html
Options: http://lists.4d.com/mailman/options/4d_tech
Unsub:  mailto:4d_tech-unsubscr...@lists.4d.com
**

Re: Method to put a c-obj (or JSON) into a hierarchical list

2017-10-29 Thread Kirk Brooks via 4D_Tech
Jeff,
Nice idea. I'd appreciate a look.

On Sun, Oct 29, 2017 at 2:37 PM, Jeffrey Kain via 4D_Tech <
4d_tech@lists.4d.com> wrote:

> We built one using a couple of JavaScript files and a CSS file that opens
> in a web area. Read-only of course, but interactive and
> collapsible/expandable.
>
> Let me know if you’re interested and I’ll post it here.
>
> > On Oct 29, 2017, at 5:26 PM, Kirk Brooks via 4D_Tech <
> 4d_tech@lists.4d.com> wrote:
> >
> > Jeff,
> > Just display a c-obj in a hierarchical list. I want to mimic the way the
> > debugger shows c-objects.
>
> **
> 4D Internet Users Group (4D iNUG)
> FAQ:  http://lists.4d.com/faqnug.html
> Archive:  http://lists.4d.com/archives.html
> Options: http://lists.4d.com/mailman/options/4d_tech
> Unsub:  mailto:4d_tech-unsubscr...@lists.4d.com
> **
>



-- 
Kirk Brooks
San Francisco, CA
===

*The only thing necessary for the triumph of evil is for good men to do
nothing.*

*- Edmund Burke*
**
4D Internet Users Group (4D iNUG)
FAQ:  http://lists.4d.com/faqnug.html
Archive:  http://lists.4d.com/archives.html
Options: http://lists.4d.com/mailman/options/4d_tech
Unsub:  mailto:4d_tech-unsubscr...@lists.4d.com
**

Re: Method to put a c-obj (or JSON) into a hierarchical list

2017-10-29 Thread David Adams via 4D_Tech
Jeff,

Now that's a smart idea. I'm interested.
**
4D Internet Users Group (4D iNUG)
FAQ:  http://lists.4d.com/faqnug.html
Archive:  http://lists.4d.com/archives.html
Options: http://lists.4d.com/mailman/options/4d_tech
Unsub:  mailto:4d_tech-unsubscr...@lists.4d.com
**

Re: Method to put a c-obj (or JSON) into a hierarchical list

2017-10-29 Thread Jeffrey Kain via 4D_Tech
We built one using a couple of JavaScript files and a CSS file that opens in a 
web area. Read-only of course, but interactive and collapsible/expandable. 

Let me know if you’re interested and I’ll post it here.

> On Oct 29, 2017, at 5:26 PM, Kirk Brooks via 4D_Tech <4d_tech@lists.4d.com> 
> wrote:
> 
> Jeff,
> Just display a c-obj in a hierarchical list. I want to mimic the way the
> debugger shows c-objects.

**
4D Internet Users Group (4D iNUG)
FAQ:  http://lists.4d.com/faqnug.html
Archive:  http://lists.4d.com/archives.html
Options: http://lists.4d.com/mailman/options/4d_tech
Unsub:  mailto:4d_tech-unsubscr...@lists.4d.com
**

Re: Method to put a c-obj (or JSON) into a hierarchical list

2017-10-29 Thread Kirk Brooks via 4D_Tech
Jeff,
Just display a c-obj in a hierarchical list. I want to mimic the way the
debugger shows c-objects.

On Sun, Oct 29, 2017 at 11:03 AM, Jeffrey Kain via 4D_Tech <
4d_tech@lists.4d.com> wrote:

> What are you trying to do?
>
> > On Oct 29, 2017, at 1:38 PM, Kirk Brooks via 4D_Tech <
> 4d_tech@lists.4d.com> wrote:
> >
> > I thought I had such a method but it seems I don't. Before I re-invent
> this
> > particular wheel does anyone have this already and are willing to share?
>
> **
> 4D Internet Users Group (4D iNUG)
> FAQ:  http://lists.4d.com/faqnug.html
> Archive:  http://lists.4d.com/archives.html
> Options: http://lists.4d.com/mailman/options/4d_tech
> Unsub:  mailto:4d_tech-unsubscr...@lists.4d.com
> **




-- 
Kirk Brooks
San Francisco, CA
===

*The only thing necessary for the triumph of evil is for good men to do
nothing.*

*- Edmund Burke*
**
4D Internet Users Group (4D iNUG)
FAQ:  http://lists.4d.com/faqnug.html
Archive:  http://lists.4d.com/archives.html
Options: http://lists.4d.com/mailman/options/4d_tech
Unsub:  mailto:4d_tech-unsubscr...@lists.4d.com
**

Re: Method to put a c-obj (or JSON) into a hierarchical list

2017-10-29 Thread Jeffrey Kain via 4D_Tech
What are you trying to do?

> On Oct 29, 2017, at 1:38 PM, Kirk Brooks via 4D_Tech <4d_tech@lists.4d.com> 
> wrote:
> 
> I thought I had such a method but it seems I don't. Before I re-invent this
> particular wheel does anyone have this already and are willing to share?

**
4D Internet Users Group (4D iNUG)
FAQ:  http://lists.4d.com/faqnug.html
Archive:  http://lists.4d.com/archives.html
Options: http://lists.4d.com/mailman/options/4d_tech
Unsub:  mailto:4d_tech-unsubscr...@lists.4d.com
**

Method to put a c-obj (or JSON) into a hierarchical list

2017-10-29 Thread Kirk Brooks via 4D_Tech
I thought I had such a method but it seems I don't. Before I re-invent this
particular wheel does anyone have this already and are willing to share?

Thanks

-- 
Kirk Brooks
San Francisco, CA
===

*The only thing necessary for the triumph of evil is for good men to do
nothing.*

*- Edmund Burke*
**
4D Internet Users Group (4D iNUG)
FAQ:  http://lists.4d.com/faqnug.html
Archive:  http://lists.4d.com/archives.html
Options: http://lists.4d.com/mailman/options/4d_tech
Unsub:  mailto:4d_tech-unsubscr...@lists.4d.com
**

Re: Resizable subforms

2017-10-29 Thread Ortwin Zillgen via 4D_Tech
some reading




Regards
O r t w i n  Z i l l g e n
-
   
 
member of developer-network 

**
4D Internet Users Group (4D iNUG)
FAQ:  http://lists.4d.com/faqnug.html
Archive:  http://lists.4d.com/archives.html
Options: http://lists.4d.com/mailman/options/4d_tech
Unsub:  mailto:4d_tech-unsubscr...@lists.4d.com
**

Re: Image Grid Widget

2017-10-29 Thread truegold via 4D_Tech
Hi Ingo,

Thanks that helped.

Part of the images displayed and part didn’t. But there seems to b an xml error 
that I have to address.

Anyway, that got be part day there.

Appreciate,
John...

> try "image/svg+xml" as media type, e.g.
> $dataURI:="data:image/svg+xml;base64,"+...

**
4D Internet Users Group (4D iNUG)
FAQ:  http://lists.4d.com/faqnug.html
Archive:  http://lists.4d.com/archives.html
Options: http://lists.4d.com/mailman/options/4d_tech
Unsub:  mailto:4d_tech-unsubscr...@lists.4d.com
**

Re: info.plist

2017-10-29 Thread David Adams via 4D_Tech
I've been working with BUILD APPLICATION a lot lately, so a couple of notes:

* 4D _will_ record an error in the log if the path to the license files is
wrong or, for a built single-user app, the path to the engine is wrong.

* 4D will _not_ record an error if the path to your custom icons is wrong.

* It's not that hard to clear out extra resources after a build, like .xlf
files and so on.

* 4D has a tech tip about clearing out the SVG component help file which
has a helpful description of the file paths for compiled databases and
merged apps.

* Go ahead and clear out the /Cache folders from within Components,
Plugins, and Resources after the build. They can contain 100s of MB of
stuff and you don't need it.

Check the archives for some past tips and code from Tim Nevels on tweaking
the info/about details. There are several different build keys you can use:

Tip: I also like to onboard a small build_info.json file after the build.
It's got details that I might want to read out about the build itself for
error logs, about boxes, error reports, etc. This isn't part of the
standard build project file but it's easy to implement.


I'd be very interested to hear what other people clear out post-build.
**
4D Internet Users Group (4D iNUG)
FAQ:  http://lists.4d.com/faqnug.html
Archive:  http://lists.4d.com/archives.html
Options: http://lists.4d.com/mailman/options/4d_tech
Unsub:  mailto:4d_tech-unsubscr...@lists.4d.com
**

Re: [Snippet] Process_IsPreemptive

2017-10-29 Thread David Adams via 4D_Tech
Hello! The 1980s called, they want their naming conventions back! ;-)
**
4D Internet Users Group (4D iNUG)
FAQ:  http://lists.4d.com/faqnug.html
Archive:  http://lists.4d.com/archives.html
Options: http://lists.4d.com/mailman/options/4d_tech
Unsub:  mailto:4d_tech-unsubscr...@lists.4d.com
**

Re: [Snippet] Process_IsPreemptive

2017-10-29 Thread Arnaud de Montard via 4D_Tech

> Le 29 oct. 2017 à 01:51, David Adams via 4D_Tech <4d_tech@lists.4d.com> a 
> écrit :
> 
> if you prefer their variable naming style.

I suppose you're talking about this:

  PROCESS PROPERTIES($vlProcNum;$vName;$vState;$vTime;$vFlags)

It's a trick from very very experienced developers. 
By adding the "v" after the "$", they are sure that 4D will understand they're 
talking about a Variable. 
Some pretend that V is more efficient than v, but there is no evidence for 
that. 

-- 
Arnaud de Montard 



**
4D Internet Users Group (4D iNUG)
FAQ:  http://lists.4d.com/faqnug.html
Archive:  http://lists.4d.com/archives.html
Options: http://lists.4d.com/mailman/options/4d_tech
Unsub:  mailto:4d_tech-unsubscr...@lists.4d.com
**

Re: info.plist

2017-10-29 Thread Jeremy Roussak via 4D_Tech
Thanks, Spencer. I was right: I was indeed missing something obvious!

Jeremy


Jeremy Roussak
j...@mac.com

On 29 Oct 2017, 10:24 +, Spencer Hinsdale via 4D_Tech 
<4d_tech@lists.4d.com>, wrote:
> http://doc.4d.com/4Dv16/4D/16/4D-XML-Keys-BuildApplication.100-3130124.en.html
>
>
> > On Oct 29, 2017, at 1:31 AM, Jeremy Roussak via 4D_Tech 
> > <4d_tech@lists.4d.com> wrote:
> >
> > I’m sure I’m missing something obvious (and I think I’ve managed to solve 
> > the issue in the past), but…
> >
> > How do I tell 4D to put stuff into the info.plist file for a built 
> > application? I’m particularly interested in version strings.
> >
> > Mac, 4Dv14.
> >
> > Thanks.
> >
> > Jeremy
> >
> >
> > Jeremy Roussak
> > j...@mac.com
> >
> >
> >
> > **
> > 4D Internet Users Group (4D iNUG)
> > FAQ: http://lists.4d.com/faqnug.html
> > Archive: http://lists.4d.com/archives.html
> > Options: http://lists.4d.com/mailman/options/4d_tech
> > Unsub: mailto:4d_tech-unsubscr...@lists.4d.com
> > **
> **
> 4D Internet Users Group (4D iNUG)
> FAQ: http://lists.4d.com/faqnug.html
> Archive: http://lists.4d.com/archives.html
> Options: http://lists.4d.com/mailman/options/4d_tech
> Unsub: mailto:4d_tech-unsubscr...@lists.4d.com
> **
**
4D Internet Users Group (4D iNUG)
FAQ:  http://lists.4d.com/faqnug.html
Archive:  http://lists.4d.com/archives.html
Options: http://lists.4d.com/mailman/options/4d_tech
Unsub:  mailto:4d_tech-unsubscr...@lists.4d.com
**

Re: info.plist

2017-10-29 Thread Spencer Hinsdale via 4D_Tech
http://doc.4d.com/4Dv16/4D/16/4D-XML-Keys-BuildApplication.100-3130124.en.html


> On Oct 29, 2017, at 1:31 AM, Jeremy Roussak via 4D_Tech 
> <4d_tech@lists.4d.com> wrote:
> 
> I’m sure I’m missing something obvious (and I think I’ve managed to solve the 
> issue in the past), but…
> 
> How do I tell 4D to put stuff into the info.plist file for a built 
> application? I’m particularly interested in version strings.
> 
> Mac, 4Dv14.
> 
> Thanks.
> 
> Jeremy
> 
> 
> Jeremy Roussak
> j...@mac.com
> 
> 
> 
> **
> 4D Internet Users Group (4D iNUG)
> FAQ:  http://lists.4d.com/faqnug.html
> Archive:  http://lists.4d.com/archives.html
> Options: http://lists.4d.com/mailman/options/4d_tech
> Unsub:  mailto:4d_tech-unsubscr...@lists.4d.com
> **
**
4D Internet Users Group (4D iNUG)
FAQ:  http://lists.4d.com/faqnug.html
Archive:  http://lists.4d.com/archives.html
Options: http://lists.4d.com/mailman/options/4d_tech
Unsub:  mailto:4d_tech-unsubscr...@lists.4d.com
**

info.plist

2017-10-29 Thread Jeremy Roussak via 4D_Tech
I’m sure I’m missing something obvious (and I think I’ve managed to solve the 
issue in the past), but…

How do I tell 4D to put stuff into the info.plist file for a built application? 
I’m particularly interested in version strings.

Mac, 4Dv14.

Thanks.

Jeremy


Jeremy Roussak
j...@mac.com



**
4D Internet Users Group (4D iNUG)
FAQ:  http://lists.4d.com/faqnug.html
Archive:  http://lists.4d.com/archives.html
Options: http://lists.4d.com/mailman/options/4d_tech
Unsub:  mailto:4d_tech-unsubscr...@lists.4d.com
**