Re: ENB: rethinking Model/View/Controller split in Leo

2020-05-07 Thread David Szent-Györgyi
Edward writes: The great advantage Qt has (or had) over Tk was in the appearance of text. > Has Tk improved in that regard? > My guess is that tkinter as shipped with Python 3.6.8 and 3.7.7 and 3.8.2 would need careful testing. The macOS interface via Tcl/Tk is undergoing work - at present,

Re: ENB: rethinking Model/View/Controller split in Leo

2020-05-07 Thread Thomas Passin
On Thursday, May 7, 2020 at 11:49:31 AM UTC-4, tfer wrote: > > Thanks Matt and Thomas, I'll look into that. It's not that I want to > avoid Zoom so much, I want to demonstrate some work flow stuff, (Windows > 10, some Powershell stuff, and It's virtual workspace), so that's why I > need to

Re: ENB: rethinking Model/View/Controller split in Leo

2020-05-07 Thread David Szent-Györgyi
Edward writes: > > Thanks for this update. Vitalije recently created a prototype in Tk, so > there is actually some code available. > > The great advantage Qt has (or had) over Tk was in the appearance of text. > Has Tk improved in that regard? > Answer for Windows: work has been done. See

Re: ENB: rethinking Model/View/Controller split in Leo

2020-05-07 Thread 'tfer' via leo-editor
Thanks Matt and Thomas, I'll look into that. It's not that I want to avoid Zoom so much, I want to demonstrate some work flow stuff, (Windows 10, some Powershell stuff, and It's virtual workspace), so that's why I need to show what's on my screen. If anyone is interested, and it's okay with

Re: ENB: rethinking Model/View/Controller split in Leo

2020-05-06 Thread Félix
The "Clone" terminology used in Leo is also used in some 2d and 3d graphical design software among others, in the same manner: A 'live' reference to an object that will change in real-time... Just thought I'd make this fact known to people reading this thread :) On Wednesday, May 6, 2020 at

Re: ENB: rethinking Model/View/Controller split in Leo

2020-05-06 Thread Matt Wilkie
> > In a week or so, I'd like to do some teleconferencing with Edward, (not >> Zoom, but something with the ability to share computer screens), so I can >> do a show and tell on some of the stuff in Leo I'm working on. >> >> Actually, Zoom does let you share your screen. The host can let any

Re: ENB: rethinking Model/View/Controller split in Leo

2020-05-06 Thread Thomas Passin
Actually, Zoom does let you share your screen. The host can let any participant take control, and they can share their screen. On Wednesday, May 6, 2020 at 6:20:59 PM UTC-4, tfer wrote: > > > In a week or so, I'd like to do some teleconferencing with Edward, (not > Zoom, but something with the

Re: ENB: rethinking Model/View/Controller split in Leo

2020-05-06 Thread Matt Wilkie
> >>> I've never had a problem with the term as used in Leo. To me, it > conveys 1) that a (clone) node looks different from another because it > appears in a different place, but 2) if you look closer, it's exactly the > same inside. > > I'm not saying that the term that the term should be

Re: ENB: rethinking Model/View/Controller split in Leo

2020-05-06 Thread 'tfer' via leo-editor
>>> I've never had a problem with the term as used in Leo. To me, it conveys >>> 1) that a (clone) node looks different from another because it appears in a >>> different place, but 2) if you look closer, it's exactly the same inside. I'm not saying that the term that the term should be

Re: ENB: rethinking Model/View/Controller split in Leo

2020-05-06 Thread Edward K. Ream
On Wed, May 6, 2020 at 1:26 PM David Szent-Györgyi wrote: > Tkinter and enhancements for current Python are far more capable than the plain Tkinter in which Edward wrote the GUI that was part of Leo 4.2 and Leo 4.3. Thanks for this update. Vitalije recently created a prototype in Tk, so there

Re: ENB: rethinking Model/View/Controller split in Leo

2020-05-06 Thread David Szent-Györgyi
On Monday, May 4, 2020 at 8:23:17 AM UTC-4, Edward K. Ream wrote: > > Leo does not support a tk gui. It hasn't for at least a decade. See > leoPlugins.leo#Plugins-->Gui. > > It's possible to run tk code from Leo, but that is another matter entirely. > The Leo distributions had a virtue that is

Re: ENB: rethinking Model/View/Controller split in Leo

2020-05-06 Thread Thomas Passin
On Wednesday, May 6, 2020 at 1:26:08 PM UTC-4, Edward K. Ream wrote: > > On Wed, May 6, 2020 at 9:37 AM 'tfer' via leo-editor < > leo-e...@googlegroups.com > wrote: > > I've expressed before that I feel that the use of the word "clone", does >> not really capture what we are doing here, in fact,

Re: ENB: rethinking Model/View/Controller split in Leo

2020-05-06 Thread Edward K. Ream
On Wed, May 6, 2020 at 9:37 AM 'tfer' via leo-editor < leo-editor@googlegroups.com> wrote: I've expressed before that I feel that the use of the word "clone", does > not really capture what we are doing here, in fact, due to its use in > biology > Hmm. In the Leo world the term "clone" is a term

Re: ENB: rethinking Model/View/Controller split in Leo

2020-05-06 Thread Edward K. Ream
On Wednesday, May 6, 2020 at 8:21:59 AM UTC-5, Edward K. Ream wrote: >> I would still recommend that p.clone and other methods for model modifications get redirected to tree.clone_node, tree.move_node_up... > I have a queasy feeling about this. It would seem to imply major changes to the

Re: ENB: rethinking Model/View/Controller split in Leo

2020-05-06 Thread 'tfer' via leo-editor
I've expressed before that I feel that the use of the word "clone", does not really capture what we are doing here, in fact, due to its use in biology, it leads to some incorrect thinking about what is going on. In biology, a clone is a separate entity with its own life-cycle, they have the

Re: ENB: rethinking Model/View/Controller split in Leo

2020-05-06 Thread Edward K. Ream
On Wed, May 6, 2020 at 7:32 AM vitalije wrote: > The tree-refresh branch is not finished and some operations like this one doesn't work. But the essence of the applied algorithm is correct. Alright. I'll take a look at the code without cloning it :-) Edward -- You received this message

Re: ENB: rethinking Model/View/Controller split in Leo

2020-05-06 Thread Edward K. Ream
On Wed, May 6, 2020 at 7:17 AM vitalije wrote: >> I don't mind if c.redraw becomes a do-nothing. I just want to know how it's going to work. For outline modifications initiated by scripts we will have to redraw the > outline. To make it quick I plan to use diff algorithm similar to one I >

Re: ENB: rethinking Model/View/Controller split in Leo

2020-05-06 Thread vitalije
> > > I checked out tree-refresh, then attempted to clone qt_tree.py: > > Traceback (most recent call last): > > File "c:\leo.repo\leo-editor\leo\core\leoCommands.py", line 2282, in > executeAnyCommand > return command(event) > > File "c:\leo.repo\leo-editor\leo\core\leoGlobals.py", line

Re: ENB: rethinking Model/View/Controller split in Leo

2020-05-06 Thread vitalije
On Wednesday, May 6, 2020 at 12:51:50 PM UTC+2, Edward K. Ream wrote: > > On Sunday, May 3, 2020 at 4:11:48 PM UTC-5, vitalije wrote: > > in this prototype all those outline operations are made at the same time >> in both tree widget data-model and in v-nodes. This eliminates need for >>

Re: ENB: rethinking Model/View/Controller split in Leo

2020-05-06 Thread Edward K. Ream
On Sunday, May 3, 2020 at 4:11:48 PM UTC-5, vitalije wrote: *What about user scripts that modify outline?* > > User scripts should work without any modification. They can freely modify > outline using the standard Position class or even directly manipulating > v-nodes. This will certainly

Re: ENB: rethinking Model/View/Controller split in Leo

2020-05-06 Thread Edward K. Ream
On Wednesday, May 6, 2020 at 6:01:31 AM UTC-5, Edward K. Ream wrote: > Clones are well defined only in a DAG. Similarly, "outline order" is well defined only in a DAG. Perhaps I should say that clones are not *uniquely* or *intuitively *defined in general graphs. We could go down a rabbit hole

Re: ENB: rethinking Model/View/Controller split in Leo

2020-05-06 Thread Edward K. Ream
On Sun, May 3, 2020 at 11:23 PM Thomas Passin wrote: About clones, we always talk about cloning nodes, but it seems to me that > what actually gets cloned is an entire subtree > Correct. > I'm not sure how a subtree is currently modeled in Leo. > This has a long history. The result of this

Re: ENB: rethinking Model/View/Controller split in Leo

2020-05-06 Thread Edward K. Ream
On Sun, May 3, 2020 at 5:12 PM SegundoBob wrote: several months ago, I concluded that Leo-Editor positions are a very bad > idea and that using GNX's instead would be much simpler and much more > robust. > I think that's an overstatement. Scripts are free to use either vnodes or positions as

Re: ENB: rethinking Model/View/Controller split in Leo

2020-05-06 Thread Edward K. Ream
On Sunday, May 3, 2020 at 4:11:48 PM UTC-5, vitalije wrote: in this prototype all those outline operations are made at the same time in > both tree widget data-model and in v-nodes. This eliminates need for > synchronization between these two models. No need for c.redraw_after..., > c.redraw,

Re: ENB: rethinking Model/View/Controller split in Leo

2020-05-04 Thread Félix
just thought i'd mention i'm glad to see other people concerned about separation of leo's core features/model and it's GUI... Been fiddling around for alomst a year with leo's API and vsCode's API to use the 'pure' leo 'model' into another view and controller: vscode. So i'm very happy to see

Re: ENB: rethinking Model/View/Controller split in Leo

2020-05-04 Thread Edward K. Ream
On Mon, May 4, 2020 at 9:25 AM jkn wrote: My apologies for the noise in that case. I had not realised that tk was no > longer supported. "at least a decade"? - wow, how time flies... > No need for an apology! Edward -- You received this message because you are subscribed to the Google Groups

Re: ENB: rethinking Model/View/Controller split in Leo

2020-05-04 Thread jkn
On Monday, May 4, 2020 at 1:23:17 PM UTC+1, Edward K. Ream wrote: > > On Monday, May 4, 2020 at 4:37:03 AM UTC-5, jkn wrote: > > > As far as I know tk has not been retired, and Leo 'must' continue to > support it. Or have I missed some news? > > Leo does not support a tk gui. It hasn't for at

Re: ENB: rethinking Model/View/Controller split in Leo

2020-05-04 Thread Edward K. Ream
On Monday, May 4, 2020 at 4:37:03 AM UTC-5, jkn wrote: > As far as I know tk has not been retired, and Leo 'must' continue to support it. Or have I missed some news? Leo does not support a tk gui. It hasn't for at least a decade. See leoPlugins.leo#Plugins-->Gui. It's possible to run tk code

Re: ENB: rethinking Model/View/Controller split in Leo

2020-05-04 Thread vitalije
The latest version of prototype is 84b54fc3af. Currently it is almost 1000 lines including comments and includes the following features: browsing outline editing headlines editing bodies shows basic Leo icons on nodes inserting new nodes deleting nodes moving nodes

Re: ENB: rethinking Model/View/Controller split in Leo

2020-05-04 Thread Edward K. Ream
On Sun, May 3, 2020 at 4:11 PM vitalije wrote: The relevant code is in the mvc-prototype branch in > leo/extensions/myleoqt.py. > > Leo architecture follows MVC design pattern. However during its long > history some code parts ended up misplaced. In this post I'll try to > explain why I think

Re: ENB: rethinking Model/View/Controller split in Leo

2020-05-04 Thread vitalije
> interesting stuff - but I want to check.question an assumption here. > As far as I know tk has not been retired, and Leo 'must' continue to > support it. Or have I missed some news? > > Jon N > > AFAIK Tk support has been discontinued. There are some Tk remains in Leo's code base,

Re: ENB: rethinking Model/View/Controller split in Leo

2020-05-04 Thread jkn
On Sunday, May 3, 2020 at 10:11:48 PM UTC+1, vitalije wrote: > > The relevant code is in the mvc-prototype branch in > leo/extensions/myleoqt.py. > > Leo architecture follows MVC design pattern. However during its long > history some code parts ended up misplaced. In this post I'll try to >

Re: ENB: rethinking Model/View/Controller split in Leo

2020-05-04 Thread vitalije
The new version of the prototype now contains 750 lines and a few more commands: - insert new node - delete node - clone node Also in the first version prototype didn't handle clones correctly. In the latest version 69953a0f77

Re: ENB: rethinking Model/View/Controller split in Leo

2020-05-04 Thread vitalije
Thomas Passin, thanks for your comment. On Monday, May 4, 2020 at 6:23:08 AM UTC+2, Thomas Passin wrote: > > > About clones, we always talk about cloning nodes, but it seems to me that > what actually gets cloned is an entire subtree - that is, the clone > includes (clones of) a node's

Re: ENB: rethinking Model/View/Controller split in Leo

2020-05-04 Thread vitalije
SegundoBob, thanks for your comments. Multiple parents in Leo nodes is a way to keep track of all places clone can be found in the outline. Without this `parents` field, every time we need to find other clones it would be necessary to search entire tree. Having parents, it is possible to find

Re: ENB: rethinking Model/View/Controller split in Leo

2020-05-03 Thread Thomas Passin
I'm always in favor of good separation of interests. It can be hard to achieve in practice, and it's always helpful to be diligent about keeping one's eye on the ball. What I'm reading here sounds pretty interesting. About clones, we always talk about cloning nodes, but it seems to me that

Re: ENB: rethinking Model/View/Controller split in Leo

2020-05-03 Thread SegundoBob
I've been thinking about implementing a directed graph editor for a long time. Of course, most of my thinking is based on my use of Leo-Editor and my limited understanding of its internals. I've done only a little implementation of my ideas. I have not produced anything of use to me or of