Re: Recreating a binary stack from xml text

2012-02-22 Thread gcanyon+rev
That sounds brittle -- or in practice does it Just Work?

Sent from my iPad

On Feb 21, 2012, at 4:36 PM, Mark Wieder mwie...@ahsoftware.net wrote:

 Geoff Canyon Rev gcanyon+rev@... writes:
 
 I'm looking at the docs for Eclipse and I see safe rename. Is that what
 you're talking about? Out of curiosity does it mean that when you rename
 something, it goes through all your source files looking for references to
 that thing, and changes them?
 
 Yes on both counts. And there's a preview mode so you can do a dry run to see
 what's going to be changed.
 
 https://www.ibm.com/developerworks/library/os-ecref/
 
 -- 
 Mark Wieder

___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: Recreating a binary stack from xml text

2012-02-22 Thread Mark Wieder
Geoff-

Wednesday, February 22, 2012, 1:33:15 AM, you wrote:

 That sounds brittle -- or in practice does it Just Work?

Well, it would probably be foolish to say it *always* works, but it's
done the job for me when I've used it. I've been cautious, though, and
done a dry run first to see what was going to change.

-- 
-Mark Wieder
 mwie...@ahsoftware.net


___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: Recreating a binary stack from xml text

2012-02-22 Thread Geoff Canyon Rev
In FileMaker, because it's inherent to the way they do it, I've never heard
of it breaking. It's kind of a chickens vs. pigs situation -- where for
breakfast the chicken is involved, but the pig is committed. If something
goes wrong with safe rename, they just issue a note saying we're looking
into it, don't use it for now. If something went wrong with FileMaker's
renaming code, no one would be able to do anything until it was fixed --
not edit a script, maybe not even edit a layout. Not that it ever has been
broken in Eclipse, just that the standard is different. It also goes to the
mindset of the developer: in FileMaker it's just understood that you might
rename something to make it clearer. For example if you and I work on a
database together and you use plural column names and I use singular, when
we inevitably fight to the death ;-) the victor would blithely change all
the offending column names, without thinking about the (non-existent)
consequences.



On Wed, Feb 22, 2012 at 10:24 AM, Mark Wieder mwie...@ahsoftware.netwrote:

 Geoff-

 Wednesday, February 22, 2012, 1:33:15 AM, you wrote:

  That sounds brittle -- or in practice does it Just Work?

 Well, it would probably be foolish to say it *always* works, but it's
 done the job for me when I've used it. I've been cautious, though, and
 done a dry run first to see what was going to change.

 --
 -Mark Wieder
  mwie...@ahsoftware.net


 ___
 use-livecode mailing list
 use-livecode@lists.runrev.com
 Please visit this url to subscribe, unsubscribe and manage your
 subscription preferences:
 http://lists.runrev.com/mailman/listinfo/use-livecode

___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: Recreating a binary stack from xml text

2012-02-21 Thread Bob Sneidar
Well I have made good use of the find dialog. I tried to do a search using all 
other to find something in a property (not sure if that would do it) and LC 
locked up most of the way through the search. I waited a minute or two and it 
didn't move so I was forced to force quit. A search specifically for properties 
and/or their contents would be nice. (Except that you can put a STACK in a 
property and how would you search that??)

Bob


On Feb 20, 2012, at 6:38 PM, Mark Wieder wrote:

 Geoff-
 
 Monday, February 20, 2012, 6:03:20 PM, you wrote:
 
 For FileMaker, it's the easy database, but equally important, it's the fact
 that all items -- scripts, layouts, columns, tables, etc. -- are abstracted
 from their names. In FileMaker, if you change the name of a table, then
 everywhere in any script that refers to that table, the script changes
 automatically to match. Change a layout name, same thing. That's something
 I wish every environment I use could have. Given that FileMaker has had
 this since at least 1994 or so, it's frustrating that no one else has
 picked it up. It's one of those things that seems obvious once you've
 experienced it /rant
 
 Both Visual Studio and Eclipse support that for refactoring. And yes,
 I miss it here.
 
 -- 
 -Mark Wieder
 mwie...@ahsoftware.net
 
 
 ___
 use-livecode mailing list
 use-livecode@lists.runrev.com
 Please visit this url to subscribe, unsubscribe and manage your subscription 
 preferences:
 http://lists.runrev.com/mailman/listinfo/use-livecode


___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: Recreating a binary stack from xml text

2012-02-21 Thread Bob Sneidar

On Feb 20, 2012, at 8:45 PM, Pete wrote:

 As for datagrids, the controls that are permanent fixtures of a datagrid
 are easily identifiable, the rest should not be considered in this scheme
 since they change dynamically every time data is loaded into a datagrid,
 not when the datagird structure changes.  The job of a version comparison
 tool is to detect permanent structural changes, not temporal or data
 storage changes.  The properties of the datagrid itself and the properties
 of the controls in it's template are all that matters since the latter form
 the basis for any temporary controls that are created in the datagrid.

The temporary objects in a datagrid change dynamically IF data is reloaded. 
What if the developer is using a datagrid as a static list and needs to restore 
the contents? I think the solution is to bypass the temporary objects of a 
datagrid, instead saving the datagrid data in some fashion (see my functions 
for converting an array to text and back again) as a special case. The first 
time a stack is versioned it could present the dev with a list of datagrid 
objects and allow the dev to choose between versioning the contents or the 
structure + data. 

Where things are going to get really dicey is stacks that are constantly 
creating and deleting objects and groups. I am not a big fan of using Livecode 
this way, but people do, so there you are. 

Bob
___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: Recreating a binary stack from xml text

2012-02-21 Thread Bob Sneidar
As I have said before, they are the blocks in the constructor set or prefab 
building kit if you will. They are a part of the IDE, and I think LC was 
written in Objective C (If I am not totally mistaken). 

Bob


On Feb 20, 2012, at 9:30 PM, Michael Chean wrote:

 Thanks this conversation has been very interesting, though a lot of it is
 above my head.  I didn't realize that
 there were scripts and objects.  I just assumed that the objects were
 canned scripted objects, with only
 the various properties exposed.   What are they written in then?
 ___
 use-livecode mailing list
 use-livecode@lists.runrev.com
 Please visit this url to subscribe, unsubscribe and manage your subscription 
 preferences:
 http://lists.runrev.com/mailman/listinfo/use-livecode


___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: Recreating a binary stack from xml text

2012-02-21 Thread Pete
Hi Bob,
As mentioned in my original email, I don't consider detecting changes in
data part of this project.  It would be kinda like asking the tool to check
the contents of two snapshots of an SQL database that is somehow linked to
a stack.  That's not to say it's not important, just beyond the scope of
what I have in mind (if I ever do anything!).

There's definitely more issues that would have to be resolved, one of them
being what you mentioned - dynamically created/deleted objects.  Off the
top of my head, I'd say that the versioning would have to look at the base
version of such a stack (with no dynamic objects) and rely on changes in
the scripts that create/delete objects dynamically to detect changes in how
and when that is done.

Plus there's a bunch of other custom objects out there that would have to
be dealt with.  As an example, I'm just checking out the Data Tree product
which probably has its own set of issues to consider in terms of versioning.

Pete

On Tue, Feb 21, 2012 at 9:40 AM, Bob Sneidar b...@twft.com wrote:

 The temporary objects in a datagrid change dynamically IF data is
 reloaded. What if the developer is using a datagrid as a static list and
 needs to restore the contents? I think the solution is to bypass the
 temporary objects of a datagrid, instead saving the datagrid data in some
 fashion (see my functions for converting an array to text and back again)
 as a special case. The first time a stack is versioned it could present
 the dev with a list of datagrid objects and allow the dev to choose between
 versioning the contents or the structure + data.

 Where things are going to get really dicey is stacks that are constantly
 creating and deleting objects and groups. I am not a big fan of using
 Livecode this way, but people do, so there you are.




-- 
Pete
Molly's Revenge http://www.mollysrevenge.com
___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: Recreating a binary stack from xml text

2012-02-21 Thread Geoff Canyon Rev
Yeah, I'm not by any means saying FileMaker is perfect. It has limitations
I can't stand as well. Every environment I know does. I wish LC also had
J's unlimited ability to handle arrays, and reversible functions, and
several other features.

I also wish -- desperately -- that LC had LISP's macros. It would be so
awesome to be able to define new syntax. First class functions are a good
idea as well.

On Tue, Feb 21, 2012 at 11:48 AM, Bob Sneidar b...@twft.com wrote:

 One of the things that frustrated me with Filemaker is that references to
 tables were constants. You could not by script save the name of a table in
 a variable, and then reference the table by name. At the time it was
 essential to me to be able to do that, so I could set some environment
 variables at the outset depending on the company being edited, and have my
 code access the set of tables via their variable names.

 Also, while a graphical code editor may seem like a good idea at first,
 in practice it turns out to be quite a slow way of doing things.

___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: Recreating a binary stack from xml text

2012-02-21 Thread Mark Wieder
Geoff Canyon Rev gcanyon+rev@... writes:

 I'm looking at the docs for Eclipse and I see safe rename. Is that what
 you're talking about? Out of curiosity does it mean that when you rename
 something, it goes through all your source files looking for references to
 that thing, and changes them?

Yes on both counts. And there's a preview mode so you can do a dry run to see
what's going to be changed.

https://www.ibm.com/developerworks/library/os-ecref/

-- 
 Mark Wieder





___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: Recreating a binary stack from xml text

2012-02-20 Thread Bob Sneidar
I was going to say that you would have to discriminate between temporary 
datagrid objects that the datagrid created on the fly, and those that are a 
part of a datagrid object, but then some people use datagrids as static storage 
objects, and they would have to be reproduced in their entirety. 

Bob


On Feb 18, 2012, at 6:43 PM, Alejandro Tejada wrote:

 Just keep wondering if complex grouped controls as
 the datagrid could be saved and restored faithfully
 using this method.


___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: Recreating a binary stack from xml text

2012-02-20 Thread Bob Sneidar
Ick. So easy to lose track that way. Having multiple independent copies of a 
project floating around is in my opinion to be avoided at all costs. In a real 
multi-dev system, the control would have to update the existing client copies 
each time an item was checked out or checked in, so that each user would have 
as up to date a copy as possible. Ideally, when an item is checked in, each 
user with something checked out would either get a notification that there were 
updates, and be allowed to choose to update to the latest revision, or it 
*could* be done automatically. However, due to the nature of the IDE, you would 
have to account for running scripts on the client end and not update until an 
idle time. 

It could be done, but it would be complex. I think at the very least, each user 
would have to checkout a card, and that card and all it's objects would be 
locked for modification by the versioning system. That is where a database 
would be handy. A system which used both XML for the object descriptions, and a 
database that kept track of client checkout, object locking and date/time 
stamping would be ideal. 

It seems LC multi-developer systems are trickier than otherwise, because a 
project is not just code as it would be in a C or Java based system. There are 
objects which, although typically static, can be altered, and can affect the 
execution of the code. But if all you cared about was keeping track of changes 
made, and you didn't care about multi-developer checkout of objects, simply 
recording changes might be enough. 

Bob


On Feb 18, 2012, at 9:07 PM, Geoff Canyon Rev wrote:

 I didn't store the ID because when I wrote it (and for long after that) the
 ID was immutable, so there was no need to store it because it couldn't be
 set.
 
 That said, I'm guessing that a monolithic XML file is not the way to go
 here. Someone who knows git better than I will correct me, but it would be
 more useful to store each item as a separate file within a directory
 (hierarchy).
 
 I'm tempted to say that there are some things that wouldn't be
 worth/necessary to put into version control. Heck, you could start with
 just the scripts. So if I'm working on a project with you, we could agree
 ahead of time that I'm not in charge of design, but just code. You could
 send me a copy of the stack at some point, and an IDE tool would be able to
 use basic git commands to refresh/update the scripts of all the objects.
 But because we agreed, I know that if I move an object, or create a new
 one, or delete one, that won't be captured. Maybe that's not ideal -- if I
 find that something is a pixel off, that's a pain not to be able to fix it
 right there. But it would be somewhat simpler to implement.
 
 On Sat, Feb 18, 2012 at 8:43 PM, Alejandro Tejada 
 capellan2...@gmail.comwrote:
 
 Interesting enough, it does not include the ID among
 the properties saved as XML:
 http://www.inspiredlogic.com/mc/ripperoutput.html
 
 But adding this, and others new properties, should be a
 piece of cake for professionals developers in
 this platform. ( Not me! :-D )
 
 ___
 use-livecode mailing list
 use-livecode@lists.runrev.com
 Please visit this url to subscribe, unsubscribe and manage your subscription 
 preferences:
 http://lists.runrev.com/mailman/listinfo/use-livecode


___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: Recreating a binary stack from xml text

2012-02-20 Thread gcanyon+rev
Agreed that a full implementation would be better; I'm just saying that, 
compared to the present setup, where there is no source control whatsoever, a 
system that at least allowed merging code in a controlled fashion would be a 
huge improvement. 

I would hope we can do better than card-level locking, but better that than 
nothing at all. 

Sent from my iPad

On Feb 20, 2012, at 11:51 AM, Bob Sneidar b...@twft.com wrote:

 Ick. So easy to lose track that way. Having multiple independent copies of a 
 project floating around is in my opinion to be avoided at all costs. In a 
 real multi-dev system, the control would have to update the existing client 
 copies each time an item was checked out or checked in, so that each user 
 would have as up to date a copy as possible. Ideally, when an item is checked 
 in, each user with something checked out would either get a notification that 
 there were updates, and be allowed to choose to update to the latest 
 revision, or it *could* be done automatically. However, due to the nature of 
 the IDE, you would have to account for running scripts on the client end and 
 not update until an idle time. 
 
 It could be done, but it would be complex. I think at the very least, each 
 user would have to checkout a card, and that card and all it's objects would 
 be locked for modification by the versioning system. That is where a 
 database would be handy. A system which used both XML for the object 
 descriptions, and a database that kept track of client checkout, object 
 locking and date/time stamping would be ideal. 
 
 It seems LC multi-developer systems are trickier than otherwise, because a 
 project is not just code as it would be in a C or Java based system. There 
 are objects which, although typically static, can be altered, and can affect 
 the execution of the code. But if all you cared about was keeping track of 
 changes made, and you didn't care about multi-developer checkout of objects, 
 simply recording changes might be enough. 
 
 Bob
 
 
 On Feb 18, 2012, at 9:07 PM, Geoff Canyon Rev wrote:
 
 I didn't store the ID because when I wrote it (and for long after that) the
 ID was immutable, so there was no need to store it because it couldn't be
 set.
 
 That said, I'm guessing that a monolithic XML file is not the way to go
 here. Someone who knows git better than I will correct me, but it would be
 more useful to store each item as a separate file within a directory
 (hierarchy).
 
 I'm tempted to say that there are some things that wouldn't be
 worth/necessary to put into version control. Heck, you could start with
 just the scripts. So if I'm working on a project with you, we could agree
 ahead of time that I'm not in charge of design, but just code. You could
 send me a copy of the stack at some point, and an IDE tool would be able to
 use basic git commands to refresh/update the scripts of all the objects.
 But because we agreed, I know that if I move an object, or create a new
 one, or delete one, that won't be captured. Maybe that's not ideal -- if I
 find that something is a pixel off, that's a pain not to be able to fix it
 right there. But it would be somewhat simpler to implement.
 
 On Sat, Feb 18, 2012 at 8:43 PM, Alejandro Tejada 
 capellan2...@gmail.comwrote:
 
 Interesting enough, it does not include the ID among
 the properties saved as XML:
 http://www.inspiredlogic.com/mc/ripperoutput.html
 
 But adding this, and others new properties, should be a
 piece of cake for professionals developers in
 this platform. ( Not me! :-D )
 
 ___
 use-livecode mailing list
 use-livecode@lists.runrev.com
 Please visit this url to subscribe, unsubscribe and manage your subscription 
 preferences:
 http://lists.runrev.com/mailman/listinfo/use-livecode
 
 
 ___
 use-livecode mailing list
 use-livecode@lists.runrev.com
 Please visit this url to subscribe, unsubscribe and manage your subscription 
 preferences:
 http://lists.runrev.com/mailman/listinfo/use-livecode

___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: Recreating a binary stack from xml text

2012-02-20 Thread Bob Sneidar
I only mention card locking because the elements of a card typically interact 
with each other quite a bit. Imagine someone renaming a button that a card 
script accessed by name, or a field that was critical to saving data to a 
database. Also the process of checking out and in every object in a card could 
induce insanity. 

Bob


On Feb 20, 2012, at 10:41 AM, gcanyon+rev wrote:

 Agreed that a full implementation would be better; I'm just saying that, 
 compared to the present setup, where there is no source control whatsoever, a 
 system that at least allowed merging code in a controlled fashion would be a 
 huge improvement. 
 
 I would hope we can do better than card-level locking, but better that than 
 nothing at all. 
 
 Sent from my iPad


___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: Recreating a binary stack from xml text

2012-02-20 Thread Geoff Canyon Rev
Fair point. One thing I find interesting is how each environment I use
brings something to the table that no other environment does (as well). For
LiveCode, it's the built-in GUI builder and the interactive development.

For FileMaker, it's the easy database, but equally important, it's the fact
that all items -- scripts, layouts, columns, tables, etc. -- are abstracted
from their names. In FileMaker, if you change the name of a table, then
everywhere in any script that refers to that table, the script changes
automatically to match. Change a layout name, same thing. That's something
I wish every environment I use could have. Given that FileMaker has had
this since at least 1994 or so, it's frustrating that no one else has
picked it up. It's one of those things that seems obvious once you've
experienced it /rant

So I agree, reconciling the source when someone changes the name of an
object would be a pain.

On Mon, Feb 20, 2012 at 3:04 PM, Bob Sneidar b...@twft.com wrote:

 I only mention card locking because the elements of a card typically
 interact with each other quite a bit. Imagine someone renaming a button
 that a card script accessed by name, or a field that was critical to saving
 data to a database. Also the process of checking out and in every object in
 a card could induce insanity.

 Bob


 On Feb 20, 2012, at 10:41 AM, gcanyon+rev wrote:

  Agreed that a full implementation would be better; I'm just saying that,
 compared to the present setup, where there is no source control whatsoever,
 a system that at least allowed merging code in a controlled fashion would
 be a huge improvement.
 
  I would hope we can do better than card-level locking, but better that
 than nothing at all.
 
  Sent from my iPad


 ___
 use-livecode mailing list
 use-livecode@lists.runrev.com
 Please visit this url to subscribe, unsubscribe and manage your
 subscription preferences:
 http://lists.runrev.com/mailman/listinfo/use-livecode

___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: Recreating a binary stack from xml text

2012-02-20 Thread Mark Wieder
Geoff-

Monday, February 20, 2012, 6:03:20 PM, you wrote:

 For FileMaker, it's the easy database, but equally important, it's the fact
 that all items -- scripts, layouts, columns, tables, etc. -- are abstracted
 from their names. In FileMaker, if you change the name of a table, then
 everywhere in any script that refers to that table, the script changes
 automatically to match. Change a layout name, same thing. That's something
 I wish every environment I use could have. Given that FileMaker has had
 this since at least 1994 or so, it's frustrating that no one else has
 picked it up. It's one of those things that seems obvious once you've
 experienced it /rant

Both Visual Studio and Eclipse support that for refactoring. And yes,
I miss it here.

-- 
-Mark Wieder
 mwie...@ahsoftware.net


___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: Recreating a binary stack from xml text

2012-02-20 Thread Pete
That's a cool feature of Filemaker (the abstracted table names I mean).
 I'm about to release an admin tool for SQLite databases - it has no
connection with Livecode other than that's what I used to make it but I
think I'll put some sort of connection to Livecode scripts on the
enhancement list to handle things like that.
Pete

On Mon, Feb 20, 2012 at 6:03 PM, Geoff Canyon Rev gcanyon+...@gmail.comwrote:

 Fair point. One thing I find interesting is how each environment I use
 brings something to the table that no other environment does (as well). For
 LiveCode, it's the built-in GUI builder and the interactive development.

 For FileMaker, it's the easy database, but equally important, it's the fact
 that all items -- scripts, layouts, columns, tables, etc. -- are abstracted
 from their names. In FileMaker, if you change the name of a table, then
 everywhere in any script that refers to that table, the script changes
 automatically to match. Change a layout name, same thing. That's something
 I wish every environment I use could have. Given that FileMaker has had
 this since at least 1994 or so, it's frustrating that no one else has
 picked it up. It's one of those things that seems obvious once you've
 experienced it /rant

 So I agree, reconciling the source when someone changes the name of an
 object would be a pain.

 On Mon, Feb 20, 2012 at 3:04 PM, Bob Sneidar b...@twft.com wrote:

  I only mention card locking because the elements of a card typically
  interact with each other quite a bit. Imagine someone renaming a button
  that a card script accessed by name, or a field that was critical to
 saving
  data to a database. Also the process of checking out and in every object
 in
  a card could induce insanity.
 
  Bob
 
 
  On Feb 20, 2012, at 10:41 AM, gcanyon+rev wrote:
 
   Agreed that a full implementation would be better; I'm just saying
 that,
  compared to the present setup, where there is no source control
 whatsoever,
  a system that at least allowed merging code in a controlled fashion would
  be a huge improvement.
  
   I would hope we can do better than card-level locking, but better that
  than nothing at all.
  
   Sent from my iPad
 
 
  ___
  use-livecode mailing list
  use-livecode@lists.runrev.com
  Please visit this url to subscribe, unsubscribe and manage your
  subscription preferences:
  http://lists.runrev.com/mailman/listinfo/use-livecode
 
 ___
 use-livecode mailing list
 use-livecode@lists.runrev.com
 Please visit this url to subscribe, unsubscribe and manage your
 subscription preferences:
 http://lists.runrev.com/mailman/listinfo/use-livecode




-- 
Pete
Molly's Revenge http://www.mollysrevenge.com
___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: Recreating a binary stack from xml text

2012-02-20 Thread Alejandro Tejada
Hi Geoff,


Geoff Canyon Rev wrote
 
 [snip]
 For FileMaker, it's the easy database, but equally important, it's the
 fact
 that all items -- scripts, layouts, columns, tables, etc. -- are
 abstracted
 from their names. In FileMaker, if you change the name of a table, then
 everywhere in any script that refers to that table, the script changes
 automatically to match. Change a layout name, same thing. That's something
 I wish every environment I use could have. Given that FileMaker has had
 this since at least 1994 or so, it's frustrating that no one else has
 picked it up. It's one of those things that seems obvious once you've
 experienced it /rant
 
 So I agree, reconciling the source when someone changes the name of an
 object would be a pain.
 

This is exactly the reason that drive me to ask
if it is possible to rebuilt a binary stack from xml
source: Does every control keeps its original ID?

Because if that were the case, then it's only a matter
of use only IDs to reference controls in the scripts and
never, never use their names.

This should be easy to add in the script editor as a menu
option selectable by the developer:
Use only IDs References.
In this way, every time that you compile a script, the
script editor verify that after every reference to a control
there is the keyword ID and a valid reference to an
existing control or shows a warning to the developer.

Another way is to make the conversion automatically
in the script editor while compiling, adding the
selectable menu option to:
Convert Controls Names to IDs

Of course, if there is a message to catch a name changed,
like the message selectionchanged for selections,
then it's just a matter of writing a plug-in to catch the
renaming event and proceed to search and replace it
in all the scripts... (Honestly, I find scary an automatic
search and replace like that)

Well, suppose that every challenge is sorted and it's possible
to use xml files with version control software as GIT for
teamwork in this platform, then...
Would be possible to use the browser to edit scripts and
control properties and using LiveCode Server to output a
binary stack to download and run locally???

Just a wild guess, but an interesting one!

Al




--
View this message in context: 
http://runtime-revolution.278305.n4.nabble.com/Recreating-a-binary-stack-from-xml-text-tp4400122p4405848.html
Sent from the Revolution - User mailing list archive at Nabble.com.

___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: Recreating a binary stack from xml text

2012-02-20 Thread Pete
 that)

 Well, suppose that every challenge is sorted and it's possible
 to use xml files with version control software as GIT for
 teamwork in this platform, then...
 Would be possible to use the browser to edit scripts and
 control properties and using LiveCode Server to output a
 binary stack to download and run locally???

 Just a wild guess, but an interesting one!

 Al




 --
 View this message in context:
 http://runtime-revolution.278305.n4.nabble.com/Recreating-a-binary-stack-from-xml-text-tp4400122p4405848.html
 Sent from the Revolution - User mailing list archive at Nabble.com.

 ___
 use-livecode mailing list
 use-livecode@lists.runrev.com
 Please visit this url to subscribe, unsubscribe and manage your
 subscription preferences:
 http://lists.runrev.com/mailman/listinfo/use-livecode




-- 
Pete
Molly's Revenge http://www.mollysrevenge.com
___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: Recreating a binary stack from xml text

2012-02-20 Thread Michael Chean
Thanks this conversation has been very interesting, though a lot of it is
above my head.  I didn't realize that
there were scripts and objects.  I just assumed that the objects were
canned scripted objects, with only
the various properties exposed.   What are they written in then?
___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: Recreating a binary stack from xml text

2012-02-20 Thread Geoff Canyon Rev
I'm looking at the docs for Eclipse and I see safe rename. Is that what
you're talking about? Out of curiosity does it mean that when you rename
something, it goes through all your source files looking for references to
that thing, and changes them?

I understand that this is nitpicking, but I think FileMaker does something
more robust. At least I think it does, I could be wrong. When FileMaker
stores your script, it stores within it any references to tables, columns,
scripts, etc., by some underlying id, not by name. Then, when it is time to
display the script to you in the editor, it re-constitutes the names at
that point. In any case, there is only the one tool for renaming things,
and it always does the right thing.

As I said, I could be wrong about how FileMaker does it. But by comparison,
I'm fairly confident that in Eclipse what's going on is that, if you use
the appropriate tool, you can not break things by renaming them because the
tool will run around to all the source files and rename things for you.

So while it is possible to not break names in other tools, in FileMaker it
is literally impossible (other than if there is a bug, obviously) to break
names.

That said, I'd love to have in LC what Eclipse and Visual Studio have.

gc

On Mon, Feb 20, 2012 at 8:38 PM, Mark Wieder mwie...@ahsoftware.net wrote:

 Both Visual Studio and Eclipse support that for refactoring. And yes,
 I miss it here.

___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: Recreating a binary stack from xml text

2012-02-20 Thread Geoff Canyon Rev
On Mon, Feb 20, 2012 at 9:05 PM, Alejandro Tejada capellan2...@gmail.comwrote:

 This is exactly the reason that drive me to ask
 if it is possible to rebuilt a binary stack from xml
 source: Does every control keeps its original ID?


Not with the tool I created. It sounds like it's possible now.



 Because if that were the case, then it's only a matter
 of use only IDs to reference controls in the scripts and
 never, never use their names.


This sounds like cutting off your scalp to cure your dandruff. I want to
use names.
___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Recreating a binary stack from xml text

2012-02-18 Thread Alejandro Tejada
Recently, Michael Chean asked about the possibility 
of using svn for version control of livecode stacks. 
http://betterexplained.com/articles/a-visual-guide-to-version-control/

But, checking the mail list, I found that many developers 
have created code to save stacks as xml. 

Now, my question is: It is possible to recreate a binary stack 
from xml text, assigning always the same IDs to the same 
controls and include in these controls any script with more 
than 10 lines? 

Thanks in advance! 

Al

--
View this message in context: 
http://runtime-revolution.278305.n4.nabble.com/Recreating-a-binary-stack-from-xml-text-tp4400122p4400122.html
Sent from the Revolution - User mailing list archive at Nabble.com.

___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: Recreating a binary stack from xml text

2012-02-18 Thread Malte Brill
Hi Al,

as of LiveCode version 5 (maybe 4.6.4) this is possible (with the limitation of 
embedded audioClips and embedded videoClips, as I do not see a way to get the 
binary data from them). The engine was changed to allow the setting of IDs for 
any control for exactly that reason. Basically now it is sitting down and loop 
through a stack to extract all necesssary data and then write the reverse 
script. As long as you use the liveCode IDE the scriptlimits is not a problem 
either. The 10 lines limit only affects standalone applications. At the moment 
my time is too limited to implement this full blown, but I am glad to lend a 
hand if time permits. I want this too, so this might be interesting (unless 
there is a 3rd party solution already in the making and getting out of early 
alpha state soon, that I am not aware of).


All the best,

Malte
___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: Recreating a binary stack from xml text

2012-02-18 Thread Pete
I saw a post earlier in this thread that perhaps Mark Wieder might be
working on something along these lines.  Mark, can you comment?
Pete

On Sat, Feb 18, 2012 at 10:47 AM, Malte Brill revolut...@derbrill.dewrote:

 Hi Al,

 as of LiveCode version 5 (maybe 4.6.4) this is possible (with the
 limitation of embedded audioClips and embedded videoClips, as I do not see
 a way to get the binary data from them). The engine was changed to allow
 the setting of IDs for any control for exactly that reason. Basically now
 it is sitting down and loop through a stack to extract all necesssary data
 and then write the reverse script. As long as you use the liveCode IDE the
 scriptlimits is not a problem either. The 10 lines limit only affects
 standalone applications. At the moment my time is too limited to implement
 this full blown, but I am glad to lend a hand if time permits. I want this
 too, so this might be interesting (unless there is a 3rd party solution
 already in the making and getting out of early alpha state soon, that I am
 not aware of).


 All the best,

 Malte
 ___
 use-livecode mailing list
 use-livecode@lists.runrev.com
 Please visit this url to subscribe, unsubscribe and manage your
 subscription preferences:
 http://lists.runrev.com/mailman/listinfo/use-livecode




-- 
Pete
Molly's Revenge http://www.mollysrevenge.com
___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: Recreating a binary stack from xml text

2012-02-18 Thread Mark Wieder
Pete-

Saturday, February 18, 2012, 11:33:51 AM, you wrote:

 I saw a post earlier in this thread that perhaps Mark Wieder might be
 working on something along these lines.  Mark, can you comment?

If revOnline ever comes back (hello rev team?) I'll post a stack that
does the translations.

Getting to an from xml format isn't that much of a problem technically
now that ids are no longer immutable. What's a bit more of a brain
teaser is preserving the object hierarchy at the same time. I opted
for individual xml files for each control, card, and stack, as well as
a project xml file that describes how the objects are organized. That
way you can create the entire stack from the xml descriptions or just
pick out individual controls and recreate them.

Creating an object from the xml description is a matter of looping
through the properties, as in

-- in a try construct to handle read-only properties
try
  set the property of object to attribute
catch e
end try

stack
 card
  group
   control
property
/property
   /control
  /group
  control
  /control
 /card
 substack
 ... etc
 /substack
/stack

-- 
-Mark Wieder
 mwie...@ahsoftware.net


___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: Recreating a binary stack from xml text

2012-02-18 Thread J. Landman Gay

On 2/18/12 2:07 PM, Mark Wieder wrote:


If revOnline ever comes back (hello rev team?)


I haven't been able to view, log in, or anything else on revOnline for a 
while now. Last night I figured it out. It works normally with LiveCode 
4.x, it breaks completely with LiveCode 5.x.


--
Jacqueline Landman Gay | jac...@hyperactivesw.com
HyperActive Software   | http://www.hyperactivesw.com

___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: Recreating a binary stack from xml text

2012-02-18 Thread Pete
Hi Mark,
Thanks for the update.  Like several other people, I'm really frustrated by
the non-opertaion of revOnline.  I understand that the team has a lot on
their hands right now but the thing has been broken for months as far as I
can tell.  Maybe we should open a community Dropbox or Box.net account that
allows us all to share useful stacks.

Back to the topic.

I've been thinking about doing something along these lines but haven't had
a chance to actually do anything other than think about the concept.  Most
of the posts I've seen about this topic seem to base the solution on XML
but I'm thinking of using an sqlite database.  What can I say, I'm a
database guy, I understand them, I don't know much about XML.  Using a DB
would make it very easy to address the issue you raised regarding
recreating only part of a stack rather than the whole stack.

If I had the time, I'd like to do this in the context of a version control
system that would store the info about different versions of a stack and
allow comparison between versions to see what changed, not just in scripts
but in any of the stack constructs.  I think that would be a useful and
fairly straightforward thing to do in the context of a database.  In fact,
while we're at it, why not add bug tracking capabilties.

Wish I had time to do it.

Pete

On Sat, Feb 18, 2012 at 12:07 PM, Mark Wieder mwie...@ahsoftware.netwrote:

 Pete-

 Saturday, February 18, 2012, 11:33:51 AM, you wrote:

  I saw a post earlier in this thread that perhaps Mark Wieder might be
  working on something along these lines.  Mark, can you comment?

 If revOnline ever comes back (hello rev team?) I'll post a stack that
 does the translations.

 Getting to an from xml format isn't that much of a problem technically
 now that ids are no longer immutable. What's a bit more of a brain
 teaser is preserving the object hierarchy at the same time. I opted
 for individual xml files for each control, card, and stack, as well as
 a project xml file that describes how the objects are organized. That
 way you can create the entire stack from the xml descriptions or just
 pick out individual controls and recreate them.

 Creating an object from the xml description is a matter of looping
 through the properties, as in

 -- in a try construct to handle read-only properties
 try
  set the property of object to attribute
 catch e
 end try

 stack
  card
  group
   control
property
/property
   /control
  /group
  control
  /control
  /card
  substack
  ... etc
  /substack
 /stack

 --
 -Mark Wieder
  mwie...@ahsoftware.net


 ___
 use-livecode mailing list
 use-livecode@lists.runrev.com
 Please visit this url to subscribe, unsubscribe and manage your
 subscription preferences:
 http://lists.runrev.com/mailman/listinfo/use-livecode




-- 
Pete
Molly's Revenge http://www.mollysrevenge.com
___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: Recreating a binary stack from xml text

2012-02-18 Thread mikedoub
I think the real intent is to get a livecode application into a format where 
you can use standard configuration management tools to store versions and track 
differences.  In theory if the components were broken out separately, then you 
could have multiple people working on the same app at the same time.  

I believe as long as the source is text, then all of source management systems 
that I am aware of will work.  XML is just text so it should be fine.  Most of 
these system can deal with binary blobs and they just rev stamp them. So images 
and media are still manageable.  

Not having the ability to manage the source code was the only thing that 
prevented me from using livecode in my corporate life.  So I am excited to hear 
that others are interested as well. 

  -= Mike
 

Sent from my BlackBerry device on the Rogers Wireless Network

-Original Message-
From: Pete p...@mollysrevenge.com
Sender: use-livecode-boun...@lists.runrev.com
Date: Sat, 18 Feb 2012 13:12:26 
To: How to use LiveCodeuse-livecode@lists.runrev.com
Reply-To: How to use LiveCode use-livecode@lists.runrev.com
Subject: Re: Recreating a binary stack from xml text

Hi Mark,
Thanks for the update.  Like several other people, I'm really frustrated by
the non-opertaion of revOnline.  I understand that the team has a lot on
their hands right now but the thing has been broken for months as far as I
can tell.  Maybe we should open a community Dropbox or Box.net account that
allows us all to share useful stacks.

Back to the topic.

I've been thinking about doing something along these lines but haven't had
a chance to actually do anything other than think about the concept.  Most
of the posts I've seen about this topic seem to base the solution on XML
but I'm thinking of using an sqlite database.  What can I say, I'm a
database guy, I understand them, I don't know much about XML.  Using a DB
would make it very easy to address the issue you raised regarding
recreating only part of a stack rather than the whole stack.

If I had the time, I'd like to do this in the context of a version control
system that would store the info about different versions of a stack and
allow comparison between versions to see what changed, not just in scripts
but in any of the stack constructs.  I think that would be a useful and
fairly straightforward thing to do in the context of a database.  In fact,
while we're at it, why not add bug tracking capabilties.

Wish I had time to do it.

Pete

On Sat, Feb 18, 2012 at 12:07 PM, Mark Wieder mwie...@ahsoftware.netwrote:

 Pete-

 Saturday, February 18, 2012, 11:33:51 AM, you wrote:

  I saw a post earlier in this thread that perhaps Mark Wieder might be
  working on something along these lines.  Mark, can you comment?

 If revOnline ever comes back (hello rev team?) I'll post a stack that
 does the translations.

 Getting to an from xml format isn't that much of a problem technically
 now that ids are no longer immutable. What's a bit more of a brain
 teaser is preserving the object hierarchy at the same time. I opted
 for individual xml files for each control, card, and stack, as well as
 a project xml file that describes how the objects are organized. That
 way you can create the entire stack from the xml descriptions or just
 pick out individual controls and recreate them.

 Creating an object from the xml description is a matter of looping
 through the properties, as in

 -- in a try construct to handle read-only properties
 try
  set the property of object to attribute
 catch e
 end try

 stack
  card
  group
   control
property
/property
   /control
  /group
  control
  /control
  /card
  substack
  ... etc
  /substack
 /stack

 --
 -Mark Wieder
  mwie...@ahsoftware.net


 ___
 use-livecode mailing list
 use-livecode@lists.runrev.com
 Please visit this url to subscribe, unsubscribe and manage your
 subscription preferences:
 http://lists.runrev.com/mailman/listinfo/use-livecode




-- 
Pete
Molly's Revenge http://www.mollysrevenge.com
___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode
___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: Recreating a binary stack from xml text

2012-02-18 Thread Pete
Good point Mike.  I think the db approach might provide some added benefits
but as you say, standard cvs systems require text to work from.  Could get
the best of both worlds by providing the ability to create XML from the
database if there are, in fact, any benefits from using a db.
Pete

On Sat, Feb 18, 2012 at 2:43 PM, miked...@gmail.com wrote:

 I think the real intent is to get a livecode application into a format
 where you can use standard configuration management tools to store versions
 and track differences.  In theory if the components were broken out
 separately, then you could have multiple people working on the same app at
 the same time.

 I believe as long as the source is text, then all of source management
 systems that I am aware of will work.  XML is just text so it should be
 fine.  Most of these system can deal with binary blobs and they just rev
 stamp them. So images and media are still manageable.

 Not having the ability to manage the source code was the only thing that
 prevented me from using livecode in my corporate life.  So I am excited to
 hear that others are interested as well.

  -= Mike


 Sent from my BlackBerry device on the Rogers Wireless Network

 -Original Message-
 From: Pete p...@mollysrevenge.com
 Sender: use-livecode-boun...@lists.runrev.com
 Date: Sat, 18 Feb 2012 13:12:26
 To: How to use LiveCodeuse-livecode@lists.runrev.com
 Reply-To: How to use LiveCode use-livecode@lists.runrev.com
 Subject: Re: Recreating a binary stack from xml text

 Hi Mark,
 Thanks for the update.  Like several other people, I'm really frustrated by
 the non-opertaion of revOnline.  I understand that the team has a lot on
 their hands right now but the thing has been broken for months as far as I
 can tell.  Maybe we should open a community Dropbox or Box.net account that
 allows us all to share useful stacks.

 Back to the topic.

 I've been thinking about doing something along these lines but haven't had
 a chance to actually do anything other than think about the concept.  Most
 of the posts I've seen about this topic seem to base the solution on XML
 but I'm thinking of using an sqlite database.  What can I say, I'm a
 database guy, I understand them, I don't know much about XML.  Using a DB
 would make it very easy to address the issue you raised regarding
 recreating only part of a stack rather than the whole stack.

 If I had the time, I'd like to do this in the context of a version control
 system that would store the info about different versions of a stack and
 allow comparison between versions to see what changed, not just in scripts
 but in any of the stack constructs.  I think that would be a useful and
 fairly straightforward thing to do in the context of a database.  In fact,
 while we're at it, why not add bug tracking capabilties.

 Wish I had time to do it.

 Pete

 On Sat, Feb 18, 2012 at 12:07 PM, Mark Wieder mwie...@ahsoftware.net
 wrote:

  Pete-
 
  Saturday, February 18, 2012, 11:33:51 AM, you wrote:
 
   I saw a post earlier in this thread that perhaps Mark Wieder might be
   working on something along these lines.  Mark, can you comment?
 
  If revOnline ever comes back (hello rev team?) I'll post a stack that
  does the translations.
 
  Getting to an from xml format isn't that much of a problem technically
  now that ids are no longer immutable. What's a bit more of a brain
  teaser is preserving the object hierarchy at the same time. I opted
  for individual xml files for each control, card, and stack, as well as
  a project xml file that describes how the objects are organized. That
  way you can create the entire stack from the xml descriptions or just
  pick out individual controls and recreate them.
 
  Creating an object from the xml description is a matter of looping
  through the properties, as in
 
  -- in a try construct to handle read-only properties
  try
   set the property of object to attribute
  catch e
  end try
 
  stack
   card
   group
control
 property
 /property
/control
   /group
   control
   /control
   /card
   substack
   ... etc
   /substack
  /stack
 
  --
  -Mark Wieder
   mwie...@ahsoftware.net
 
 
  ___
  use-livecode mailing list
  use-livecode@lists.runrev.com
  Please visit this url to subscribe, unsubscribe and manage your
  subscription preferences:
  http://lists.runrev.com/mailman/listinfo/use-livecode
 
 


 --
 Pete
 Molly's Revenge http://www.mollysrevenge.com
 ___
 use-livecode mailing list
 use-livecode@lists.runrev.com
 Please visit this url to subscribe, unsubscribe and manage your
 subscription preferences:
 http://lists.runrev.com/mailman/listinfo/use-livecode
 ___
 use-livecode mailing list
 use-livecode@lists.runrev.com
 Please visit this url to subscribe, unsubscribe and manage your
 subscription preferences:
 http://lists.runrev.com/mailman/listinfo

Re: Recreating a binary stack from xml text

2012-02-18 Thread Michael Chean
Thanks for this interesting thread.  In thinking about my question, I
realized that the lack of a LC to script
export, thus limiting the ability to use the many fine source controls out
there is a real no-go for multi
developer teams.  Fortunately there is just one of me, so it's not an drop
dead issue. But anyone who uses
one of these tools, I'm willing to bet, will never go back, and of course
the ability to use tools like GIT and
would increase the visibility of LiveCode. Also, if I'm successful, I will
no longer be a one man shop, and at that
point it will become a growing necessity.
 In reading the case-studies I noticed that the one from the University of
Vienna sounds like they rolled their own, ugh!  I've used propietary source
code repositories, and I think that there is no good argument for them in
the small developer shops considering the many existing systems out there.
I would be very interested in this ability, though I hope that it is  part
of  LiveCode at some point.




On Sat, Feb 18, 2012 at 2:43 PM, miked...@gmail.com wrote:

 I think the real intent is to get a livecode application into a format
 where you can use standard configuration management tools to store versions
 and track differences.  In theory if the components were broken out
 separately, then you could have multiple people working on the same app at
 the same time.

 I believe as long as the source is text, then all of source management
 systems that I am aware of will work.  XML is just text so it should be
 fine.  Most of these system can deal with binary blobs and they just rev
 stamp them. So images and media are still manageable.

 Not having the ability to manage the source code was the only thing that
 prevented me from using livecode in my corporate life.  So I am excited to
 hear that others are interested as well.

  -= Mike


 Sent from my BlackBerry device on the Rogers Wireless Network

 -Original Message-
 From: Pete p...@mollysrevenge.com
 Sender: use-livecode-boun...@lists.runrev.com
 Date: Sat, 18 Feb 2012 13:12:26
 To: How to use LiveCodeuse-livecode@lists.runrev.com
 Reply-To: How to use LiveCode use-livecode@lists.runrev.com
 Subject: Re: Recreating a binary stack from xml text

 Hi Mark,
 Thanks for the update.  Like several other people, I'm really frustrated by
 the non-opertaion of revOnline.  I understand that the team has a lot on
 their hands right now but the thing has been broken for months as far as I
 can tell.  Maybe we should open a community Dropbox or Box.net account that
 allows us all to share useful stacks.

 Back to the topic.

 I've been thinking about doing something along these lines but haven't had
 a chance to actually do anything other than think about the concept.  Most
 of the posts I've seen about this topic seem to base the solution on XML
 but I'm thinking of using an sqlite database.  What can I say, I'm a
 database guy, I understand them, I don't know much about XML.  Using a DB
 would make it very easy to address the issue you raised regarding
 recreating only part of a stack rather than the whole stack.

 If I had the time, I'd like to do this in the context of a version control
 system that would store the info about different versions of a stack and
 allow comparison between versions to see what changed, not just in scripts
 but in any of the stack constructs.  I think that would be a useful and
 fairly straightforward thing to do in the context of a database.  In fact,
 while we're at it, why not add bug tracking capabilties.

 Wish I had time to do it.

 Pete

 On Sat, Feb 18, 2012 at 12:07 PM, Mark Wieder mwie...@ahsoftware.net
 wrote:

  Pete-
 
  Saturday, February 18, 2012, 11:33:51 AM, you wrote:
 
   I saw a post earlier in this thread that perhaps Mark Wieder might be
   working on something along these lines.  Mark, can you comment?
 
  If revOnline ever comes back (hello rev team?) I'll post a stack that
  does the translations.
 
  Getting to an from xml format isn't that much of a problem technically
  now that ids are no longer immutable. What's a bit more of a brain
  teaser is preserving the object hierarchy at the same time. I opted
  for individual xml files for each control, card, and stack, as well as
  a project xml file that describes how the objects are organized. That
  way you can create the entire stack from the xml descriptions or just
  pick out individual controls and recreate them.
 
  Creating an object from the xml description is a matter of looping
  through the properties, as in
 
  -- in a try construct to handle read-only properties
  try
   set the property of object to attribute
  catch e
  end try
 
  stack
   card
   group
control
 property
 /property
/control
   /group
   control
   /control
   /card
   substack
   ... etc
   /substack
  /stack
 
  --
  -Mark Wieder
   mwie...@ahsoftware.net
 
 
  ___
  use-livecode mailing list
  use-livecode

Re: Recreating a binary stack from xml text

2012-02-18 Thread Mark Wieder
Mike-

Saturday, February 18, 2012, 2:43:07 PM, you wrote:

 I think the real intent is to get a livecode application into a
 format where you can use standard configuration management tools to
 store versions and track differences.  In theory if the components
 were broken out separately, then you could have multiple people
 working on the same app at the same time.  

Exactly.

 I believe as long as the source is text, then all of source
 management systems that I am aware of will work.  XML is just text
 so it should be fine.  Most of these system can deal with binary
 blobs and they just rev stamp them. So images and media are still
 manageable.  

Nothing particularly special about xml. It's bloated and ugly and
machine-readable rather than human-readable. But it's hierarchical and
it's text, so it's an easy format to deal with. Ideally for LiveCode
purposes you want something that will display the xml storage data as
a nicely formatted tree structure.

 Not having the ability to manage the source code was the only
 thing that prevented me from using livecode in my corporate life.
 So I am excited to hear that others are interested as well. 

Yeah, it's a serious drawback.

-- 
-Mark Wieder
 mwie...@ahsoftware.net


___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: Recreating a binary stack from xml text

2012-02-18 Thread Mark Wieder
Michael-

Saturday, February 18, 2012, 3:16:33 PM, you wrote:

 I've used propietary source code repositories, and I think that
 there is no good argument for them in the small developer shops
 considering the many existing systems out there.

Having rolled my own in the past, I would never go back there again.
Git just does the right thing in the right way.

 I would be very interested in this ability, though I hope that it is
 part of  LiveCode at some point.

Integration into the IDE is very important, although git's integration
into Eclipse is pretty disappointing.

-- 
-Mark Wieder
 mwie...@ahsoftware.net


___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: Recreating a binary stack from xml text

2012-02-18 Thread mikedoub
I would prefer something that is easily human readable.  Xml might work as long 
as the scripts and object properties are presented in a clear and readable 
enough fashion. 

I know that my teams have spent many hours going thru diffs in different 
version of software looking to find exactly what revision and change introduced 
a problem. 

  -= Mike
 
Sent from my BlackBerry device on the Rogers Wireless Network

-Original Message-
From: Mark Wieder mwie...@ahsoftware.net
Sender: use-livecode-boun...@lists.runrev.com
Date: Sat, 18 Feb 2012 15:37:11 
To: How to use LiveCodeuse-livecode@lists.runrev.com
Reply-To: How to use LiveCode use-livecode@lists.runrev.com
Subject: Re: Recreating a binary stack from xml text

Mike-

Saturday, February 18, 2012, 2:43:07 PM, you wrote:

 I think the real intent is to get a livecode application into a
 format where you can use standard configuration management tools to
 store versions and track differences.  In theory if the components
 were broken out separately, then you could have multiple people
 working on the same app at the same time.  

Exactly.

 I believe as long as the source is text, then all of source
 management systems that I am aware of will work.  XML is just text
 so it should be fine.  Most of these system can deal with binary
 blobs and they just rev stamp them. So images and media are still
 manageable.  

Nothing particularly special about xml. It's bloated and ugly and
machine-readable rather than human-readable. But it's hierarchical and
it's text, so it's an easy format to deal with. Ideally for LiveCode
purposes you want something that will display the xml storage data as
a nicely formatted tree structure.

 Not having the ability to manage the source code was the only
 thing that prevented me from using livecode in my corporate life.
 So I am excited to hear that others are interested as well. 

Yeah, it's a serious drawback.

-- 
-Mark Wieder
 mwie...@ahsoftware.net


___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode
___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: Recreating a binary stack from xml text

2012-02-18 Thread Mark Wieder
Jacque-

Saturday, February 18, 2012, 12:48:43 PM, you wrote:

 On 2/18/12 2:07 PM, Mark Wieder wrote:

 If revOnline ever comes back (hello rev team?)

 I haven't been able to view, log in, or anything else on revOnline for a
 while now. Last night I figured it out. It works normally with LiveCode
 4.x, it breaks completely with LiveCode 5.x.

Glad it's working for you. Here's the error it throws in 4.6.4:

Error in system stack:: handler=revOnlineDecodeArray
 line=802
 char=1
error info= 141,802,22
671,802,7
465,802,1
253,802,1
353,0,0,stack C:/Program Files/RunRev/LiveCode 
4.6.4/Toolset/revonlinelibrary.rev

and that's a protected system stack, so I can't delve any further into
the problem.

-- 
-Mark Wieder
 mwie...@ahsoftware.net


___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: Recreating a binary stack from xml text

2012-02-18 Thread Alejandro Tejada
Hi Geoff,

Many Thanks for sharing this gem!
http://www.quickmeme.com/meme/6o9b/


Geoff Canyon Rev wrote
 
 http://www.inspiredlogic.com/mc/ripper.html
 I created mcRipper oh so many years ago. MC = MetaCard
 gives you some idea how long ago. As I recall it handled
 just about everything, but I haven't touched it in over
 ten years. Anyone is free to take a look and laugh at my code. 
 

Actually, it is possible to read your code in the browser :-)
(open the following link in a new tab in your browser)
http://www.inspiredlogic.com/mc/mcripper.mc

Interesting enough, it does not include the ID among
the properties saved as XML:
http://www.inspiredlogic.com/mc/ripperoutput.html

But adding this, and others new properties, should be a
piece of cake for professionals developers in
this platform. ( Not me! :-D )

Just keep wondering if complex grouped controls as
the datagrid could be saved and restored faithfully
using this method.

Ah!...

And now that we are talking about compiling binaries
from text files... Could this method be used via the
Livecode server to create stacks (and download them to
your own computer) using a web text editor
to write the scripts, create controls and their properties?

After this, Livecode will have run the full circle, from
GUI oriented platform to plain Text sources compiled
as binaries. :-D

Al

--
View this message in context: 
http://runtime-revolution.278305.n4.nabble.com/Recreating-a-binary-stack-from-xml-text-tp4400122p4400986.html
Sent from the Revolution - User mailing list archive at Nabble.com.

___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: Recreating a binary stack from xml text

2012-02-18 Thread J. Landman Gay

On 2/18/12 7:26 PM, Mark Wieder wrote:


Glad it's working for you. Here's the error it throws in 4.6.4:

Error in system stack:: handler=revOnlineDecodeArray
  line=802
  char=1
error info= 141,802,22
671,802,7
465,802,1
253,802,1
353,0,0,stack C:/Program Files/RunRev/LiveCode 
4.6.4/Toolset/revonlinelibrary.rev

and that's a protected system stack, so I can't delve any further into
the problem.


Odd. I was using 4.6.4 when it worked for me last night. I just tried it 
again and it still works. Running either 5.02 or the latest pre-release, 
the stack opens and just sits there with loading... displayed. Nothing 
else happens.


Something's borked at any rate.

--
Jacqueline Landman Gay | jac...@hyperactivesw.com
HyperActive Software   | http://www.hyperactivesw.com

___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: Recreating a binary stack from xml text

2012-02-18 Thread Geoff Canyon Rev
I didn't store the ID because when I wrote it (and for long after that) the
ID was immutable, so there was no need to store it because it couldn't be
set.

That said, I'm guessing that a monolithic XML file is not the way to go
here. Someone who knows git better than I will correct me, but it would be
more useful to store each item as a separate file within a directory
(hierarchy).

I'm tempted to say that there are some things that wouldn't be
worth/necessary to put into version control. Heck, you could start with
just the scripts. So if I'm working on a project with you, we could agree
ahead of time that I'm not in charge of design, but just code. You could
send me a copy of the stack at some point, and an IDE tool would be able to
use basic git commands to refresh/update the scripts of all the objects.
But because we agreed, I know that if I move an object, or create a new
one, or delete one, that won't be captured. Maybe that's not ideal -- if I
find that something is a pixel off, that's a pain not to be able to fix it
right there. But it would be somewhat simpler to implement.

On Sat, Feb 18, 2012 at 8:43 PM, Alejandro Tejada capellan2...@gmail.comwrote:

 Interesting enough, it does not include the ID among
 the properties saved as XML:
 http://www.inspiredlogic.com/mc/ripperoutput.html

 But adding this, and others new properties, should be a
 piece of cake for professionals developers in
 this platform. ( Not me! :-D )

___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode