[SUGGESTION] [EDITOR] Add functions to Level List Window

Started by Nepster, February 18, 2016, 09:44:13 AM

Previous topic - Next topic

0 Members and 2 Guests are viewing this topic.

Nepster

Bitbucket: https://bitbucket.org/namida42/neolemmixplayer/issues/4/add-more-functions-to-level-list-window

Currently the Level List Window just lists the terrain/object number and their location. I suggest adding the follwing functions to it:
1) Double-click on the row of a terrain piece/object selects this piece in the editor. If the piece is outside of the current visible screen, but (at least partially) inside the level, the editor jumps to the selected piece.
2) Right-click on the row of a terrain piece/object deletes the piece (after confirmation).

Reason: Sometimes it can be hard to select a specific terrain piece if lots of other pieces are nearby with overlapping rectangular box. Here the Level List Window could help to select this terrain piece, respectively to delete it.

namida

Why double-click to select it rather than just click? In regards to right-click, if I can figure out how to do so, I think it'd make more sense for it to bring a popup menu offering options, one of which could indeed be delete.

I'm open to adding this kind of functionality, but I'd like to hear more from people to see what opinions there are on exactly what should be added.
My projects
2D Lemmings: NeoLemmix (engine) | Lemmings Plus Series (level packs) | Doomsday Lemmings (level pack)
3D Lemmings: Loap (engine) | L3DEdit (level / graphics editor) | L3DUtils (replay / etc utility) | Lemmings Plus 3D (level pack)
Non-Lemmings: Commander Keen: Galaxy Reimagined (a Commander Keen fangame)

ccexplore

In the original Lemmix editor, pressing spacebar on the keyboard after clicking on something in that list will in fact select the piece in the editor.  (And no, you have to ask Eric why he designed it in this decidedly hard to discover way, rather than just select it on click like one would expect.  I certainly didn't know about it until I basically made a similar complain to him somewhere here on the forums a few years ago. :P)

Nepster

Quote from: namida on February 18, 2016, 10:11:04 PM
Why double-click to select it rather than just click?
You need to scroll through the list to get the pieces with higher index number, which selects a great number of terrain pieces. If they were selected all the time and the screen would jump to them, I would find this rather annoying. Thus the proposed double-click.

Quote from: namida on February 18, 2016, 10:11:04 PM
In regards to right-click, if I can figure out how to do so, I think it'd make more sense for it to bring a popup menu offering options, one of which could indeed be delete.

I'm open to adding this kind of functionality, but I'd like to hear more from people to see what opinions there are on exactly what should be added.
If others want more options, that is fine with me. I care just about deleting, because everything else can be achieved by selection (via double-click in the level list) and then the usual options in the inspector window.

Quote from: ccexplore on February 18, 2016, 10:24:16 PM
In the original Lemmix editor, pressing spacebar on the keyboard after clicking on something in that list will in fact select the piece in the editor.
Thanks, didn't know that. This reminds me of the other hotkeys that I discovered only recently like "Insert" to add a terrain piece or "T" resp. "O" to select all terrain pieces resp. objects.

Simon

Quote from: Nepster on February 18, 2016, 10:37:19 PM
You need to scroll through the list to get the pieces with higher index number, which selects a great number of terrain pieces. If they were selected all the time and the screen would jump to them, I would find this rather annoying. Thus the proposed double-click.

Situation: We have two problematic components, A and B. Now B depends on A, and we want to solve the problem in B. The obvious solution for B triggers the problem in A more often. So, the proposal comes up to keep A as it is, and implement a workaround in B.

My proposal: Fix the list first! Give the list a scrollbar, or let the mouse wheel scroll the list without selecting pieces along the way. Implement any mechanism that doens't highlight unwanted pieces.

-- Simon

namida

Mouse wheel scroll is supported. There's no scrollbar, but it should be easy enough to add one.
My projects
2D Lemmings: NeoLemmix (engine) | Lemmings Plus Series (level packs) | Doomsday Lemmings (level pack)
3D Lemmings: Loap (engine) | L3DEdit (level / graphics editor) | L3DUtils (replay / etc utility) | Lemmings Plus 3D (level pack)
Non-Lemmings: Commander Keen: Galaxy Reimagined (a Commander Keen fangame)

Simon

Quote from: namida on February 18, 2016, 11:10:28 PM
Mouse wheel scroll is supported.

"Supported" in the current version means: When you move the mouse wheel up/down by 1 notch, then the previous/next entry in the list is highlighted.

There are two problems here:

  • It highlights an entry. This violates my proposal from the previous post -- I admit that I worded it unclearly, and improved on it.
  • Scrolling by 1 entry per notch is too slow. Comfortable mouse wheel scroll speed is about 5 times as fast, or maybe even faster in large levels. Nepster has no qualms putting 1,000 pieces into a level.
Furthermore, "Level list window" is a misnomer. It's a tile list. There is not a single level listed in the list. :>

-- Simon

namida

It wouldn't appear I can do much about the mouse wheel moving selection thing; it appears to be an inherent trait of the control used to make that window. So I'd have to rewrite it using a different control - which may be doable, since it isn't a very complex window.
My projects
2D Lemmings: NeoLemmix (engine) | Lemmings Plus Series (level packs) | Doomsday Lemmings (level pack)
3D Lemmings: Loap (engine) | L3DEdit (level / graphics editor) | L3DUtils (replay / etc utility) | Lemmings Plus 3D (level pack)
Non-Lemmings: Commander Keen: Galaxy Reimagined (a Commander Keen fangame)

namida

I've done rewriting using a different control. At the moment though, it's purely a list - no functions whatsoever (doesn't even show what's selected in the main editor window). It does have a scrollbar, and scroll via scroll wheel without changing the selection.

Now would be a very good time to make suggestions about how you'd like this list to behave / be capable of. :)

Just for the record, it is perfectly possible for me to add buttons and/or a dropdown menu, etc, to this dialog.

My projects
2D Lemmings: NeoLemmix (engine) | Lemmings Plus Series (level packs) | Doomsday Lemmings (level pack)
3D Lemmings: Loap (engine) | L3DEdit (level / graphics editor) | L3DUtils (replay / etc utility) | Lemmings Plus 3D (level pack)
Non-Lemmings: Commander Keen: Galaxy Reimagined (a Commander Keen fangame)

mobius

:thumbsup:

Honestly I don't currently use the list too much, except rarely to find a piece of terrain which is totally hidden behind other terrain. Which, when I do try this it usually doesn't work too well since... well finding a particular terrain piece just isn't easy to do this way. This could be solved by somehow having mini pics in the list somehow. But honestly I wouldn't care if this isn't implemented.

At the moment I can't think of a major use for the list except the above. And it doesn't really work very well for this purpose [for me anyway]

-would this be possible?: moving a selection up or down in the list; moves the object up or down in the z order*; that is, over top of other terrain pieces or beneath.

*am I using this term correctly? I can't remember where I even heard this.
everything by me: https://www.lemmingsforums.net/index.php?topic=5982.msg96035#msg96035

"Not knowing how near the truth is, we seek it far away."
-Hakuin Ekaku

"I have seen a heap of trouble in my life, and most of it has never come to pass" - Mark Twain


IchoTolot

Maybe add the function that you can directly change the numbers here
+ as möbius said change the ranking of the list (which I consider the most important one)

namida

Finally did a bit more work on this. Selecting things here now selects them in the main editor window, and vice versa. Aside from this it still does nothing - so pretty much, minus the hidden hotkey stuff, it does exactly what the old one did too, but is written in a way that makes it much easier to add stuff to.

I'll probably include it as it is now, with no further changes, in the next editor update, just so that we have a chance to make sure the new list really is working properly in an actual usage environment (I'm not the best to test this myself - of course I've done some testing, but in real-world situations I don't tend to use the level list much, so I'd like to hear reports from people who do). Then, once we know the basic functionality is stable, I can get around to weighing up the suggestions here and implementing some of them.
My projects
2D Lemmings: NeoLemmix (engine) | Lemmings Plus Series (level packs) | Doomsday Lemmings (level pack)
3D Lemmings: Loap (engine) | L3DEdit (level / graphics editor) | L3DUtils (replay / etc utility) | Lemmings Plus 3D (level pack)
Non-Lemmings: Commander Keen: Galaxy Reimagined (a Commander Keen fangame)