Re: Set Print Option clarity needed

2017-06-29 Thread Keith Goebel via 4D_Tech
Thanks for your reply.
Sounds like I have just been incredibly lucky so far that print settings have 
not been messed up by a second process.
I like to do the print settings at the start of a long print job so the user 
can start it and forget it - rather than have it stop when finally ready to 
print and wait for the user to intervene. 
Looks like I should re-think that idea.

Once I can get to v16, with its ability to change page orientation inside a 
print job, all should be well - unless there is going to be a problem with 
having more than 1 print job open at a time...
Cheers, Keith

> On 30/06/2017, at 2:38 pm, Keisuke Miyako wrote:
> printing has always been a global operation.
> 
> after all, it is the application that is doing printing, not the process.
> 
> so if you OPEN PRINTING JOB in a process and hold (TRACE for example; just 
> close the progress window on Mac)
> then call SET PRINT OPTION in a different process,
> you get the error 1009 telling you can't do that once a printing job has 
> started.
> 
> you might want to use a semaphore to make sure only one process prints at a 
> time.
> 
>> 2017/06/30 8:01、Keith Goebel via 4D_Tech <4d_tech@lists.4d.com 
>> > のメール:
>> 
>> I have not tested it as experience has taught me that current behaviour can 
>> change if the docs say something and the actual behaviour is something else 
>> and the engineers decide to fix it - so I would prefer to clearly understand 
>> the docs and how to prevent a clash between processes.

**
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: How to close a modal window if user clicks outside of it?

2017-06-29 Thread Jeremy French via 4D_Tech
Hi Kirk,

Have you looked at the “Pop up form window” window type?

The window immediately closes if the user clicks outside of the window.

http://doc.4d.com/4Dv16/4D/16.1/Open-form-window.301-3375260.en.html


> On Jun 29, 2017, at 2:02 PM, Kirk Brooks via 4D_Tech <4d_tech@lists.4d.com> 
> wrote:
> 
> I open a modal dialog within another form. I want to close this if the user
> moused to or clicks on something outside the form.

**
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: v13 (+?) - Replace String [warning]

2017-06-29 Thread John DeSoi via 4D_Tech

> On Jun 29, 2017, at 3:33 PM, Chip Scheide via 4D_Tech <4d_tech@lists.4d.com> 
> wrote:
> 
> I have a question.. what does RVLB (at the end of the blob) do?

It is at the start of the blob and identifies the byte order. If it was a blob 
from an old PPC Mac, it would be BLVR. Next byte is the type (as returned by 4D 
Type command) followed by 4 bytes for the length. Then the data. You can see 
these details by looking at the blob after executing VARIABLE TO BLOB.

John DeSoi, Ph.D.




**
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: Set Print Option clarity needed

2017-06-29 Thread Keisuke Miyako via 4D_Tech
printing has always been a global operation.

after all, it is the application that is doing printing, not the process.

so if you OPEN PRINTING JOB in a process and hold (TRACE for example; just 
close the progress window on Mac)
then call SET PRINT OPTION in a different process,
you get the error 1009 telling you can't do that once a printing job has 
started.

you might want to use a semaphore to make sure only one process prints at a 
time.

> 2017/06/30 8:01、Keith Goebel via 4D_Tech <4d_tech@lists.4d.com> のメール:
>
> I have not tested it as experience has taught me that current behaviour can 
> change if the docs say something and the actual behaviour is something else 
> and the engineers decide to fix it - so I would prefer to clearly understand 
> the docs and how to prevent a clash between processes.




**
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: [ANN] 4D Activation Errors and Login to 4D Services

2017-06-29 Thread Brian Young via 4D_Tech

All sites listed below are now accepting login credentials and working 
normally.  This also include the 4D Store that was offline for a short time.

- 4D Store
https://store.4d.com






> On Jun 29, 2017, at 12:49 PM, Brian Young via 4D_Tech <4d_tech@lists.4d.com> 
> wrote:
>
> In addition to registration, the following sites are
> affected:
>
> - Partner Central
>   http://partnercentral.4d.com
>
> - Knowledge Base
>   http://kb.4d.com
>
> - TAOW (Technical Assistance On the Web)
>   https://taow.4d.com/
>   http://help.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: [ANN] 4D Activation Errors and Login to 4D Services

2017-06-29 Thread Brian Young via 4D_Tech


Our activation server is currently allowing most activations through.  There 
may be intermittent slowness as we complete the work to ensure service.

Thank you for your patience.






> On Jun 29, 2017, at 12:49 PM, Brian Young via 4D_Tech <4d_tech@lists.4d.com> 
> wrote:
>
>
> We're currently experiencing an issue with 4D's license
> activation server that is preventing registration of any
> version of 4D, including the just-released v16 R3.
>
> In addition to registration, the following sites are
> affected:
>
> - Partner Central
>   http://partnercentral.4d.com
>
> - Knowledge Base
>   http://kb.4d.com
>
> - TAOW (Technical Assistance On the Web)
>   https://taow.4d.com/
>   http://help.4d.com/
>
> We apologize for any inconvenience this may cause.
> We'll send a status update as soon as we have more
> information.
>
> Thanks for your patience.
>
> The 4D Team
>
>
>
> **
> 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: Automatic type-ahead on single-column listbox?

2017-06-29 Thread David Adams via 4D_Tech
Hey Keith, yeah that's a great interface, for sure. In this case all I'm
after is navigating quickly by typing. But what you describe is the default
behavior in DataGrid and I find it's really, really nice.
**
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: Automatic type-ahead on single-column listbox?

2017-06-29 Thread Keith Goebel via 4D_Tech
Probably not what you are looking for and perhaps this approach has already 
been discussed…
When I want to let the user reduce the selection shown in a listbox, I add a 
search field above it and they just enter what they are looking for in that.
You can create a “type-ahead” response to an entry in the search field.

A nice touch it to actually search all columns for values that start with the 
entered value, to prevent having to assign a specific column to the search.
Users seem to like it…
Cheers, Keith

> On 29/06/2017, at 6:21 pm, Davis Adams wrote:
>> Is that actually type-ahead or simply setting the scroll on the edited
> text with a wildcard?
> 
> Don't know...but it's just what I need for my simple uses. It would be nice
> to have it in listboxes, but I guess that would take having a mechanism for
> identifying with column has focus. Although in the case of a listbox with
> one visible column, that's not too hard to figure out, I should think.

**
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
**

Set Print Option clarity needed

2017-06-29 Thread Keith Goebel via 4D_Tech
Hi all.
In the v16 Conversion doc, I noticed the following instruction.
I see it was the same from at least 4D v13, and it has caused me no problems so 
far, but I'd like to make sure there are no problems in the future...

The SET PRINT OPTION command is used to modify, by programming, the value of a 
print option. Each option defined using this command is applied to the entire 
database and for the duration of the session as long as no other command that 
modifies print parameters (PRINT SETTINGS, PRINT SELECTION without the > 
parameter, etc.) is called...

What does this actually mean?
- does "entire database" mean all printing for the current process or all 
printing for all processes? (I assume the latter)
- does "duration of the session" mean until the user quits or until the process 
finishes? (I assume it is "user quits”)

Let's say that I have 2 processes, each doing a report that takes a while and 
they both set the same Print Option but with different values at the start of 
their process, does the above mean that the latest of the processes will 
over-rule the Print Option set in the first process?

I assume that if the reports are inside a print job (except for page 
orientation) , their settings will not be affected, but what if they are not in 
a Print Job or the page orientation is changed in the second process?

I have not tested it as experience has taught me that current behaviour can 
change if the docs say something and the actual behaviour is something else and 
the engineers decide to fix it - so I would prefer to clearly understand the 
docs and how to prevent a clash between processes.

Thanks for any clarity you can offer me.
Cheers, Keith

**
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: 4Dv16 VM app still not playing nice with Finder

2017-06-29 Thread Keisuke Miyako via 4D_Tech
the primary file that 4D should open is always the structure file, not the data 
file.

that said, if you insist on drag and drop of a data file (which is wrong),
you can use the On Drop database method.

http://doc.4d.com/4Dv15/4D/15.4/On-Drop-Database-Method.300-3274338.en.html

and

$0:=-1

to filter the default behaviour, and use OPEN DATA FILE as you see fit.

http://doc.4d.com/4Dv15/4D/15.4/OPEN-DATA-FILE.301-3274411.en.html

obviously "Prevent drop of data not coming from 4D" must not be set.

http://doc.4d.com/4Dv15/4D/15.4/Compatibility-page.300-3285389.en.html

> 2017/06/30 4:23、Steve Slanec via 4D_Tech <4d_tech@lists.4d.com> のメール:
> Am I still missing something?




**
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: 4Dv16 VM app still not playing nice with Finder

2017-06-29 Thread Chip Scheide via 4D_Tech
Hint : I do not develop a VM app.

I think that you would have to find/intercept the OS level call to 4D 
to determine the (data) file that was dragged onto your application. I 
do not know how you would do that.
 
An annoying but possible solution:
always when opening the database ask (in a confirmation dialog)
"Do you want to continue to work with  
   or 
Open a different one?
  

On Thu, 29 Jun 2017 13:57:32 -0700, Steve Slanec via 4D_Tech wrote:
> Hi Chip 
> 
> Thanks for the suggestion, but unfortunately no luck.
> 
> When I launch my app by dragging a datafile on top of the app icon, 
> in On Startup I call GET PASTEBOARD DATA and Get text from 
> pasteboard, but both of those just return the last copied text from 
> the previous app.  I also tried calling Get file from pasteboard, but 
> it returns an empty string.
> 
> Any other ideas?  This has to be an issue for other people developing 
> vertical market apps...
> 
> - S
> 
> 
>> On Jun 29, 2017, at 12:44 PM, Chip Scheide 
>> <4d_o...@pghrepository.org> wrote:
>> 
>> I do not know that this would work...
>> but when you drag n drop a file form the finder the path is placed on 
>> the clipboard.
>> 
>> maybe, during startup see if the clipboard contains a valid path, if so 
>> then use Open Data file to open that file.
>> Chip
>> 
>> On Thu, 29 Jun 2017 12:23:42 -0700, Steve Slanec via 4D_Tech wrote:
>>> Hi Keisuke -
>>> 
>>> Thanks for your response.  I have looked at that feature, and I can 
>>> see how it is useful for the first time my app is launched.  In fact, 
>>> I already built that mechanism into my app by setting the 
>>> DataFilePath key in the XML build file to a dummy datafile embedded 
>>> within the application package.  I think it does the same thing as 
>>> this new “Default Data” mechanism, no?  In any case, I don’t 
>>> understand how it solves the problem once my app has opened a valid 
>>> datafile, has quit, and is relaunched.
>>> 
>>> I suppose I could blow away the lastDataFile.xml file each time I 
>>> quit my app, causing it to open the default data file upon next 
>>> launch.  But that does not solve my problem, which is that 4D still 
>>> does not know the user launched my app with a specific datafile in 
>>> mind (by either double clicking on the datafile or dragging the 
>>> datafile on top of my app icon).
>>> 
>>> Am I still missing something?
>>> 
>>> - Steve
>>> 
>>> 
 On Jun 29, 2017, at 6:00 AM, Keisuke Miyako via 4D_Tech 
 <4d_tech@lists.4d.com> wrote:
 
 you really need to use the "Default Data" mechanism
 
 
>> 
http://doc.4d.com/4Dv15/4D/15/Default-data-file-in-merged-applications.300-2018649.en.html
 
> 2017/06/29 17:28、Steve Slanec via 4D_Tech <4d_tech@lists.4d.com> の
> メール:
> What are other people doing to work around this?
 
 
 
 
 **
 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
>>> **
>> ---
>> Gas is for washing parts
>> Alcohol is for drinkin'
>> Nitromethane is for racing 
> 
> **
> 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
> **
---
Gas is for washing parts
Alcohol is for drinkin'
Nitromethane is for racing 
**
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: 4Dv16 VM app still not playing nice with Finder

2017-06-29 Thread Steve Slanec via 4D_Tech
Hi Chip 

Thanks for the suggestion, but unfortunately no luck.

When I launch my app by dragging a datafile on top of the app icon, in On 
Startup I call GET PASTEBOARD DATA and Get text from pasteboard, but both of 
those just return the last copied text from the previous app.  I also tried 
calling Get file from pasteboard, but it returns an empty string.

Any other ideas?  This has to be an issue for other people developing vertical 
market apps...

- S


> On Jun 29, 2017, at 12:44 PM, Chip Scheide <4d_o...@pghrepository.org> wrote:
> 
> I do not know that this would work...
> but when you drag n drop a file form the finder the path is placed on 
> the clipboard.
> 
> maybe, during startup see if the clipboard contains a valid path, if so 
> then use Open Data file to open that file.
> Chip
> 
> On Thu, 29 Jun 2017 12:23:42 -0700, Steve Slanec via 4D_Tech wrote:
>> Hi Keisuke -
>> 
>> Thanks for your response.  I have looked at that feature, and I can 
>> see how it is useful for the first time my app is launched.  In fact, 
>> I already built that mechanism into my app by setting the 
>> DataFilePath key in the XML build file to a dummy datafile embedded 
>> within the application package.  I think it does the same thing as 
>> this new “Default Data” mechanism, no?  In any case, I don’t 
>> understand how it solves the problem once my app has opened a valid 
>> datafile, has quit, and is relaunched.
>> 
>> I suppose I could blow away the lastDataFile.xml file each time I 
>> quit my app, causing it to open the default data file upon next 
>> launch.  But that does not solve my problem, which is that 4D still 
>> does not know the user launched my app with a specific datafile in 
>> mind (by either double clicking on the datafile or dragging the 
>> datafile on top of my app icon).
>> 
>> Am I still missing something?
>> 
>> - Steve
>> 
>> 
>>> On Jun 29, 2017, at 6:00 AM, Keisuke Miyako via 4D_Tech 
>>> <4d_tech@lists.4d.com> wrote:
>>> 
>>> you really need to use the "Default Data" mechanism
>>> 
>>> 
> http://doc.4d.com/4Dv15/4D/15/Default-data-file-in-merged-applications.300-2018649.en.html
>>> 
 2017/06/29 17:28、Steve Slanec via 4D_Tech <4d_tech@lists.4d.com> の
 メール:
 What are other people doing to work around this?
>>> 
>>> 
>>> 
>>> 
>>> **
>>> 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
>> **
> ---
> Gas is for washing parts
> Alcohol is for drinkin'
> Nitromethane is for racing 

**
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: v13 (v14? v15?)- Replace String "fix"

2017-06-29 Thread Chip Scheide via 4D_Tech
Thanks!

Some day v15 or v16, or maybe even v17  :)
Chip

On Thu, 29 Jun 2017 20:32:58 +, Timothy Penner wrote:
> Hi Chip,
> 
>> It is easy, it is simple, and it results in better then 650x 
>> improvement in speed, and it should not hurt if used in a version 
>> where the 4D has rewritten the replace string code.  (which is 
>> where? which
> version?)
> 
> The change occurred in v15R3.
> It is 990 times after when based on Character code (* passed)
> It is 4400 times faster when based on Character (* omitted)
> 
> See more details here (page 23):
> 
ftp://ftp-public.4d.fr/Documents/Products_Documentation/LastVersions/Line_15R3/VIntl/4D_Upgrade_v15_R3.pdf
> {
> Thanks to a new internal algorithm, the execution of the Replace 
> string command has been significantly accelerated in 4D
> 
> v15 R3 when you replace a string by another of a different length. 
> This is the case for example in the following replacements:
> 
> vResult:=Replace string(Source_Text;"a";"aa") //based on characters
> vResult2:=Replace string(Source_Text2;"à";"aa";*) //based on character codes
> 
> The new algorithm is optimized for both syntaxes: the larger the 
> source text and the more replacements there are, the more
> significant the optimization will be.
> 
> Our benchmarks show the following results, compared with the previous 
> algorithm:
> 
> Replacements based on character code (* passed) Replacements based on 
> character (* omitted)
> About 950 times faster About 4400 times faster
> 
> These tests were done by replacing "a" with "aa" in a file containing 
> 32,000 occurrences to replace.
> Note: Replacement of strings of the same length is just as fast as 
> with the previous algorithm
> }
> 
> -Tim PENNER
> 
> 
> 
> Timothy Penner
> Technical Services Engineer
> 
> 4D Inc
> 95 S. Market Street, Suite #240
> San Jose,CA 95113
> United States
> 
> Telephone: +1-408-557-4600
> Fax:   +1-408-271-5080
> Email: tpen...@4d.com
> Web:   www.4D.com
> 
---
Gas is for washing parts
Alcohol is for drinkin'
Nitromethane is for racing 
**
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: v13 (+?) - Replace String [warning]

2017-06-29 Thread Douglas von Roeder via 4D_Tech
Chip:

AFAIK, that's the marker that 4D added "way back when" when 4D started to
support BLOB's. It's used to differentiate between a picture and a BLOB.

--
Douglas von Roeder
949-336-2902

On Thu, Jun 29, 2017 at 1:33 PM, Chip Scheide via 4D_Tech <
4d_tech@lists.4d.com> wrote:

> I have a question.. what does RVLB (at the end of the blob) do?
>
>
> On Wed, 28 Jun 2017 06:09:43 +0800, Alan Chan via 4D_Tech wrote:
> > Hi Chip,
> >
> > Try the following and it should be done in a second or 2 (compiled).
> >
> >   //ES_ReplaceStr_Shrink($source;$oldString;$newString;{$count
> > pointer})->Resulted text
> > C_TEXT($0;$1;$2;$3;$source;$oldStr;$newStr;$result;$tempTxt)
> > C_POINTER($4)
> >
> C_LONGINT($oldLen;$newLen;$oldStrLen;$NewStrLen;$count;$
> offset;$offset2;$start;$pos)
> > C_BLOB($blob;$blob2)
> > $source:=$1
> > $oldLen:=Length($source)  //$source is the source text
> > $oldStr:=$2
> > $newStr:=$3
> > $oldStrLen:=Length($oldStr)
> > $newstrlen:=Length($newStr)
> >
> > SET BLOB SIZE($blob;$oldlen*2+9;0)
> > $offset:=9
> > $start:=1
> > $count:=0
> > Repeat
> > $pos:=Position($oldstr;$source;$start;*)
> > If ($pos>0)
> > $tempTxt:=Substring($source;$start;$pos-$start)+$newStr
> > $start:=$pos+$oldStrLen
> > If (Length($tempTxt)>0)
> > $offset2:=0
> > VARIABLE TO BLOB($tempTxt;$blob2;$offset2)
> > COPY BLOB($blob2;$blob;9;$offset;$offset2-9)
> > $offset:=$offset+$offset2-9
> > End if
> > $count:=$count+1
> > End if
> > Until ($pos=0)
> >
> > If ($count>0)
> > If ($start<=$oldlen)
> > $tempTxt:=Substring($source;$start)
> > If (Length($tempTxt)>0)
> > $offset2:=0
> > VARIABLE TO BLOB($tempTxt;$blob2;$offset2)
> > COPY BLOB($blob2;$blob;9;$offset;$offset2-9)
> > End if
> > End if
> > If ($oldStrlen>$NewStrLen)
> > $newLen:=$oldLen+(($NewStrLen-$oldStrLen)*$count)
> > SET BLOB SIZE($blob;$newlen*2+9)
> > Else
> > $newlen:=$oldLen
> > End if
> >
> > $blob{0x}:=Character code("R")
> > $blob{0x0001}:=Character code("V")
> > $blob{0x0002}:=Character code("L")
> > $blob{0x0003}:=Character code("B")
> > $blob{0x0004}:=0x0021
> > $blob{0x0005}:=$newlen%256
> > $blob{0x0006}:=($newlen\256)%256
> > $blob{0x0007}:=($newlen\65536)%256
> > $blob{0x0008}:=($newlen\16777216)
> > $offset:=0
> > BLOB TO VARIABLE($blob;$result;$offset)
> > $0:=$result
> >
> > Else
> > $0:=$1
> > End if
> >
> > If (Count parameters>3)
> > $4->:=$count
> > End if
> >
> > Alan Chan
> >
> > 4D iNug Technical <4d_tech@lists.4d.com> writes:
> >> $Source:=Replace String($Source;Char(9);"";*)
> >>
> >> Doesn't look so bad, does it?
> >> Turns out there are over 550,000 tabs in the text.
> >> Replace String, did indeed (eventually) return, but it took about 30
> >> minutes.
> >
> > **
> > 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
> > **
> ---
> Gas is for washing parts
> Alcohol is for drinkin'
> Nitromethane is for racing
> **
> 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: v13 (v14? v15?)- Replace String "fix"

2017-06-29 Thread Timothy Penner via 4D_Tech
Hi Chip,

> It is easy, it is simple, and it results in better then 650x improvement in 
> speed, and it should not hurt if used in a version where the 4D has rewritten 
> the replace string code.  (which is where? which
version?)

The change occurred in v15R3.
It is 990 times after when based on Character code (* passed)
It is 4400 times faster when based on Character (* omitted)

See more details here (page 23):
ftp://ftp-public.4d.fr/Documents/Products_Documentation/LastVersions/Line_15R3/VIntl/4D_Upgrade_v15_R3.pdf
{
Thanks to a new internal algorithm, the execution of the Replace string command 
has been significantly accelerated in 4D

v15 R3 when you replace a string by another of a different length. This is the 
case for example in the following replacements:

vResult:=Replace string(Source_Text;"a";"aa") //based on characters
vResult2:=Replace string(Source_Text2;"à";"aa";*) //based on character codes

The new algorithm is optimized for both syntaxes: the larger the source text 
and the more replacements there are, the more
significant the optimization will be.

Our benchmarks show the following results, compared with the previous algorithm:

Replacements based on character code (* passed) Replacements based on character 
(* omitted)
About 950 times faster About 4400 times faster

These tests were done by replacing "a" with "aa" in a file containing 32,000 
occurrences to replace.
Note: Replacement of strings of the same length is just as fast as with the 
previous algorithm
}

-Tim PENNER



**
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: v13 (+?) - Replace String [warning]

2017-06-29 Thread Chip Scheide via 4D_Tech
I have a question.. what does RVLB (at the end of the blob) do?


On Wed, 28 Jun 2017 06:09:43 +0800, Alan Chan via 4D_Tech wrote:
> Hi Chip,
> 
> Try the following and it should be done in a second or 2 (compiled).
> 
>   //ES_ReplaceStr_Shrink($source;$oldString;$newString;{$count 
> pointer})->Resulted text
> C_TEXT($0;$1;$2;$3;$source;$oldStr;$newStr;$result;$tempTxt)
> C_POINTER($4)
> 
C_LONGINT($oldLen;$newLen;$oldStrLen;$NewStrLen;$count;$offset;$offset2;$start;$pos)
> C_BLOB($blob;$blob2)
> $source:=$1
> $oldLen:=Length($source)  //$source is the source text
> $oldStr:=$2
> $newStr:=$3
> $oldStrLen:=Length($oldStr)
> $newstrlen:=Length($newStr)
> 
> SET BLOB SIZE($blob;$oldlen*2+9;0)
> $offset:=9
> $start:=1
> $count:=0
> Repeat 
> $pos:=Position($oldstr;$source;$start;*)
> If ($pos>0)
> $tempTxt:=Substring($source;$start;$pos-$start)+$newStr
> $start:=$pos+$oldStrLen
> If (Length($tempTxt)>0)
> $offset2:=0
> VARIABLE TO BLOB($tempTxt;$blob2;$offset2)
> COPY BLOB($blob2;$blob;9;$offset;$offset2-9)
> $offset:=$offset+$offset2-9
> End if 
> $count:=$count+1
> End if 
> Until ($pos=0)
> 
> If ($count>0)
> If ($start<=$oldlen)
> $tempTxt:=Substring($source;$start)
> If (Length($tempTxt)>0)
> $offset2:=0
> VARIABLE TO BLOB($tempTxt;$blob2;$offset2)
> COPY BLOB($blob2;$blob;9;$offset;$offset2-9)
> End if 
> End if 
> If ($oldStrlen>$NewStrLen)
> $newLen:=$oldLen+(($NewStrLen-$oldStrLen)*$count)
> SET BLOB SIZE($blob;$newlen*2+9)
> Else 
> $newlen:=$oldLen
> End if 
> 
> $blob{0x}:=Character code("R")
> $blob{0x0001}:=Character code("V")
> $blob{0x0002}:=Character code("L")
> $blob{0x0003}:=Character code("B")
> $blob{0x0004}:=0x0021
> $blob{0x0005}:=$newlen%256
> $blob{0x0006}:=($newlen\256)%256
> $blob{0x0007}:=($newlen\65536)%256
> $blob{0x0008}:=($newlen\16777216)
> $offset:=0
> BLOB TO VARIABLE($blob;$result;$offset)
> $0:=$result
> 
> Else 
> $0:=$1
> End if 
> 
> If (Count parameters>3)
> $4->:=$count
> End if 
> 
> Alan Chan
> 
> 4D iNug Technical <4d_tech@lists.4d.com> writes:
>> $Source:=Replace String($Source;Char(9);"";*)
>> 
>> Doesn't look so bad, does it?
>> Turns out there are over 550,000 tabs in the text.
>> Replace String, did indeed (eventually) return, but it took about 30 
>> minutes.
> 
> **
> 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
> **
---
Gas is for washing parts
Alcohol is for drinkin'
Nitromethane is for racing 
**
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
**

v13 (v14? v15?)- Replace String "fix"

2017-06-29 Thread Chip Scheide via 4D_Tech
I have been playing with text stuff recently.
I was posted a warning regarding Replace String and the fact that it 
takes - forever - to do large replacement counts in large texts.  
500,000 replaces in 4,800,000 characters was something like 30 minutes.

I found a "Fix".
It is easy, it is simple, and it results in better then 650x 
improvement in speed, and it should not hurt if used in a version where 
the 4D has rewritten the replace string code.  (which is where? which 
version?)

This code, on my poor old 2010 mini does the above replacement (511,535 
tabs, in a 4,800,000 character text)
in...
2.7 SECS !!!

the Size I determined by trial and error. smaller numbers, increase 
execution time
larger numbers increase execution time. I did not do single value 
increments, but 23500 was longer
22500 was longer

here it is (no comments but it should be obvious what is happening):
C_TEXT($1;$Source;$Replace;$2;$New_Text;$0;$Temp_Text)
C_LONGINT($i;$Size;$Segments)

$Source:=$1
$Replace:=$2
$Size:=23000  //empirically determined
$Segments:=Int(Length($Source)/$Size)+1

For ($I;1;$Segments)
$Temp_Text:=Substring($Source;($Size*($i-1));$size)
$Temp_Text:=Replace string($Temp_Text;$Replace;"";*)
$New_Text:=$New_Text+$Temp_Text
End for 
$0:=$New_Text

---
Gas is for washing parts
Alcohol is for drinkin'
Nitromethane is for racing 
**
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
**

Standard action item appearance

2017-06-29 Thread Keith Culotta via 4D_Tech
In v16 R3, I'd like for a non-enabled standard action menu item to be visible 
and dimmed in the pop-up menu.
When working through a list of actions like in the example below, each item 
gets Appended, but will not appear in the menu if "enabled"=False.
Does anyone know a simple switch to change this behavior?

$actionInfo:=Get action info($acts{$i}) 
If (OB Is defined($actionInfo))  //action is defined in the process
APPEND MENU ITEM($menu;ak standard action title)
SET MENU ITEM PROPERTY($menu;-1;Associated standard action;$acts{$i})
If (Not(OB Get($actionInfo;"enabled")))
DISABLE MENU ITEM($menu;-1)  // commenting this line out does 
not change the menu behavior
End if 
End if 

Thanks,

Keith
**
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
**

[ANN] 4D Activation Errors and Login to 4D Services

2017-06-29 Thread Brian Young via 4D_Tech

We're currently experiencing an issue with 4D's license
activation server that is preventing registration of any
version of 4D, including the just-released v16 R3.

In addition to registration, the following sites are
affected:

- Partner Central
   http://partnercentral.4d.com

- Knowledge Base
   http://kb.4d.com

- TAOW (Technical Assistance On the Web)
   https://taow.4d.com/
   http://help.4d.com/

We apologize for any inconvenience this may cause.
We'll send a status update as soon as we have more
information.

Thanks for your patience.

The 4D Team



**
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: How to close a modal window if user clicks outside of it?

2017-06-29 Thread Ortwin Zillgen via 4D_Tech
I'd use window-type popup window



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: 4Dv16 VM app still not playing nice with Finder

2017-06-29 Thread Chip Scheide via 4D_Tech
I do not know that this would work...
but when you drag n drop a file form the finder the path is placed on 
the clipboard.

maybe, during startup see if the clipboard contains a valid path, if so 
then use Open Data file to open that file.
Chip

On Thu, 29 Jun 2017 12:23:42 -0700, Steve Slanec via 4D_Tech wrote:
> Hi Keisuke -
> 
> Thanks for your response.  I have looked at that feature, and I can 
> see how it is useful for the first time my app is launched.  In fact, 
> I already built that mechanism into my app by setting the 
> DataFilePath key in the XML build file to a dummy datafile embedded 
> within the application package.  I think it does the same thing as 
> this new “Default Data” mechanism, no?  In any case, I don’t 
> understand how it solves the problem once my app has opened a valid 
> datafile, has quit, and is relaunched.
> 
> I suppose I could blow away the lastDataFile.xml file each time I 
> quit my app, causing it to open the default data file upon next 
> launch.  But that does not solve my problem, which is that 4D still 
> does not know the user launched my app with a specific datafile in 
> mind (by either double clicking on the datafile or dragging the 
> datafile on top of my app icon).
> 
> Am I still missing something?
> 
> - Steve
> 
> 
>> On Jun 29, 2017, at 6:00 AM, Keisuke Miyako via 4D_Tech 
>> <4d_tech@lists.4d.com> wrote:
>> 
>> you really need to use the "Default Data" mechanism
>> 
>> 
http://doc.4d.com/4Dv15/4D/15/Default-data-file-in-merged-applications.300-2018649.en.html
>> 
>>> 2017/06/29 17:28、Steve Slanec via 4D_Tech <4d_tech@lists.4d.com> の
>>> メール:
>>> What are other people doing to work around this?
>> 
>> 
>> 
>> 
>> **
>> 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
> **
---
Gas is for washing parts
Alcohol is for drinkin'
Nitromethane is for racing 
**
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: 4Dv16 VM app still not playing nice with Finder

2017-06-29 Thread Steve Slanec via 4D_Tech
Hi Keisuke -

Thanks for your response.  I have looked at that feature, and I can see how it 
is useful for the first time my app is launched.  In fact, I already built that 
mechanism into my app by setting the DataFilePath key in the XML build file to 
a dummy datafile embedded within the application package.  I think it does the 
same thing as this new “Default Data” mechanism, no?  In any case, I don’t 
understand how it solves the problem once my app has opened a valid datafile, 
has quit, and is relaunched.

I suppose I could blow away the lastDataFile.xml file each time I quit my app, 
causing it to open the default data file upon next launch.  But that does not 
solve my problem, which is that 4D still does not know the user launched my app 
with a specific datafile in mind (by either double clicking on the datafile or 
dragging the datafile on top of my app icon).

Am I still missing something?

- Steve


> On Jun 29, 2017, at 6:00 AM, Keisuke Miyako via 4D_Tech 
> <4d_tech@lists.4d.com> wrote:
> 
> you really need to use the "Default Data" mechanism
> 
> http://doc.4d.com/4Dv15/4D/15/Default-data-file-in-merged-applications.300-2018649.en.html
> 
>> 2017/06/29 17:28、Steve Slanec via 4D_Tech <4d_tech@lists.4d.com> のメール:
>> What are other people doing to work around this?
> 
> 
> 
> 
> **
> 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
**

error number

2017-06-29 Thread Charles Miller via 4D_Tech
Hi all
environment 15.4hf2
windows built client (32 bit volume desktop)
mac OSX 64 bit server

We get the following error
read failed Error code 1
Cannot receive request reply Error code :1209
Any changes after last save action will be lost

4D's description of these errors does not give a hint of what they really
are

The connection is a WAN connection.


Regards

Chuck


-- 
-
 Chuck Miller Voice: (617) 739-0306 Fax: (617) 232-1064
 Informed Solutions, Inc.
 Brookline, MA 02446 USA Registered 4D Developer
   Providers of 4D, Sybase & SQL Sever connectivity
  http://www.informed-solutions.com
-
This message and any attached documents contain information which may be
confidential, subject to privilege or exempt from disclosure under
applicable law.  These materials are intended only for the use of the
intended recipient. If you are not the intended recipient of this
transmission, you are hereby notified that any distribution, disclosure,
printing, copying, storage, modification or the taking of any action in
reliance upon this transmission is strictly prohibited.  Delivery of this
message to any person other than the intended recipient shall not
compromise or waive such confidentiality, privilege or exemption
from disclosure as to this communication.
**
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: How to close a modal window if user clicks outside of it?

2017-06-29 Thread Kirk Brooks via 4D_Tech
Keith,
You and Chuck put me on the right track - ie. RTFM. What I want is
specifically what a modal is trying to prevent.

It looks like a popup window (#32) is exactly what I want because, well,
that's exactly what I'm doing...


   - The window is automatically closed and the "cancel" event is passed to
   the window when:
   - a click occurs outside the window;
   - the background window or the MDI (Multiple Document Interface) window
  is moved;
   - the user clicks the *Esc* key.
   - This window is displayed in front of its "parent" window (it must not
   be used as the main window of the process). The background window is not
   disabled. However, it no longer receives events.
   - You cannot resize or move the window using the mouse; however, when
   performing these actions programmatically, the redraw of background items
   is optimized.
   - Usage: This type of window is primarily used to generate pop-up menus
   related to 3D “bevel” or “toolbar” type buttons.

​And it seems to play nicely with having its window rect changed as
required. ​

really shows how focused I can get on one way of looking at things
sometimes.

On Thu, Jun 29, 2017 at 11:10 AM, Keith Culotta via 4D_Tech <
4d_tech@lists.4d.com> wrote:

> Try with a Plain Form Window type and activate the On Deactivate event.
> Put a Cancel in that event to close the window.  It can't tell if the mouse
> just moves outside the window (you can do that with an invisible, grow,grow
> object), but a click anywhere else will close the window.
> --
>
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: How to close a modal window if user clicks outside of it?

2017-06-29 Thread Kirk Brooks via 4D_Tech
Chuck,
I think you are right.

On Thu, Jun 29, 2017 at 11:04 AM, Charles Miller via 4D_Tech <
4d_tech@lists.4d.com> wrote:

> On Thu, Jun 29, 2017 at 2:02 PM, Kirk Brooks via 4D_Tech <
> 4d_tech@lists.4d.com> wrote:
>
> >
> > I open a modal dialog within another form. I want to close this if the
> user
> > moused to or clicks on something outside the form. Since I'm working
> with a
> > modal dialog it just beeps.
> >
> > I tried using the On mouse leaving form event. It fires when the mouse
> > leaves any object on the form but not if I leave the form itself. This is
> > close but not too good.
> >
> > Is there some other way to recognize when the user is off the modal and
> > take action programmatically?
> >
> > Thanks
>
>
> i think what you want defeats purpose of a modal window. Not sure if it is
> something 4D should allow.
>
> regards
> Chuck
>
>
> --
> 
> -
>  Chuck Miller Voice: (617) 739-0306 Fax: (617) 232-1064
>  Informed Solutions, Inc.
>  Brookline, MA 02446 USA Registered 4D Developer
>Providers of 4D, Sybase & SQL Sever connectivity
>   http://www.informed-solutions.com
> 
> -
> This message and any attached documents contain information which may be
> confidential, subject to privilege or exempt from disclosure under
> applicable law.  These materials are intended only for the use of the
> intended recipient. If you are not the intended recipient of this
> transmission, you are hereby notified that any distribution, disclosure,
> printing, copying, storage, modification or the taking of any action in
> reliance upon this transmission is strictly prohibited.  Delivery of this
> message to any person other than the intended recipient shall not
> compromise or waive such confidentiality, privilege or exemption
> from disclosure as to this communication.
> **
> 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: How to close a modal window if user clicks outside of it?

2017-06-29 Thread Keith Culotta via 4D_Tech
Try with a Plain Form Window type and activate the On Deactivate event.  Put a 
Cancel in that event to close the window.  It can't tell if the mouse just 
moves outside the window (you can do that with an invisible, grow,grow object), 
but a click anywhere else will close the window.

Keith - CDI

> On Jun 29, 2017, at 1:02 PM, Kirk Brooks via 4D_Tech <4d_tech@lists.4d.com> 
> wrote:
> 
> Hi folks,
> 
> I open a modal dialog within another form. I want to close this if the user
> moused to or clicks on something outside the form. Since I'm working with a
> modal dialog it just beeps.
> 
> I tried using the On mouse leaving form event. It fires when the mouse
> leaves any object on the form but not if I leave the form itself. This is
> close but not too good.
> 
> Is there some other way to recognize when the user is off the modal and
> take action programmatically?
> 
> 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
> **

**
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: How to close a modal window if user clicks outside of it?

2017-06-29 Thread Charles Miller via 4D_Tech
On Thu, Jun 29, 2017 at 2:02 PM, Kirk Brooks via 4D_Tech <
4d_tech@lists.4d.com> wrote:

>
> I open a modal dialog within another form. I want to close this if the user
> moused to or clicks on something outside the form. Since I'm working with a
> modal dialog it just beeps.
>
> I tried using the On mouse leaving form event. It fires when the mouse
> leaves any object on the form but not if I leave the form itself. This is
> close but not too good.
>
> Is there some other way to recognize when the user is off the modal and
> take action programmatically?
>
> Thanks


i think what you want defeats purpose of a modal window. Not sure if it is
something 4D should allow.

regards
Chuck


-- 
-
 Chuck Miller Voice: (617) 739-0306 Fax: (617) 232-1064
 Informed Solutions, Inc.
 Brookline, MA 02446 USA Registered 4D Developer
   Providers of 4D, Sybase & SQL Sever connectivity
  http://www.informed-solutions.com
-
This message and any attached documents contain information which may be
confidential, subject to privilege or exempt from disclosure under
applicable law.  These materials are intended only for the use of the
intended recipient. If you are not the intended recipient of this
transmission, you are hereby notified that any distribution, disclosure,
printing, copying, storage, modification or the taking of any action in
reliance upon this transmission is strictly prohibited.  Delivery of this
message to any person other than the intended recipient shall not
compromise or waive such confidentiality, privilege or exemption
from disclosure as to this communication.
**
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
**

How to close a modal window if user clicks outside of it?

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

I open a modal dialog within another form. I want to close this if the user
moused to or clicks on something outside the form. Since I'm working with a
modal dialog it just beeps.

I tried using the On mouse leaving form event. It fires when the mouse
leaves any object on the form but not if I leave the form itself. This is
close but not too good.

Is there some other way to recognize when the user is off the modal and
take action programmatically?

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
**

[ANN] hmReports 5.2 available for 4D v15 and v16 (32+64 bit)

2017-06-29 Thread Christian Sakowski via 4D_Tech
Today, heubach media released version 5.2 (Build 28274) of hmReports.

hmReports is a plug-in developed by heubach media (http://www.hmplugins.com), 
Hamburg, Germany for 4th Dimension.

Version 5 is a huge leap for reporting and drawing capabilities in 4D with 
hmReports.

„The main focus for this Version was, to make it rock solid, introducing all 
wishes from Customers, extend existing functions and make it much faster.“ said 
Christian Sakowski, CTO from heubach media.

hmReports is fully certified with 4D v15 and 4D v16 and runs with all 32 and 64 
bit versions (Mac+Windows)!

=== New in v5.2 ===
* New internal script-command _SET ANCHOR to create a table of contents very 
easily. 
* New Undo-commands for creating undo-actions by programming language: 
hmRep_START UNDO RECORDING, hmRep_Validate Undo Recording and hmRep_CANCEL UNDO 
RECORDING

=== In Version 5.0 we made the following improvements ===
* 64 Bit Version for Mac (4D and 4D Server)
* Complete rewritten drawing engine under Windows: Moving from GDI+ to DirectX 
(Direct2D and DirectWrite)
* New commands from copy and paste entire pages: hmRep_GET PAGE and hmRep_SET 
PAGE
* Rewritten intelligent undo/redo functionality:
* New command hmRep_Get Last Event
* Justified alignment is now supported for text objects
* New object properties for setting the visibility of the drag handles
* New command hmRep_Get Section Count
* New section option for page footers: hmRep_svisible_NotOnLastPage
* New options to set the origin of a layer and their objects
* New Undo commands: hmRep_SET UNDO TYPE STATE and hmRep_Get Undo Type State
* New object properties for getting the section of objects in the preview
* New object property to set a custom text for NULL field values
* and much more (see release notes)

With hmReports we introduced a new dimension of reporting in 4D.
With Multi-Page-Design, Subreports, Barcodes and Editable Preview, hmReports 
offers you long wanted features, which you can directly use TODAY!

=== Multi-Page-Design ===
Now you can add static pages and/or additional iteration pages to a composed 
report. Also, you can design documents with more than one page!

=== Subreports ===
Since Version 3 you can inherit other hmReports documents or pages into new 
documents. For example: You can design one letterhead layout and place it in 
all your reports. If you want to change anything in the header, you only have 
to change the header document and not all of your reports!

=== Barcodes ===
Now you can display any data as a 1D and 2D Barcode without any special fonts. 
hmReports 4 supports over 60 different 1D and 2D Barcode types!

=== Editable Preview===
With hmReports 4, the user can view the final result of the report without 
printing. If data fields and other object don't look good in the preview, you 
can make changes directly in the preview. All changes are automatically saved 
back in the source report and the preview will be updated again, if wanted.

=== Other features of Version 5.0 ===
* Internal PDF rendering engine for creating PDF's on Windows (without 
additional software or printer driver)
* Unlimited Undo/Redo support
* 64 bit Plugin (Mac and Windows)
* Supported languages of the GUI: English, German, French, Spanish, Japanese
* Much better API for guides
* Support of repeating objects
* Variable headers and footers
* Support of Styled Text
* New API for creating a Virtual Structure for Tables, Fields and Variables
* You can now change the name of each section
* New grid
* Arrange objects horizontally and vertically
* Support of line endmarks of line objects
* New Property Palette
* New events for Drag & Drop and printing control
* Direct Copy & Paste from the Finder/Explorer

=== Testimonial ===
Chuck Miller (Informed Solutions, Inc.) about hmReports:

"Your dedication to making products that people can actually use is above and 
beyond. When confronted by a client with a need that makes sense, like 
exporting reports to blob as opposed to text, you take the bull by the horns 
and do it. I can not recommend you or your products any more highly than that."

=== About hmReports ===
You need amazing reports, invoices & documents? Do it with hmReports!
hmReports provides you a powerful tool to create, edit and print powerful 
graphics and reports.

* Create reports without any programming knowledge
* Import SuperReport Pro and 4D Draw documents for a fast crossgrade
* Exchange and share reports to your customers without recompiling
* Import, edit and export SVG documents
* Open storage format of the report-blob (XML)
* Create vector graphical documents
* Modern graphical API with multiple gradients, alpha/opacity support and 
antialiasing
* Create Text, Rectangles, Lines, Bezier curves, Arcs, Path, Pictures and 
Freehand objects
* Support of stepless zoom
* View and edit multiple reports in one hmReports-area
* Callback routines to manage events
* Break processing with sections
* Support of multiple layers and pages
* Access to the

Re: Optimizing and improving 4D queries.

2017-06-29 Thread Benedict, Tom via 4D_Tech
Hi Eric,



> I was hoping there way a way like in mysql to explain slow queries to tell my 
> how or what why the query was being slow.



Have you tried the DESCRIBE QUERY EXECUTION command? It will tell you the query 
path and plan including execution time.



HTH,



Tom Benedict

Optum





This e-mail, including attachments, may include confidential and/or
proprietary information, and may be used only by the person or entity
to which it is addressed. If the reader of this e-mail is not the intended
recipient or his or her authorized agent, the reader is hereby notified
that any dissemination, distribution or copying of this e-mail is
prohibited. If you have received this e-mail in error, please notify the
sender by replying to this message and delete this e-mail immediately.
**
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: Optimizing and improving 4D queries.

2017-06-29 Thread Eric Naujock via 4D_Tech
I used to have this set as automatic and that did not help. According to KB 
49932 you use Btree if the selectivity is near 1, and use cluster Btree if the 
selectivity is near 0. Where selectivity is calculated as selectivity = (number 
of distinct values in field) / (Total number of records in field) since the 
index is a UUID its selectivity would be 1 which would mean bTree is the ay to 
go. Now this article is dated July 2008 so But I would hope that the 
fundamental logic of the indexes would not have changed.
---

MacCafe
4405 Talmadge  St.
Toledo, OH 43623
Eric Naujock  -  ACSA 10.2, 10.3, 10.4 Apple - ACTC 10.5, 10.6, 10.7, 10.8, 
10.9, 10.10
http://www.mac-cafe.com
email: e r...@mac-cafe.com 
AOL IM: erlic



> On Jun 28, 2017, at 11:54 PM, John DeSoi via 4D_Tech <4d_tech@lists.4d.com> 
> wrote:
> 
> No, this is set as b-tree (automatic). I think that is best setting for this 
> field, but worth checking into to see if it might help.
> 
> John DeSoi, Ph.D.
> 
> 
>> On Jun 28, 2017, at 9:00 PM, Keisuke Miyako via 4D_Tech 
>> <4d_tech@lists.4d.com> wrote:
>> 
>> do you have cluster b-tree indexes for that field?
>> 
>>> 2017/06/29 9:55、John DeSoi via 4D_Tech <4d_tech@lists.4d.com> のメール:
>>> 
>>> 4D reports the table is not fragmented. I have not tried compacting or 
>>> rebuilding indexes yet. You might give this a try to see if it makes a 
>>> difference.
> 
> **
> 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: 4Dv16 VM app still not playing nice with Finder

2017-06-29 Thread Keisuke Miyako via 4D_Tech
you really need to use the "Default Data" mechanism

http://doc.4d.com/4Dv15/4D/15/Default-data-file-in-merged-applications.300-2018649.en.html

> 2017/06/29 17:28、Steve Slanec via 4D_Tech <4d_tech@lists.4d.com> のメール:
> What are other people doing to work around this?




**
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: Modal dialog dilemma

2017-06-29 Thread Jody Bevan via 4D_Tech
Robert:

We have two projects that we will use the new shell in once it is completed ~ 3 
months. Once those projects are done then we will likely put the shell on sale. 
The two projects will be a good test of the utility of the shell and point out 
some holes that we do not see now.

Therefore I am expecting about the June 2018 timeline. 

Jody

> On Jun 29, 2017, at 12:21 AM, Robert ListMail via 4D_Tech 
> <4d_tech@lists.4d.com> wrote:
> 
> Wow Jody—impressive! So, when does your new shell go on sale? :)
> 
> Robert 
> 
> Sent from my iPhone
> 
>> On Jun 19, 2017, at 11:08 AM, Jody Bevan via 4D_Tech <4d_tech@lists.4d.com> 
>> wrote:
>> 
>> Every line of code is being rewritten in a clean room concept. We want to 
>> encourage ourselves to write all the code with the latest tools 4D provides 
>> us.
> 

**
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: Error -19191

2017-06-29 Thread Costas Manousakis via 4D_Tech
I seem to remember that when we were testing the upgrade from v11 to v15 we 
tried connecting a v11 built client to a v15 built server with the updates 
enabled and it worked. We ended up not going that way, we distributed new 
clients, mainly because there is a heavy hit on the server when a client is 
updated.


> On Jun 28, 2017, at 9:57 PM, Keisuke Miyako via 4D_Tech 
> <4d_tech@lists.4d.com> wrote:
> 
> auto upgrading to a different major version is only available in v13->v14 or 
> later.
> 
> see
> 
> http://kb.4d.com/assetid=76989
> 
> also
> 
> http://doc.4d.com/4Dv16/4D/16/Overview.300-3130240.en.html
> 
>> 2017/06/29 10:45、Costas Manousakis via 4D_Tech <4d_tech@lists.4d.com> のメール:
>> We’ve seen this error when a v11 built client tries to connect to a v15 
>> built server. The v15 server is not set to autoupdate clients.
> 

**
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
**

4Dv16 VM app still not playing nice with Finder

2017-06-29 Thread Steve Slanec via 4D_Tech
I have struggled for years to get my 4D vertical market app (i.e. built with 4D 
Volume Desktop) to behave correctly in the Mac OS Finder.

Specifically, my app misbehaves in several ways:
1. When a user double-clicks on a datafile to launch and open my app, the app 
does not open that file.  Instead, it opens the one that was opened last time.
2. If the user drags a datafile on to my app, same thing - the app does not 
open that file.  It opens the one that was opened last time.
3. When the user tries to create a new datafile, 4D directs the user to save 
inside the application package - definitely NOT where the datafile should be 
saved.  I know I can redirect to a safe location the first time my app is 
launched by using a default datafile, but I need this to happen every time the 
user wants to make a new datafile.

When 4D v16 came out with the “lastDataPath.xml” mechanism, I was hoping it 
would finally solve some of these problems, but no such luck.

What are other people doing to work around this?

Thanks for any insights

- Steve


Steve Slanec
Slanecon Digital, Inc.
www.slanecon.com 
415.479.6967


**
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
**