Note: To undock a window grab it by some of it's 'dead space', To dock a window hold down the ctrl key at the location you want it to be. Optionally you can also lock the configuration (from the gui menu) to prevent accidental unlocking.

There are also many small features / tweaks, like:
improved scroll bar behavior
Part bin appearance tweaks (allows for a much smaller bin width and horizontal orientation)
And may of the smaller feature requests made in the 1.4b forum thread.

* I really hoped the LMB click somewhere where there are no bricks would unselect all.
* I find it odd that the access to the Color, Parts and source window is somehow hidden in the contextual main menu you get only by the "Go main menu".
* I wish the Edit, About, ... had a mirror in the menu bar by default, not forcing me to dive into the "Menubar config..."
* I'm fine with the floating windows following your cursor immediately but the need to press STRG to dock them was unexpected.
* I love the transparent arrows in the brick categories
* I wish the "Small menu font" setting would also apply to the Menubar and the status bar itself
* I expected that I would be able to resort the order of brick sequence in the source window by drag'n'drop.
* I wish a single or double click in the color history bar would not only change the color in the part bin, but also in the selection, making a cursor shift+click to the "Use current color" box obsolete ... just to speed up building.

Quote:* I really hoped the LMB click somewhere where there are no bricks would unselect all.

Initially that was my opinion too, but the way it currently behaves avoids to accidentally deselect a complex multi-selection, so I came to like it as is.

Quote:* I find it odd that the access to the Color, Parts and source window is somehow hidden in the contextual main menu you get only by the "Go main menu".

Agreed, well hidden. Too well!

Quote:* but the need to press STRG to dock them was unexpected.

Thanks for the tip Willy, dunno if I would have found it on myself! Just had to figure out that "STRG" was CTRL key

Otherwise... I guess this was an already existing feature, but I just discovered the split screen feature and swap to unsplit using space bar. Really great stuff, but I also foung a big bug: when I am in full scren mode, the mouse focus remains on the lower right split screen area (except if the full screen view is a zoom of the lower right pane, in this case it works normally).

Willy Tschager Wrote:I really hoped the LMB click somewhere where there are no bricks would deselect all.

I'm considering dropping the current left mouse button handling to make room for multiselect. This also means a left click anywhere would reset the selection unless you hold down ctrl. But I also agree with Philio about the loosing your seleciton by mistake. So I'm looking for a way to keep both methods open.

Willy Tschager Wrote:I find it odd that the access to the Color, Parts and source window is somehow hidden in the contextual main menu you get only by the "Go main menu".

The toplevel partbin, etc menus aren't just specific to the part bin window, they are for the bin itself which the windows only visualize. I did consider adding open new part/color/source window items to the view menu but as that menu is actually the 'edit views' menu I thought it would be messy. Maybe I have to reorganize the view menu so it becomes a more generic view menu like in most programs.

Willy Tschager Wrote:I wish the Edit, About, ... had a mirror in the menu bar by default, not forcing me to dive into the "Menubar config..."

I guess it's a personal thing as I initially intended not having a menu bar at all as the application is context driven menu wise (e.g. a right click in the edit edit area while no selection is active will open the edit menu and when a selection is active it will open the selection menu.).

Willy Tschager Wrote:I'm fine with the floating windows following your cursor immediately but the need to press STRG to dock them was unexpected.

Sorry, I forgot to mention this The first versions used ctrl to 'flip' the state (undock while docked, dock while undocked). But I found it to behave very annoying while moving a docked window around.

Willy Tschager Wrote:I wish the "Small menu font" setting would also apply to the Menubar and the status bar itself

It actually does scale but the icons keep it from getting smaller. Maybe I'll add a second set of icons for use with the smaller menus.

Willy Tschager Wrote:I expected that I would be able to resort the order of brick sequence in the source window by drag'n'drop.

You mean while dragging form edit area to the source window? You are right it should reset the position and start a source insert while inside a source window. I will add it in the next version. In the meantime dragging inside the source window itself does reorder the lines (in selection order) even if you drop it at the same place.

Willy Tschager Wrote:I wish a single or double click in the color history bar would not only change the color in the part bin, but also in the selection, making a cursor shift+click to the "Use current color" box obsolete ... just to speed up building.

This would break the working color concept as you will never be able to just change the working color (in order to add a new part) while a selection is active. I could however add a ctrl+click in order to apply it to the selection (dbl click might be a problem as the fist click might change the color below the cursor) .

Philippe Hurbain Wrote:I guess this was an already existing feature, but I just discovered the split screen feature and swap to unsplit using space bar. Really great stuff, but I also foung a big bug: when I am in full scren mode, the mouse focus remains on the lower right split screen area (except if the full screen view is a zoom of the lower right pane, in this case it works normally).

The zoom feature is present in 1.2 and up, but you are right I broke it while working the docking stuff in. It's an easy fix though.

Willy Tschager Wrote:I find it odd that the access to the Color, Parts and source window is somehow hidden in the contextual main menu you get only by the "Go main menu".

The toplevel partbin, etc menus aren't just specific to the part bin window, they are for the bin itself which the windows only visualize. I did consider adding open new part/color/source window items to the view menu but as that menu is actually the 'edit views' menu I thought it would be messy. Maybe I have to reorganize the view menu so it becomes a more generic view menu like in most programs.

Agree.

Roland Melkert Wrote:

Willy Tschager Wrote:I wish a single or double click in the color history bar would not only change the color in the part bin, but also in the selection, making a cursor shift+click to the "Use current color" box obsolete ... just to speed up building.

This would break the working color concept as you will never be able to just change the working color (in order to add a new part) while a selection is active. I could however add a ctrl+click in order to apply it to the selection (dbl click might be a problem as the fist click might change the color below the cursor) .

This is not just a new version of one editor. This is the first ldraw editor on the world(*) which knows to open a model already edited in another SW like LPub and do not mess it. All comments stay OK and at the correct place, no lines are reordered, no meta information is lost. This is great result, great move forward in the world of ldraw editors. Congratulations, Roland, and many thanks again.

I also thought about improvements (listed below) but I must say the above is the main feature. So my wish #1 is "do not break this functionality, please"

More ideas/wishes:

Source window:

* I'd prefer if a double-click on line "0 STEP" does "Go to that STEP"
* also, it would be nice to have a number of step shown, for example an icon at the beginning of the line (i.e. white ellipsis with a step number)
* an indicator/icon showing the piece on this line is hidden
* a hot key with a function scrolling the source window at the position of the current step (of current (sub)model)
* highlight the current step in the source window (lighter background etc.)
* double click on a submodel reference line should open that submodel
* double click breaks the selection which is annoying - can you distinguish between click and double click so double click does not do "click" action?
* ROTSTEP support: double click opening a subwindow where one can rotate the model and a radio-button "absolute/relative turn".

More advanced - for next versions:

* "color arrows hot keys": using 'p' in move mode one can see a cross of arrows and the "toolbox arrow" in the third direction. I wish those arrows were colored (red, green blue) and there were hotkeys for move in red, green and blue directions. This speeds up the final positioning of the brick. These keys should work regardless of the mode (move/rotation), CTRL+those keys for rotations around those color arrows.

* local grid ('o' key) improvement: local grid is a big help in many cases but it works only for a center of brick and default direction. The great improvement would be to be able to set local grid to place+direction of defined special points, like points of snap. For example a side stud of 'headlight brick', rotation/snap point of hinges etc.
* next question would be how to specify the same for the other ("placed") piece. But I do not have any idea how the UI should look like for that.

Milan Vančura Wrote:All comments stay OK and at the correct place, no lines are reordered, no meta information is lost

Only lines you actually changed during editing will be reformatted all others will use the cached original line string. So you might loose (some) indenting etc on type 1 lines, although I'm considering making improvements on that front too

And a second side note: the source window currently uses separate formatting (more efficient for OpenGL prepping) code so it will format all lines uniformly (indenting wise etc) but only for display purposes.

Milan Vančura Wrote:* I'd prefer if a double-click on line "0 STEP" does "Go to that STEP"
* double click on a submodel reference line should open that submodel
* double click breaks the selection which is annoying - can you distinguish between click and double click so double click does not do "click" action?

I'll implement this, I've been thinking to drop the current double click to open props anyway as it contradicts the 3D double click behavior.

Milan Vančura Wrote:* also, it would be nice to have a number of step shown, for example an icon at the beginning of the line (i.e. white ellipsis with a step number)
* an indicator/icon showing the piece on this line is hiddenl

I was thinking about adding icons to indicate grouping/hiding but thought it would take up to much space like the col/exp indent does while no submodels are used. I could however gray out hidden lines.

Milan Vančura Wrote:* a hot key with a function scrolling the source window at the position of the current step (of current (sub)model)

'Scroll to selection', and 'follow selection' will be available in Alpha 2.

I was thinking about adding an option to limit the rendered source to the 'current step' or 'up to current step'.

Milan Vančura Wrote:* ROTSTEP support: double click opening a subwindow where one can rotate the model and a radio-button "absolute/relative turn".

Once things are a bit more stable/finished I was planning to fully support some thirdparty meta highlighting and property wise. First on the list are the LPub ones.

Milan Vančura Wrote:* "color arrows hot keys": using 'p' in move mode one can see a cross of arrows and the "toolbox arrow" in the third direction. I wish those arrows were colored (red, green blue) and there were hotkeys for move in red, green and blue directions. This speeds up the final positioning of the brick. These keys should work regardless of the mode (move/rotation), CTRL+those keys for rotations around those color arrows.

New in 1.5 is the option to do keyboard move's while the pin is in rotation mode by using ctrl+arrows. You can also disable the projection mapping so up/down is always the y-axis etc. I like the color coding suggestion might take that up in a future version.

Milan Vančura Wrote:* local grid ('o' key) improvement: local grid is a big help in many cases but it works only for a center of brick and default direction. The great improvement would be to be able to set local grid to place+direction of defined special points, like points of snap. For example a side stud of 'headlight brick', rotation/snap point of hinges etc.
* next question would be how to specify the same for the other ("placed") piece. But I do not have any idea how the UI should look like for that.

Yes using the snap info pos/ori would be nice to have indeed, but like you say it's difficult to implement gui (indication) wise. Although I'm thinking tab key for controlling it would probably work.

Thank you for your answer, Roland. I'm looking forward for next Alpha.

Roland Melkert Wrote:

Milan Vančura Wrote:* also, it would be nice to have a number of step shown, for example an icon at the beginning of the line (i.e. white ellipsis with a step number)
* an indicator/icon showing the piece on this line is hiddenl

I was thinking about adding icons to indicate grouping/hiding but thought it would take up to much space like the col/exp indent does while no submodels are used. I could however gray out hidden lines.

You're right about hidden parts: gray out is better then an icon. If you change the color of that line text only, it may be safely combined with a different background indicating current step.

For step number: I think that's safe to add an icon there because you can use the column for "plus" indicator on the left. It cannot be that the same line is both a step and a submodel reference.

Roland Melkert Wrote:'Scroll to selection', and 'follow selection' will be available in Alpha 2.

Features about selection are nice but the same for steps will be very handy. Imagine: one presses PgDown, new step is shown in 3D area, the source windows scrolls down and the new current step is highlighted. Great, isn't it?

Roland Melkert Wrote:I was thinking about adding an option to limit the rendered source to the 'current step' or 'up to current step'.

This looks too intrusive for me. I always want to be able to see the whole model, for example to be able to move parts to another step, even forward. I believe it would be enough if lines of the current step had different color of background and there was a hotkey to scroll the source window to show the current step. And another to start the automatic mode 'follow the current step' - as discussed above.

Roland Melkert Wrote:Once things are a bit more stable/finished I was planning to fully support some thirdparty meta highlighting and property wise. First on the list are the LPub ones.

Oh, that's not an easy job. I was surprised how many meta commands LPub uses... Great you are brave enough to plan such a work

Roland Melkert Wrote:New in 1.5 is the option to do keyboard move's while the pin is in rotation mode by using ctrl+arrows. You can also disable the projection mapping so up/down is always the y-axis etc. I like the color coding suggestion might take that up in a future version.

Thanks for a tip, it really works My idea adds two point to that: firstly the visual control: no more doubt about what's the left-right direction and what's the up-down one. And secondly my idea adds a chance to work in all three dimensions at the same time. That's very handy when you position new part in "non-standard way" or part-snapping data is missing or too many parts are around.

Roland Melkert Wrote:Yes using the snap info pos/ori would be nice to have indeed, but like you say it's difficult to implement gui (indication) wise.

I know. I just wanted to support you, to show you it's not only you who finds this feature useful

Milan Vančura Wrote:Do you have a full list of what's new in Alpha 2? (So I can test everything.)

Full list of changes is always in the changeLog.txt file in the docs folder, the Alpha 2 section is this:

Code:

--==1.5 Alpha 2 (26-05-2015)==--
Fixed:
- [Misc] Fixed (minor) memory leaks after playing around with valgrind.
- [PartBin] Fixed major memory leaks caused by continuous re-rendering of overview (mpd) groep items.
- [PartBin] Find selection (again) no longer crashes the application.
- [SourceWin] Removed the extra space between '//' and text for the comment meta's.
- [SourceWin] Moving lines from one path to another now acts like expected.
- [SourceWin] Moving groups around will now automatically ungroup things ending up in a different subfile in order to prevent group file io problems.
- [Editing] Zooming a multi-view window using the spacebar now again works like it should.
- [Editing] path/spring auto group handling no longer causes all kinds of problems when using multiple dynamic parts.
- [Editing] Workpart insertion now always uses the 'rest' properties of the item to be inserted while rendering the to be added part. This was noticeable the most while adding path points.
- [Editing] Path/spring content should now regenerate correctly after all undo operations.
- [Editing] ctrl+home will now correctly use any group center settings.
- [Springs] Spring point and anchors no longer fail to render the editing pin while selected. This also solves them misbehaving while moving start/end groups around.
- [Examples] Corrected the misaligned front bumper on the 5571 model.

Improved/Changed:
- [Menus] Reorganized the view menu to include the new part/color/source window items and moved the old view content to a new 'editing view' submenu.
- [Menus] Toggle items can now be navigated to the preceding option value by using right mouse clicks.
- [Templates] Removed the spaces in the "elecCable 1Wide" and "elecCable 2Brick" template filenames.
- [ColorBin] ctrl+LBM on any of the history items will apply that color to the selection. ctrl+LBM on a wheel segment will do the same.
- [SourceWin] You can now start dragging selected lines after the last selection click without having to release it first.
- [SourceWin] A different menu will be opened depending on the click location.
- [SourceWin] Changed RMB/MMB behaviour to match editing window.
- [Editing] shift+LMB will now always only the current working part to the selected. It no longer acts different when a selection is active.
- [Paths] New path points will no longer be forced in front of the last one if there are no end caps present for the path or the path is looped.

Added:
- [LDraw] Added full support for using compressed library's (e.g complete.zip) without having to unpack them to disk first.
- [LDraw] (Color)configuration files can now be set relative to the LDraw search paths. This was needed for use combined with compressed libraries, but it also prevents having to change both the search and the color file configuration while e.g. swapping libraries.
- [HeaderDlg] Added a button to load the default author and license values.
- [SourceWin] Hot racking between the source and editing windows can now optionally be synchorinzed.
- [SourceWin] The selection can be kept into view by using one of the 'follow selection' options.
- [SourceWin] Added 'scroll to selection', 'expand all' and 'collapse all' items to the source window menu.
- [Editing] It is now possible to drag selected lines from the source window into the editing view to start manipulating their position. The other ways around (dragging the selection into the source window to change their source location) is now also possible.
- [Examples] Added 5541.mpd

Known issues and limitations:
- [LDraw] Scientific notation (e.g.. 1.323E12) is not supported in LDraw line content.
- [LDraw] LDraw files containing concave quads will render wrong as they are currently processed as if they are twisted.
- [Editing] During nesting mode some parts will be rendered at the wrong place while moving existing parts around, if those parts live in an sub model that's used more then once in the main model of the session. This is not a big issue because one set of the selection will be at the correct place, and your eye will be on them most of the time.
- [Scripting] For now only the type 1 LDraw line references can be manipulated, full access to the path/spring parts is pending.
- [Scripting] File changes to lua files will only be detected for the main script, if the script uses additional modules (include files) a manual reload will be required after changes to them.

press ctrl-V and click after the first/only line to select the destination

a pop-up window appears, press Discard button

=> segmentation fault

GUI problems:

subwindow placement is not intuitive: it depends on the order of releasing ctrl and LMB

the rule "clicking anywhere to the 'dead' zone of the subwindow unreleases that from the layout" makes annoying surprises
it's easy to click there accidentally and "whoooo!" - a subwindow flies freely over the main window now
=> I vote for a small graphical symbol to release the subwindow and then clicking to 'dead' area does nothing again

documentation, documentation, documentation
in general, both hotkeys and mouse behavior in LDCad are unusual, comparing to other GUI applications on the system so documentation is really needed. At the release date, please.
Two examples: how can I find the 'ctrl' trick to place subwindow? And 'ctrl-shift' trick to select continuous region of lines in src window?

a question: how can I work with a submodel of submodel, in the main model? 'Nested' mode breaks everything to parts and 'Normal' mode does not allow me to select that submodel of submodel.

1. What is the proper way to navigate up and down the model tree? What I mean is, how do I switch to a child model, then the child's child, then the parent again, and so on. Note there are a mix of MPD and LDR models in no particular order. When I try to Make This the Main Model I sometimes get a "This submodel is not part of a MPD" error.

2. How do I switch to latitude/longitude camera rotation? I thought you added this feature in a previous version.

3. How do I open the window with all the model info in text format? I saw that in your video but don't know how to enable it.

4. The middle mouse button!! In most 3D viewers this button changes the view in some way, for instance panning the camera. In your program it brings up the selection properties window. Can I bind this window to a different keyboard key like in other programs?

5. If you could indent the Change Current Model window to indicate how sub-models are nested, that would be great.

Thanks!

[edit]

Some comments about version 1.5:

1. The program will not display Datsville. All I get are some skinny red crosses.

2. Could you add a tabbed interface to show all currently opened documents? Right now I am not sure how manage these documents. How do I tell which are open and which are not?

Milan Vančura Wrote:source window does not show the right end of lines

Currently the width is hardcoded as calculating the exact width is 'expensive' while not really useful as you will use the property dialog for editing the line anyway. So I'm still thinking about the cons/pros of it, if I decide against it I will set a wider (configurable) value though.

Milan Vančura Wrote:application crashes after ctrl-X ctrl-V

This happens as a result of the ctrl+v nomatter if you use it in the sourcewin or 3d win. Thanks for finding this I'll fix it for the next version (which I was about to release yesterday ).

Milan Vančura Wrote:subwindow placement is not intuitive: it depends on the order of releasing ctrl and LMB
the rule "clicking anywhere to the 'dead' zone of the subwindow unreleases that from the layout" makes annoying surprises
it's easy to click there accidentally and "whoooo!" - a subwindow flies freely over the main window now
=> I vote for a small graphical symbol to release the subwindow and then clicking to 'dead' area does nothing again

I've struggled with this issue myself. The first version did use ctrl like 'normal' windows software (to keep it detached only during drag) but it resulting in awful chicken and egg behavior while dragging without it combined with an already docked panel. Having to press ctrl to dock imho made it way more workable. I also sometimes detached windows accidentally which is why i added the lock windows option in the gui menu. The reason for not having a header or something while the windows are docked is because I didn't want to waste screen space on them but I might reconsider that in the future.

Milan Vančura Wrote:documentation, documentation, documentation in general, both hotkeys and mouse behavior in LDCad are unusual, comparing to other GUI applications on the system so documentation is really needed. At the release date, please.

I'm working on documentation on and off, but in my experience people just won't read it So I'm only working on it when I don't have the time to do large chunks of 'real' work on LDCad. But once 1.5 goes beta I will at least add things like the docking tricks to the FAQ and update the hot key page. General working with the source window will get it's own documentation page somewhere in the future. I'm also still hoping someone with more grasp on the English language might write a tutorial or something from an users perspective.

Milan Vančura Wrote:how can I work with a submodel of submodel, in the main model? 'Nested' mode breaks everything to parts and 'Normal' mode does not allow me to select that submodel of submodel.

You switch to the model's direct parent editing session (using the 'mpd' or models part bin group) or exclude it during nesting in the top level model. This is done by selecting any part/source line of the sub sub model and pressing 'e' during nesting mode. This will make the sub sub model a nesting 'end node'. Exclusion options are present in the editing selection menu.

Thanks for your (detailed) feedback Milan.

Michael Horvath Wrote:What is the proper way to navigate up and down the model tree? What I mean is, how do I switch to a child model, then the child's child, then the parent again, and so on. Note there are a mix of MPD and LDR models in no particular order. When I try to Make This the Main Model I sometimes get a "This submodel is not part of a MPD" error.

In a multi file model you best off using the 'all models' part bin group instead of the 'mpd / file content' part bin group. the make main model option is only usable on mpd's as it moves the current model to the top of the mpd file making it the 'entry' point for renders. It is not a navigation feature. The session list at the top right is depreciated and I probably will completely remove it at some point in favor of something else as I was never happy with it myself.

Michael Horvath Wrote:How do I switch to latitude/longitude camera rotation? I thought you added this feature in a previous version.

In the compass you'll see the text 'TBL' (trackball) if you click it it changes to SPM which is the spin camera mode.

Michael Horvath Wrote:How do I open the window with all the model info in text format? I saw that in your video but don't know how to enable it.

I think you mean the 1.5 source window? I assume (given your below edited text) you found that yourself . You open it from the view menu.

Michael Horvath Wrote:The middle mouse button!! In most 3D viewers this button changes the view in some way, for instance panning the camera. In your program it brings up the selection properties window. Can I bind this window to a different keyboard key like in other programs?

I might change left mouse button behavior in a future version and the middle mouse button might get reassigned at such a time too. 1.6 will introduce hot key remapping, but I'm not sure if that will include the mouse buttons I could make the middle one's function optional though.

Michael Horvath Wrote:If you could indent the Change Current Model window to indicate how sub-models are nested, that would be great.

Like I wrote above the whole menu probably gets replaced in a future version. I'm not sure in what way though.

Michael Horvath Wrote:The program (1.5 a2) will not display Datsville. All I get are some skinny red crosses.

There was an Alpha 2 bug which broke relative model loading as a result of the new zipped library feature, it's fixed in my Alpha 3 code.

Michael Horvath Wrote:Could you add a tabbed interface to show all currently opened documents? Right now I am not sure how manage these documents. How do I tell which are open and which are not?

The part bin session groups are designed for switching between models. Technically all LDraw files used are always open in LDCad the only difference with the ones listed in the top right list is they have additional editing 'session' information. I might add some additional session part bin groups in the future to help completely replace the list in the future. But like I wrote I'm not yet sure how and when

Milan Vančura Wrote:how can I work with a submodel of submodel, in the main model? 'Nested' mode breaks everything to parts and 'Normal' mode does not allow me to select that submodel of submodel.

You switch to the model's direct parent editing session (using the 'mpd' or models part bin group) or exclude it during nesting in the top level model. This is done by selecting any part/source line of the sub sub model and pressing 'e' during nesting mode. This will make the sub sub model a nesting 'end node'. Exclusion options are present in the editing selection menu.

Many thanks, Roland. I have never understand the term 'exclude from nested list' and it's _that_ what I need

Unfortunately, I've found new issue as I was working in Nested mode:

rendering of 71128.dat in nested mode

put some bricks to the model

add new submodel with some bricks and 71128.dat (Chrome Silver Reflector)

go to the main model in Normal mode

place mouse cursor over the submodel: lines of its parts turn to magenta color as usual - no exception for 71128.dat

switch to the Nested mode

other bricks in the submodel work as expected but 71128.dat lines do not change the color any longer - neither to magenta, while mouse cursor is over that, nor cyan, when the part is selected

Milan Vančura Wrote:source window does not show the right end of lines

...So I'm still thinking about the cons/pros of it,...

For me, the right end of line is very important because this is where the part number or submodel name is written. In fact, I wanted to suggest you the idea of "the matrix compression" feature: an option that those six numbers of transformation matrix would be hidden behind some icon or whatever. This makes each line much shorter and one can see both the color and part number at the same time - the items needed to identify the part.

Roland Melkert Wrote:

Milan Vančura Wrote:subwindow placement:...I vote for a small graphical symbol to release the subwindow...

...I didn't want to waste screen space on them but I might reconsider that in the future.

I made a little research about that, already. There are not so many types of subwindows: part bin and color bin have a free space at the right of "line" of Tab names (1..6) and source window has a free space at the bottom right corner, between scrollbars. What do you think about that?

Roland Melkert Wrote:But once 1.5 goes beta I will at least add things like the docking tricks to the FAQ and update the hot key page.

Great. The list of hot-keys is really really needed.

Roland Melkert Wrote:I'm also still hoping someone with more grasp on the English language might write a tutorial or something from an users perspective.

The best help for me we was a set of tutorial videos. I'd be glad if I could promise to help you with them but I'm busy with another ldraw project - I hope I will be able to announce it soon - and ask you for a cooperation then

Milan Vančura Wrote:For me, the right end of line is very important because this is where the part number or submodel name is written. In fact, I wanted to suggest you the idea of "the matrix compression" feature: an option that those six numbers of transformation matrix would be hidden behind some icon or whatever. This makes each line much shorter and one can see both the color and part number at the same time - the items needed to identify the part.

Great idea, I will add a 'short notation' option to the source window. For type 1 lines it will leave out the pos+3x3 have to review if other line types need some alternatives too.

Milan Vančura Wrote:I made a little research about that, already. There are not so many types of subwindows: part bin and color bin have a free space at the right of "line" of Tab names (1..6) and source window has a free space at the bottom right corner, between scrollbars. What do you think about that?

It's an interesting idea but if I add a hot spot I rather have it at the same place for any kind of window (as more window kinds might be added in the future). Maybe I'll make it an option to render the window top bar (like while detached) while docked. If that option is enabled the deadspace will not be used. If so this will be in the next next version tough.

Milan Vančura Wrote:The best help for me we was a set of tutorial videos. I'd be glad if I could promise to help you with them but I'm busy with another ldraw project - I hope I will be able to announce it soon - and ask you for a cooperation then

Is there a command to reload a model from disk? For instance, I may be editing a sub-model in one editor window, and want to reload the parent model in another editor window reflecting the modifications.

Michael Horvath Wrote:Is there a command to reload a model from disk? For instance, I may be editing a sub-model in one editor window, and want to reload the parent model in another editor window reflecting the modifications.

I'm currently working on this feature so it should be in the next version (ether Alpha 4 or Beta 1). This includes reloading from disk in a undo kind of way and reloading files resulting from external changes.

Milan Vančura Wrote:* "color arrows hot keys": using 'p' in move mode one can see a cross of arrows and the "toolbox arrow" in the third direction. I wish those arrows were colored (red, green blue) and there were hotkeys for move in red, green and blue directions. This speeds up the final positioning of the brick. These keys should work regardless of the mode (move/rotation), CTRL+those keys for rotations around those color arrows.

New in 1.5 is the option to do keyboard move's while the pin is in rotation mode by using ctrl+arrows. You can also disable the projection mapping so up/down is always the y-axis etc. I like the color coding suggestion might take that up in a future version.

Thanks for your input.

Will this also work the other way around, i.e. using CTRL+arrow keys for rotation when in move mode? That's something I'm really missing in the current version.
And can you add a hotkey for resetting the editing plane back to absolute space? Right now the only way I see to do that is to click through to some sub-menu, which is kind of annoying.

Apart from that, thanks for your great work, I really like using LDCad.

Niklas Buchmann Wrote:Will this also work the other way around, i.e. using CTRL+arrow keys for rotation when in move mode? That's something I'm really missing in the current version.

Yes in move mode ctrl+arrows will rotate, and in selection center mode it will do a normal move.

Niklas Buchmann Wrote:And can you add a hotkey for resetting the editing plane back to absolute space? Right now the only way I see to do that is to click through to some sub-menu, which is kind of annoying.

Currentyl the keyboard way to reset the grid is esc to deselect everything followed by 'o' to reset the grid. I didn't assign a key (e.g. shift+o) to this as I'm running out of logical key combinations.

Once hot key reassignment is in place (1.6) you could assign it yourself though. Or maybe I'll add shift+o given I can't think of any future feature needing a 'o' .

You're welcome! I hope to get some time next week to download this latest version and have a play. I will say that I very much liked what I saw in the videos.

One question though: it looks like the source viewer treats each line as atomic - an object to be shifted around to where it needs to go, but not changed at all (except possibly indenting). Do/will we have the ability to adjust position/rotation values from the source viewer?

Owen Dive Wrote:One question though: it looks like the source viewer treats each line as atomic - an object to be shifted around to where it needs to go, but not changed at all (except possibly indenting). Do/will we have the ability to adjust position/rotation values from the source viewer?

Yes the lines inside the source window are managed as single objects (subclasses) not plain text. You can edit most common ones using a dedicated property dialog and I do plan to add more and more overtime. The prop dlg is opend by pressing enter (or MMB in alpha 2) while a line is selected.

All type 0 lines have a specialized dialog or will at least use the comment property dialog.

Type 1 lines use the same dialog you get when you click on the info panel in the 3d area. They represent the whole selection but you actually set the first reference's matrix (in abs coordinates if nesting is on).

Currently part level (2..5) lines don't have editors at all but I might add some of them as snap info editing is pending for 1.5.

Owen Dive Wrote:One question though: it looks like the source viewer treats each line as atomic - an object to be shifted around to where it needs to go, but not changed at all (except possibly indenting). Do/will we have the ability to adjust position/rotation values from the source viewer?

...
The prop dlg is opend by pressing enter (or MMB in alpha 2) while a line is selected.
...

When I split the editor (either horizontal, vertical or 4-way) and I swap to full screen (using the menu or spacebar), only one of the editor windows is behaving correctly. So, for example, when I swap to full-screen from the left window, everything works fine, but when I swap to full-screen from the other window, the editor behaves very weird (I can't rotate the camera, new bricks follow the mouse pointer etc. etc.)

You should maybe try it out yourself, it's a bit difficult to explain.

It also contain (experimental) compressed library support. So you can use e.g. complete.zip or ldrawunf.zip without having to unpack them first. Currently this can only be configured after the first normal ldraw location selection at first startup.

So I know I said I'd have a go next week, but I got impatient!
I've got a number of comments, ranging from bug reports, thru deliberate-but-unexpected behaviours (i.e. it might be a bug, or it might be done it that way for a reason), to feature requests.

* When creating a new model, if you check the 'Sync with filename' box in the header dialog that comes up, it's not actually populated in the source view until you open the header dialog box again and click OK. Even if you save the model, it's not in the .ldr file either.

* For a flex part like a rubber band, the source view doesn't scroll to show the whole line.

* Some indication in the source view would be nice if the part is hidden. Though please don't go to the extent of MLCad and not show the whole line. Maybe just grey out the text or something.

* If you hover over a toolbar icon, you get a text description of that function in the Status bar. It would be nice if that description also included the keyboard shortcut (if it exists), like the menu does. I accept that this might be tricky to implement with the configurable shortcut keys that is coming.

* Selecting multiple items in the source view doesn't always work like I would expect.

Select separate items. Uses CTRL, just like I expect.

Select contiguous range. Uses CTRL + SHIFT, when I expect just SHIFT.

Range is always expanding, rather than being relative to the first item selected. For example, suppose there were 10 lines in the ldr file. If I select line 3 and hold down SHIFT (or in this application, CTRL + SHIFT) and then click on line 5, I expect to see lines 3, 4, and 5 selected (and this is indeed what happens). If I then click line 9, I expect the selection to grow to include lines 6, 7, 8, and 9 (again, this is what happens). If I then click line 6, I expect the selection to drop to just 3, 4, 5, and 6. If I then click line 2, I expect the selection to be lines 2 and 3. Instead, I've got lines 2-9 selected.

Selecting a part vs selecting the line in the source view: If I select a part on the model, the source view highlights, but if I want to use that as the start of a range selection I have to click it again - CTRL + SHIFT clicking a different line selects only the two lines, not all the ones in between.

If deselecting from a range of selected lines, I expect the behaviour to be symmetrical to selecting. Extending the earlier example, if I start with lines 2-9 selected, let go of SHIFT, and click on line 4, that line is deselected (like I would expect). If I then hold SHIFT again and click line 6, lines 5 and 6 are also deselected (just like for selecting things). But, if I click line 5 (which would have had no effect had I been selecting things), the line is now selected, and I any further clicks just grow the selection from line 5.

Owen Dive Wrote:When creating a new model, if you check the 'Sync with filename' box in the header dialog that comes up, it's not actually populated in the source view until you open the header dialog box again and click OK. Even if you save the model, it's not in the .ldr file either.

It seems to misbehave after the first save, which is technically a file rename. I'll fix it in the next version. It also needs some improvements combined with manual editing the single name tag.

Owen Dive Wrote:For a flex part like a rubber band, the source view doesn't scroll to show the whole line.

The horizontal scroll limit is hard coded at the moment. Improvements on this are pending.

Owen Dive Wrote:Some indication in the source view would be nice if the part is hidden.

I'm thinking about graying out but I'm not sure how to keep it different from comment lines besides just a different gray value.

Owen Dive Wrote:If you hover over a toolbar icon, you get a text description of that function in the Status bar. It would be nice if that description also included the keyboard shortcut (if it exists), like the menu does. I accept that this might be tricky to implement with the configurable shortcut keys that is coming.

Actually after the changes needed for hokey re-assignments are in place ti will be almost free. But I kinda decided to push the reasignemnt thing to 1.6 as it makes more sense combined with on of the 1.6 planned features (scripting extensions for so you can use macro's).

Owen Dive Wrote:Selecting multiple items in the source view doesn't always work like I would expect.

I think it mostly acts like I wanted it to, except for the deselect glitch. I use ctrl+shift as shift alone is already used for 'change workpart'. Also I thought it would be more consistent with the 3d selecting mechanics.

So currently a shift+ctrl will select or deselect everything between the clicked item and the previous one based on the selected state of that last one. So shif+ctrl after you selected something will select all in between them and shift+ctrl (should) after you last deselect something deselect all in between.

Owen Dive Wrote:Some indication in the source view would be nice if the part is hidden.

I'm thinking about graying out but I'm not sure how to keep it different from comment lines besides just a different gray value.

I could probably handle that - after all, hiding a part is just like commenting out a line of code!

Roland Melkert Wrote:

Owen Dive Wrote:Selecting multiple items in the source view doesn't always work like I would expect.

I think it mostly acts like I wanted it to, except for the deselect glitch. I use ctrl+shift as shift alone is already used for 'change workpart'. Also I thought it would be more consistent with the 3d selecting mechanics.

So currently a shift+ctrl will select or deselect everything between the clicked item and the previous one based on the selected state of that last one. So shif+ctrl after you selected something will select all in between them and shift+ctrl (should) after you last deselect something deselect all in between.

I just stumbled on something that can be considered as a bug (or at least it should trigger a warning message):
I created a model with some submodels, then I decided to make a submodel from that model. No problem, select all then use reorganize -> move to submodel. Saved the file, looked at source file... complete mess! the initial submodels were almost empty (only remained step metas), all the part were now dumped in the newly created submodel.
Then I realized (after some head scratching!) that when I selected everything to move to submodel I was stupidly in nested mode! So individual parts and not submodels were moved to the new submodel.

Fortunately LDCad was not closed so Undo made wonders

Side issue (is it?): the resulting file after my "nested mistake" was missing the parts of one copy of the submodel that was used twice.

...and a question: is there a way to import a model mpd inside another model mpd? I can of course use the mpd by reference, but I'd like to build a single, self contained mpd.

Philippe Hurbain Wrote:I just stumbled on something that can be considered as a bug (or at least it should trigger a warning message):
I created a model with some submodels, then I decided to make a submodel from that model. No problem, select all then use reorganize -> move to submodel. Saved the file, looked at source file... complete mess! the initial submodels were almost empty (only remained step metas), all the part were now dumped in the newly created submodel.
Then I realized (after some head scratching!) that when I selected everything to move to submodel I was stupidly in nested mode! So individual parts and not submodels were moved to the new submodel.

It's not a bug it's a feature

I'm not sure how a warning would be triggered though, as you usually want to move lines around even if they span multiple levels it's the main goal of the source window. I could however do a (nag) warning on just ctrl+a during nesting mode?

Philippe Hurbain Wrote:Side issue (is it?): the resulting file after my "nested mistake" was missing the parts of one copy of the submodel that was used twice.

This is also not a bug but more a shortcoming. The lines are moved and those submodels might be used multiple times but the lines them selves only exist once. I could probably add a warning for this though.

Philippe Hurbain Wrote:...and a question: is there a way to import a model mpd inside another model mpd? I can of course use the mpd by reference, but I'd like to build a single, self contained mpd.

Philippe Hurbain Wrote:More annoying: if I select everything (Ctrl+A) then "move to submodel", the steps are not selected, so they are not moved to submodel. I have to manually select all steps in source window.

ctrl+a in a editing view (or menu click) will only select visible things. ctrl+a in a source window will select all editable (so excluding e.g. 0 FILE) lines. Therefore you need to keep an eye on your mouse cursor before doing ctrl+a.

I can imagine that to be quite annoying. Can't you make it so, that when you select everything (ctrl+A) it also selects all the meta commands in between the first part and the last part? I can't imagine a case where you don't want to select all the meta-comments in between the parts.

Philippe Hurbain Wrote:OK, it works. Not wonderfully intuitive, but I see no better way!

Merlijn Wissink Wrote:I can imagine that to be quite annoying. Can't you make it so, that when you select everything (ctrl+A) it also selects all the meta commands in between the first part and the last part? I can't imagine a case where you don't want to select all the meta-comments in between the parts.

I've been struggling with this issue for some time. The way I currently see it: the 3D view is 'what you see is what you get', and the source window is the expert view.

This said using the ctrl+c will optionally preserve step meta's using the copy paste options dialog. I could add support for other/all metas to that setup.

This also brings me to another issue I'm currently not 100% happy about due to technical reasons I've chosen (for the moment) all selection operations are based on the order the lines were selected.

I'm posting this here although it's not strictly related to the 1.5 Alpha, but I noticed some bugs or inconsistent behaviours in LDCad 1.4 and was hoping that maybe you can them until the 1.5 release.

First, if you use the selectors from the select menu like "Same color" or "Same part", the selection is extended to all parts in groups containing a part that gets selected. This way it is often not possible to use this options for tasks like recoloring all red parts to blue, because any group containing a single part in the working color gets completely changed to the new color.

Then there is a (very) small bug in the task bin: Sometimes - and I haven't been able to find out under what circumstances exactly - the filter text display is not updated when switching between different part bin views with active filters. Nothing serious, but still a bug.
While I'm at filters, do you think it's possible a small list of one-click filter presets like Sergio did in SR 3d builder? I find that's something I'm missing a lot in LDCad. It wouldn't have to be long list, just somehing like a list of numbers from 1 to 16 to filter the dimensions of plates etc.

And do you think it would make sense to filter out aliases, moved parts and submodels (any part starting with = or ~, I think) in the list of search results in the part bin?

Niklas Buchmann Wrote:First, if you use the selectors from the select menu like "Same color" or "Same part", the selection is extended to all parts in groups containing a part that gets selected. This way it is often not possible to use this options for tasks like recoloring all red parts to blue, because any group containing a single part in the working color gets completely changed to the new color.

This is a tough one as the whole point of groups is to use multiple parts as if they where one. I do have something planned for a future version solving this though (group layers). But it will be in 1.6 at the earliest. In the meantime I advice to maximize sub model usage and keep grouping for things spread of multiple models.

Niklas Buchmann Wrote:Then there is a (very) small bug in the task bin: Sometimes - and I haven't been able to find out under what circumstances exactly - the filter text display is not updated when switching between different part bin views with active filters. Nothing serious, but still a bug.

I probably indirectly fixed this in 1.5 as the part bin code was partly rewritten to allow for multiple windows of them.

Niklas Buchmann Wrote:While I'm at filters, do you think it's possible a small list of one-click filter presets like Sergio did in SR 3d builder? I find that's something I'm missing a lot in LDCad. It wouldn't have to be long list, just somehing like a list of numbers from 1 to 16 to filter the dimensions of plates etc.

I could add some kind of filter template combo I'll see what I can do. In the mean time try to minimize using the generic search group as it indeed gives too much results unless you search for something specific. Instead use the category branch to limit things to e.g. panels to start with.

Niklas Buchmann Wrote:And do you think it would make sense to filter out aliases, moved parts and submodels (any part starting with = or ~, I think) in the list of search results in the part bin?

This is already possible using the filer dialog. You open it by clicking the filter text area. In it you'll find some include options at the right.

Niklas Buchmann Wrote:While I'm at filters, do you think it's possible a small list of one-click filter presets like Sergio did in SR 3d builder? I find that's something I'm missing a lot in LDCad. It wouldn't have to be long list, just somehing like a list of numbers from 1 to 16 to filter the dimensions of plates etc.

I could add some kind of filter template combo I'll see what I can do. In the mean time try to minimize using the generic search group as it indeed gives too much results unless you search for something specific. Instead use the category branch to limit things to e.g. panels to start with.

What I meant is this: Let's say I'm in the "normal plates" category and the filter is set to "8", showing me only eight-long plates. Now I need a twelve-long plate. What I have to do is click once to delete the filter, click again to create a new filter, enter "12" on the keyboard and press enter. In SR 3d builder this was one single click on the "12" button next to the filter/search input area.

One more thing I just remembered: When you open the filter dialog, the previously entered filter text is still in the input field so in order to enter a new text, you first have to delete the old text. I think it would be more comfortable if the text was selected by default so you can overwrite it or if it was deleted altogether.

Quote:

Niklas Buchmann Wrote:And do you think it would make sense to filter out aliases, moved parts and submodels (any part starting with = or ~, I think) in the list of search results in the part bin?

This is already possible using the filer dialog. You open it by clicking the filter text area. In it you'll find some include options at the right.

Niklas Buchmann Wrote:What I meant is this: Let's say I'm in the "normal plates" category and the filter is set to "8", showing me only eight-long plates. Now I need a twelve-long plate. What I have to do is click once to delete the filter, click again to create a new filter, enter "12" on the keyboard and press enter. In SR 3d builder this was one single click on the "12" button next to the filter/search input area.

I see but the 8/12 buttons is what I called templates. As in this case a template would be a filter preset you can reapply in someway (e.g. a button). I'll have to figure out how to add this without using (too much) bin space though.

Niklas Buchmann Wrote:When you open the filter dialog, the previously entered filter text is still in the input field so in order to enter a new text, you first have to delete the old text. I think it would be more comfortable if the text was selected by default so you can overwrite it or if it was deleted altogether.

Great idea I'll add it to the next 1.5 version. Alternatively, in the 1.5 version, you can now also press the esc key (while mouse is on the bin filter text) to reset the filter text.

Quote:Now I need a twelve-long plate. What I have to do is click once to delete the filter, click again to create a new filter, enter "12" on the keyboard and press enter.

Though the "length" buttons could be useful, your search can be simpler: put your mouse over the filter field (no click), hit Del to clear field if needed, then key in length (no enter). A tad more to do than with SR3D, but significantly more flexible.

Willy Tschager Wrote:The background of unofficial parts in the parts bin should be different from certified parts. Best would be if I could assign a color via Prefs > Search (library) paths ... > Current item properties

I really like this Idea, I'll try to add it in the first beta. Thanks for suggesting it Willy.

I made first tests and it looks nice: current step has a different bg in the Src window, hidden parts are grayed out, bugs I reported are fixed. (Or, better said - the one with scrollbar is worked around )

I have found two issues so far:

1. minor: changelog says there should be a step number shown at each "0 STEP" line in src window - but I do not see anything. Do I understand that correctly?

You mean it moved while opening the file so no editing done jet? I'm not able to reproduce that behavior. Was another model open before opening this one or was it the first one? Do you remember doing anything before or during the loading of the file? Did ctrl+z move it back?

Milan Vančura Wrote:changelog says there should be a step number shown at each "0 STEP" line in src window - but I do not see anything. Do I understand that correctly?

It's in the hint displayed at the bottom of the window.

Ah, yes, it's there. Couldn't you place it to the src line directly, please? It's a similar problem like with icons in the top menu: I feel like watching (vertical) tennis match: pointing eyes on mouse cursor at the top part of the screen, then on the hint line at the bottom, then back on the mouse cursor... And in the source window, it would be useful even more: one can scroll source file "to the step 13", for example. If you cannot see those number directly there, you can't do that.

It happened after editing another model and opening this one later. AFAIK, no editing of this model. But I cannot reproduce this bug now, even I try to simulate the same order of models opened etc. Same as with another bug I wanted to report you but I cannot reproduce it now either. So I agree to ignore this until/unless I can reproduce it.

Milan Vančura Wrote:Couldn't you place it to the src line directly, please? It's a similar problem like with icons in the top menu: I feel like watching (vertical) tennis match: pointing eyes on mouse cursor at the top part of the screen, then on the hint line at the bottom, then back on the mouse cursor... And in the source window, it would be useful even more: one can scroll source file "to the step 13", for example. If you cannot see those number directly there, you can't do that.

The hint in the statusbar started out to spare on OpenGL re-rendering but on modern cards this doesn't seem to be a real issue anymore. Maybe I'll add an optional 'real' hint system in a later version as I have some ideas on improving the windowing rendering system anyway. I'm not sure about displaying the step number in the source text it self as it isn't part of the step meta format. Although i do see your point so maybe it should use a different font or something, I'll have to think about it

Milan Vančura Wrote:It happened after editing another model and opening this one later. AFAIK, no editing of this model. But I cannot reproduce this bug now, even I try to simulate the same order of models opened etc. Same as with another bug I wanted to report you but I cannot reproduce it now either. So I agree to ignore this until/unless I can reproduce it.

Where you using the model nested before opening it on its own? I did a quick check on the source thinking 'how would it happen if I actually wanted it to happen' and the only way a line could move to another step is through the source window line moves or a 'move to step' operation both of which use the same core routine which basically replicates the line and marks the old one deleted (so it is still there for undo operations). As this a fairly complicated operation I don't see how it could happen own its own. This, of course, doesn't mean it can't happen as the program is getting ridiculously complicated / large

As you probably know, I announced our effort to maintain the whole SW-chain for making LDraw instructions. I also want to include LDCad to this chain. I know it is not open-source so it cannot be handled in the same way but I can make Linux packages of non-free SW as well, this is not a problem. What I need is to have a multi-user version: a configuration in /etc with an optional overlay in $HOME/.config/ldcad . Would be this possible for 1.5 ?
Of course, I'm open to discuss another solution, the above is a suggestion, nothing more

As you probably know, I announced our effort to maintain the whole SW-chain for making LDraw instructions. I also want to include LDCad to this chain. I know it is not open-source so it cannot be handled in the same way but I can make Linux packages of non-free SW as well, this is not a problem. What I need is to have a multi-user version: a configuration in /etc with an optional overlay in $HOME/.config/ldcad . Would be this possible for 1.5 ?
Of course, I'm open to discuss another solution, the above is a suggestion, nothing more

Nice project sort of a cross platform AIOI.

I would appreciate a package / packaging script very much. I've researched making Debian packages (I currently compile on Debian 7.5) but it seemed to be very 'complicated' for new users

LDCad can be used in a data/executable split way (the windows setup does it too) by using an LDCad.cfg besides the main executable. That file is readonly and dictates where the program get it's data (partbin files etc). For example the windows version setup writes this LDCad.cfg:

<userAppDataDir> maps to the value of the HOME env var in Linux but I've never really tested it though.
<dirSeeds> Points to where the clean starting data (zip) files are located. Those are synced with the target locations on every program start so if the location is user depended each will end up with its own set of files.

If needed I could add more location templates?

If the cfg file is not there stuff default to be looked/placed relative to the main exe (archive versions). The locations can also be abs if needed.

I'll add the format of LDCad.cfg to the technical documentation soon as I realized it's the only file currently missing explanation on my site.

Just playing around with the parts bin configuration files, and I've noticed a small bug. Not sure if it's been there since Alpha 1, but I don't remember reading anyone mentioning it.

When the part bin is wider than it is long, the header bits (tab numbers, filter status, etc) switch to the side. This is great. However, when in that configuration, when you hover over a different view number (to change views) the view name turns green, but the text doesn't change to show you the name of the view you're about to select (as it does when the header bits are on the top). You have to check the status bar at the bottom to see what your new view is going to be if you don't remember what you put there.

Owen Dive Wrote:When the part bin is wider than it is long, the header bits (tab numbers, filter status, etc) switch to the side. This is great. However, when in that configuration, when you hover over a different view number (to change views) the view name turns green, but the text doesn't change to show you the name of the view you're about to select (as it does when the header bits are on the top).

Sorry I almost missed this post. I've fixed it (it was rendering the wrong string) in the upcoming Alpha 4.

Hi all I've been working on LDraw file reloading this weekend and this indirectly forces me to rethink the open model list you can access by clicking the model/file name at the top right.

That list shows all currently loaded editable (sub)files. This list has been bothering me from the beginning as it gets crowded very fast and in doing so it basically becomes useless. And the list was never intended to be the main model navigation anyway, that should be done using the special overview bins.

Anyhow now models (technically editing sessions) can be closed the list becomes even more confusing as closing a model doesn't necessary mean the associated file will also be closed (MPD or file still used by another model etc). In my current Alpha 4/Beta 1 code I therefore decided to change the list into an 'open editing session' list instead of an 'all models etc' list. This means when you open a mpd the list will only show a single item (the main model) until you open one of the submodels by double click or through the overview bin. Closing a session will remove it again and release all undo info etc. I'm also considering to completely drop the menu altogether.

Problem I'm having and would like some feedback on is what to do with file changes upon closing a session combined with MPD's. Meaning if you close any session with changes and choose to 'revert' them it will revert all models in that file (managed in different sessions) or should an mpd not be able to close individual submodels at all?

I'm curious about the thoughts of anybody familiar with LDCad in regards to these issues, in short would you mind loosing the model list menu and or do you think the session oriented approach is better/understandable.

Hope this is somewhat clear as I've been dubbing about it myself for a couple of days now

Interesting...
At first, it's great you think about sessions and closing them. And I agree with you that the list of all (sub)models grows quickly and does not work well as an overview then.

Currently I use models in LDCad in this way:

1. I try to open only one mpd file in LDCad
2. Then the list of submodels accessible from the top-right navigation is good to see submodel names - it is helpful and well readable, comparing to images of submodels, cca 10 milimeters wide, in the Part Bin.
3. One may argue that I may make those images bigger but this size is OK for images of Parts and I need to save space on the screen
4. if I have more than one MPD open and want to switch between them, I use the top menu: Model->Change current model. But the list is too long now. "{M}" marker helps a little.

Therefore I'd prefer:

1. "session" is always per MPD file - I do not want to close a submodel only
2. top menu -> Model -> Sessions showing a list of sessions == MPD files. Similar to "Windows" menu in another GUI applications
3. the top-right navigation containing a list of submodels in the current model only - in the end, this navigation is placed inside the Editing window and so I expect it to be relative to the current MPD open in that Editing Window
4. closing a session should be equal to closing the MPD (i.e. while closing LDCad itself). This way there will be no confusion.

I'm not sure, Roland, I understood your description, so I let you to compare our ideas

Like Milan I'm not sure to understand all implications of your proposal. I mostly use one mpd per session, except sometimes for copy/paste between models, and so I somehow regret that LDCad is now single instance (I generally open one instance on both models) - but I guess multi-instance was causing other issues. What about a tabbed view, with one tab per mpd?

It seems we use LDCad in a similar way. Yes, tabs would be even more comfortable but a submenu under "Model->change current model" is OK for me as well, thanks to Roland's system of menu: one can "pin" the submenu on the screen for faster access. Not so comfortable as tabs but doable.
The main point is the equivalence: MPD file == session.

1. "session" is always per MPD file - I do not want to close a submodel only
2. top menu -> Model -> Sessions showing a list of sessions == MPD files. Similar to "Windows" menu in another GUI applications
3. the top-right navigation containing a list of submodels in the current model only - in the end, this navigation is placed inside the Editing window and so I expect it to be relative to the current MPD open in that Editing Window
4. closing a session should be equal to closing the MPD (i.e. while closing LDCad itself). This way there will be no confusion.

I think you are right only files should be closable not individual editing sessions.
Tabbed views is something that has been asked before and my main concern about them is limited space. Take a couple of long file names and you could have only a handful of tabs before you need to scroll or use multiline tabs etc. As a result of this I have been thinking about adding a bookmark system so you can choose what models you want a tab displayed for and may limit that to the simple 1, 2, 3 tabs like the bins. Not sure about any of that though

There will be a new bin group 'top level models' though, which always display all the main mpd models ('{m}') currently loaded.

Philippe Hurbain Wrote:...and so I somehow regret that LDCad is now single instance (I generally open one instance on both models) - but I guess multi-instance was causing other issues.

There is no real problem in using multiple instances except the last closed program will 'win' config files write wise. The main reason for single instance is so you can use file association in an expected manner. If you want you can still disable it by creating/editing LDCad.cfg see also http://www.melkert.net/LDCad/tech/config

Philippe Hurbain Wrote:What about a tabbed view, with one tab per mpd?

This will probably solve the crowded problem until you try to open something like datsville

Roland Melkert Wrote:Tabbed views is something that has been asked before and my main concern about them is limited space. Take a couple of long file names and you could have only a handful of tabs before you need to scroll or use multiline tabs etc.

This shouldn't be a problem:
While there is still sufficient screen real estate, tabs have the full filename and are as wide as needed. As soon as there is insufficient space, the tab widths start contracting, dropping out characters from the middle of the filename (replace with ... so that the abbreviation is apparent). I reckon you could go down to first 3 characters, last 3 characters and extension and still maintain uniqueness in most cases. You could even get clever and choose which characters to drop based on maintaining uniqueness. Have the full name available in the status bar, and everything's sweet. Of course, you'd still need to deal with multiline/scrolling tabs eventually.

Owen Dive Wrote:This shouldn't be a problem:
While there is still sufficient screen real estate, tabs have the full filename and are as wide as needed. As soon as there is insufficient space, the tab widths start contracting, dropping out characters from the middle of the filename (replace with ... so that the abbreviation is apparent). I reckon you could go down to first 3 characters, last 3 characters and extension and still maintain uniqueness in most cases. You could even get clever and choose which characters to drop based on maintaining uniqueness. Have the full name available in the status bar, and everything's sweet. Of course, you'd still need to deal with multiline/scrolling tabs eventually.

Session management will kinda change with the upcoming version as it is now (finally) possible to close/reload LDraw files. This gives people the chance to keep the tab count low.

I will do some experiments to see if tabs are usable but I don't think it will be included in the 1.5 version, maybe 1.6.

MLCAD does not prompt you when a sub-model has changed. But you can click the "Revert" button and it will reload everything from the disk, including any saved changes to sub-models. But then, MLCAD does not support multiple sessions.

Pov-Ray only prompts you about unsaved sub-models when you try to render the parent model.

P.S. I still think if you are going to allow multiple sessions per instance, you should show tabs for each session.

[edit]

I just installed the latest alpha. Which menu shows the list of sessions? I can't find it.

MLCAD does not prompt you when a sub-model has changed. But you can click the "Revert" button and it will reload everything from the disk, including any saved changes to sub-models. But then, MLCAD does not support multiple sessions.

Pov-Ray only prompts you about unsaved sub-models when you try to render the parent model.

I've got session (file) closing / manual reloading / file detection reloading roughly working it will be available in Alpha 4 (later this week I hope).

Michael Horvath Wrote:I still think if you are going to allow multiple sessions per instance, you should show tabs for each session.

I agree on adding tabs it's just very ineffective when e.g. working with your datsville, so I'm still thinking about how to change it. This is also why the part bin approach is still my own preferred / intended method for model/session navigation though but I will be adding tabs in one way or another (maybe just bookmarks or something) in the 1.6 version.

Michael Horvath Wrote:I just installed the latest alpha. Which menu shows the list of sessions? I can't find it.

The session menu is reachable by clicking the filename in the top right this hasn't changed (yet).

I found this issues with LDCad 1.5 Alpha 3:
When you "cut" multiple parts from the model to paste them somewhere else, all the parts that are in any group disappear in the process. They get deleted from the source like they should, but they don't appear when you paste.
The only way to get them back is use "undo". When you use undo, however, the parts that preiously were in groups are all ungrouped.

Another thing: You can't dock windows when the option "lock docked windows" is activated. This can be quite confusing when you try to find ut why you can't dock windows the way it is explained.

Niklas Buchmann Wrote:When you "cut" multiple parts from the model to paste them somewhere else, all the parts that are in any group disappear in the process. They get deleted from the source like they should, but they don't appear when you paste.

Very weird but you are right none of the group content is copied to the clipboard. I've must have broken something along the way. It will be fixed in the next version.

Niklas Buchmann Wrote:The only way to get them back is use "undo". When you use undo, however, the parts that preiously were in groups are all ungrouped.

Currently the grouping state of things are not tracked in the undo system. To make that work all grouping actions must be tracked (e.g. ctrl+g etc) something somehow feels weird to me. I have some grouping changes/extensions planned for 1.6 so I might add it anyway, but I'll have to think about it some more.

Niklas Buchmann Wrote:Another thing: You can't dock windows when the option "lock docked windows" is activated. This can be quite confusing when you try to find ut why you can't dock windows the way it is explained.

I could make it so you can still dock while things are locked but as soon as you 'release' the window you won't be able to undock it again which to me seems a bit weird. Maybe a message box like 'docking is currently locked' is a better solution.

Michael Horvath Wrote:How do you replace a part with a different one while keeping the coordinates the same? In MLCAD you just right-click on the part and choose "Modify".

Select it in the model, then double click its replacement in the part bin, this will replace all parts in the selection with the one in the part bin while retaining their individual colors, orientations and positions.

I've been playing around with a Linux install script and I was wondering if any Linux people could give their thoughts on it.

It seems to work with debian, kubuntu, suse and mint but I'm not 100% sure its all 'official'

This is the current script

Code:

#!/bin/sh

# ======================================================================================================================
# This script will copy the LDCad files into suitable central, current user independend, locations.
# It will also try to register the application so it shows up in the application menu.
# This will also make LDCad available to 'open with' operations etc.
#
# NOTE 1: This might not work for all distributions, feel free to adjust the below script to make it work yourself.
# If so, please consider sending me your modifications so I might be able to improve the script for all.
# NOTE 2: You need root/sudo rights to run the script as the /usr folders are usually read-only for normal users.
# ======================================================================================================================

Looks good.
A couple of things to consider:
* You don't seem to be using the icofn variable.
* You might consider using a png icon in /usr/share/pixmaps to be a bit more "correct".
* LDView uses mime-type application/x-ldraw with a bit more complicated ldraw.xml
* Perhaps consider a base install variable, in case some distributions like to put stuff in /usr/local instead of /usr.

Richard Speyer Wrote:Looks good.
A couple of things to consider:
* You don't seem to be using the icofn variable.
* You might consider using a png icon in /usr/share/pixmaps to be a bit more "correct".
* LDView uses mime-type application/x-ldraw with a bit more complicated ldraw.xml
* Perhaps consider a base install variable, in case some distributions like to put stuff in /usr/local instead of /usr.

Thanks for your feedback Richard,

I changed the mime types so it won't conflict with LDView. Do you use "ldraw.xml" literal as I'm already testing on that files existence thinking the mime maintenance people might add it one day.

icofn is not needed anymore indeed, as I moved it to the genDskEntry.sh file. I removed it and added a basedir (/usr) var.

The ico seems to work without problems though. It's the same one which is packed in the windows exe. Also it holds multiple sized icons or does xwindows not use that?

Roland Melkert Wrote:I changed the mime types so it won't conflict with LDView. Do you use "ldraw.xml" literal as I'm already testing on that files existence thinking the mime maintenance people might add it one day.

I just added

Code:

MimeType=application/x-ldraw;application/x-multipart-ldraw;

to the .destktop file
The mime types don't conflict, in general the desktop environment lets the user choose default actions if there is more than one possibility and provides a list like the windows "open with..."

to the .destktop file
The mime types don't conflict, in general the desktop environment lets the user choose default actions if there is more than one possibility and provides a list like the windows "open with..."

That text uses "application/x-multi-part-ldraw" instead of "application/x-multipart-ldraw" but as the LDView package is out there I will be using "application/x-multipart-ldraw" too.

Richard Speyer Wrote:I'm using KDE and it doesn't use the ico file. It might work in other environments.

It seemed to work on kubuntu, which is currently my KDE test environment. Which Linux are you using so I might get the live iso of it to test KDE some more. I will add a 128x128 png version for the desktop entry to be sure though.

Roland Melkert Wrote:That text uses "application/x-multi-part-ldraw" instead of "application/x-multipart-ldraw" but as the LDView package is out there I will be using "application/x-multipart-ldraw" too.

You're right, I hadn't looked at that bit! I think you're going the right way with it.

Roland Melkert Wrote:It seemed to work on kubuntu, which is currently my KDE test environment. Which Linux are you using so I might get the live iso of it to test KDE some more. I will add a 128x128 png version for the desktop entry to be sure though.

I tried Slackel but it doesn't show the program in the graphics menu nor does it seem to process the mime changes. But this might just be the result of it being ran on a live environment as the whole Live session felt a bit sluggish to me compared to e.g. kubuntu etc.

I've released Alpha 4 including the setup.sh script, so I would appreciate it very much if you could give it a try yourself.

Yes, I've had a similar experience. It isn't possible to add LDCad in that menu.
But I also don't want to have to choose it as a default program.
I want to have all the editors in my right click menu as I very often jump between editors to use different features in them.
Right click on a dat-file and choose the editor I want.

The only problem I know of is you can't browse for a executable with the same name as one already bound (also added through browse) to an extension. This is because the exe name is used as the registry entry.

Hopefully it will fix itself by registering the association in the setup (which should preserve existing ones too).

The major new feature is: LDraw file monitoring and reloading upon external changes.

As a result of these changes it is now also, finally, possible to close models you don't need anymore using the new 'close' tab in the top right session panel.

Please note the reloading stuff was somewhat harder to implement then I thought/ hoped so it might not be 100% stable jet.

I've also added an experimental Linux setup script to the Linux archive versions. This script will try to integrate LDCad into the xwindows environment given the distribution in question uses the free desktop file structures (which most seem to do).

The script installs files user independent, adds LDCad to the application menu and tries to associate ldr and mpd files with the main executable.

As this script is experimental please use it with care. I've tested it successfully on Ubuntu 15.04, Kubuntu 15.04, Open Suse 13.2 and Debian 7.5

It didn't seem to work for Slackware though, but this can be the result of me using the live version of the Slackel variant so it might work better on a fully installed environment. If anyone has suggestions on how to improve the setup.sh script please let me know.

For the full list of changes see the changeLog.txt in the docs folder.

Minor fallout from the Linux changes The ico used to be in gui/default in the older versions so you can get it from there. Or re download alpha 4 as I've replaced the windows archive.

Philippe Hurbain Wrote:Got a crash trying to copy/paste a path point in nested mode, source window. But I couldn't reproduce the problem (I made the same kind of thing several times successfully after that).

Do you still have the log file of that session (last three sessions are kept) so I might see if it was generator related as I made some changes to that in order to fix another bug related to very short paths.

It seems not to be related to path generating as those were completed. So it seems to crash somewhere between finishing the paste action and regenerating the path including the new parts after it completes the paste action.

Do you remember what parts you where pasting? In the mean time I'll put this issue on my 'no repo' list of potential bugs to keep an eye on.

What's the simplest way to align a part with another? Case in point, place a rubber band circle path point centered on an off-grid pulley. Of course it's always possible to copy coordinates one at a time, but...

Currently there is no real dedicated way to align parts to another one except for maybe the relative grid. I do have some plans on this subject (eg mirror building) but as I have many plans pending it could take awhile

In the meantime you can use the guidance part for the relative grid and then use shift+home (align all axlis' to grid) followed by ctrl+home (reset orientation) and lastly move it to where you want it. This should at least help getting it aligned I think.

Indeed, the relative grid makes the job for me in this case! Select the pulley, put origin on it ('o'), then select circle path path point and move to origin ('shift+c'). Optionnally reset orientation too ('ctrl+home'). Thanks!

A friend of mine who had no prior usage of LEGO CAD just finished his first model with LDCad 1.4 (a relatively complex Technic MOC, attached). He was very favorably impressed by ease of use and speed of virtual construction.
Among his comments:
- Lack of help bubbles (I told him about the status bar)
- Complained about lack of indication that a bin contains other bins (addressed in 1.5)
- He added a lot of empty submodels, confusing the +step icon with the +model icon (I do that too quite often). While I think there is nothing wrong with the icons themselves, maybe the "discard" button of the edit header box should delete the submodel if it's just beeing created? Speaking of this window, is there a way to make "Sync with filename" the default option?
- Lack of parts list generation
- (edit) When you hide some parts/submodels then create an export, the exported image shows all hidden stuff.

Otherwise, in 1.5 alpha 4, I can't type a space in the filter field (it does work if I pop up the search window of course), preventing me to search on several words. Don't know if this behaviour is new but I think so.

Philippe Hurbain Wrote:Lack of help bubbles (I told him about the status bar)

The hintbar only thing was initially a rendering speed thing, but on modern hardware it matters less and less, so I might add something (optional) in 1.6 for this.

Philippe Hurbain Wrote:He added a lot of empty submodels, confusing the +step icon with the +model icon (I do that too quite often). While I think there is nothing wrong with the icons themselves, maybe the "discard" button of the edit header box should delete the submodel if it's just beeing created? Speaking of this window, is there a way to make "Sync with filename" the default option?

A delete on the initial discard might be better indeed, I'll put it on my list of low prio stuff.

Philippe Hurbain Wrote:Lack of parts list generation

For a quick listing you can use the overview bin groups e.g. current step parts, all used parts etc. Or does he mean a export of used parts?

Philippe Hurbain Wrote:(edit) When you hide some parts/submodels then create an export, the exported image shows all hidden stuff.

This is a (minor) bug, I'll correct it in Beta 1.

Philippe Hurbain Wrote:Otherwise, in 1.5 alpha 4, I can't type a space in the filter field (it does work if I pop up the search window of course), preventing me to search on several words. Don't know if this behaviour is new but I think so.

This does work in 1.4, I noticed it myself a while back the multi view zoom was stealing the key event so I restricted that key to the view area. I'm not sure what's different compared to 1.4 but it's probably the result of the layout changes

Thanks for the feedback Philo.

edit: forgot to answer the filename sync question. The second checkbox behind that field controls the default behavior. I might need a better hint for that box.

(1) Is it somehow possible to apply a certain order to the part bin of all models (all models currently loaded), respectively to sort this part bin by the number or name of the submodel? Furthermore is it possible to fix the main model on top of the part bin (first position).
For building models having a lot of submodels I would highly appreciate to find a certain submodel very quickly. Actually my part bin is in absolute disorder.

(2) Adding a new step is actually done via “append a new building step after the last one”. Is it possible to insert a new building step right after the actual building step (which is not meant to be the last one)?

Roland D. Wrote:(1) Is it somehow possible to apply a certain order to the part bin of all models (all models currently loaded), respectively to sort this part bin by the number or name of the submodel? Furthermore is it possible to fix the main model on top of the part bin (first position).
For building models having a lot of submodels I would highly appreciate to find a certain submodel very quickly. Actually my part bin is in absolute disorder.

The all models group is currently sorted by description, but now I think about it, this is probably not a good thing to do. I will change it to the model filename in the default bin for the next version.

The sorting order is given in the group's configuration file (allModels.pbg) trough the field 'sortOn'. You can change that field to something more to your liking yourself but you might have to do it again after an upgrade if it differs from the default. Unless you create a new / additional group for it by copying the pbg file. See also http://www.melkert.net/LDCad/tech/partBin

If you are comfortable working with config (ini) files you could setup a whole alternative bin structure to make things more to your liking. I would recommend to wait with the overview ones until Beta 1 of 1.5 is ready though. This because I'm in the middle of changing those groups rules wise.

Roland D. Wrote:(2) Adding a new step is actually done via “append a new building step after the last one”. Is it possible to insert a new building step right after the actual building step (which is not meant to be the last one)?

In the step menu there is an insert, it will insert a step meta before the current active one. There is also an option to insert a step meta before the current selected item in the same menu.

If you are using the 1.5 Alpha version you can insert a step meta anywhere using the source window. Just select any existing step meta and press 'ins' or drag a step meta from the part bin (root/special parts/LDraw meta's).

Michael Horvath Wrote:I haven't tried animation yet. How does it work? Can it animate a camera? Does it output to POV-Ray or what?

Animation is (currently) 100% script based a bit like POVRay animation is. More features are pending though as it will be the main 'theme' of the 1.6 version which will include a POVRay export (comparable to the one in my LD4DStudio) and maybe a blender one too.

I'm almost ready to release a 1.5 Beta 1 version, just a few things to do followed by fixing all known bugs.

Problem I'm having with this is there is a known bug I can't seem to trace as it occurs seemingly randomly while closing the program.

I would appreciate any additional information people might have on the behavior of this bug. For example..

* have you noticed this crash in previous (alpha) versions (so i can limit the search to features added after the last stable version).
* have you noticed some scenario where it is more likely to occur (e.g. while a specific part bin group is visible etc, something is selected etc etc).

Any thoughts / feedback is welcome as I'm really having a hard time finding this bugger

And to the programmers among you I have tried to indirectly fix this issue by extensively running valgrind. But the only issues it now reports are memory leaks from third party libraries (mostly wxWidgets). So any suggestions on alternative debug tools etc are welcome too.

Owen Dive Wrote:Sorry, I can't help you there - I haven't experienced an actual crash of this program for a long time.

Well, I must have cursed myself - I got some crashes this afternoon.

Here's how I reproduce it:
1) From a new session, begin a new file
2) Add a submodel
3) Add a part to the submodel
4) Add the submodel to the main model
5) In the parts pane, go to Overview/Used in step. There should be one copy of one part.
6) The main model should consist of one submodel. Try to replace the submodel with the part by double-clicking the part in the parts pane.
7) On my machine at least, I get a Windows dialog that says "LDCad has stopped working" and tries to diagnose the problem. It can't, so all I can do is close the program.
Of course, sometimes it does that, and sometimes it replaces the submodel as expected. My hypothesis is that there's a race condition between the delete and the insert - if the delete happens first, the part is no longer in the list of parts used in this model, so there's nothing to insert. Or I could be completely wrong.

Owen Dive Wrote:Of course, sometimes it does that, and sometimes it replaces the submodel as expected. My hypothesis is that there's a race condition between the delete and the insert - if the delete happens first, the part is no longer in the list of parts used in this model, so there's nothing to insert. Or I could be completely wrong.

Thanks for reporting, I couldn't reproduce it using one part in the submodel. But while using multiple ones it was guaranteed to crash

Actually lines are never really deleted, they are just marked deleted this makes the undo system alot easier to work with.

It was caused by the item hint system, which tried to 'ask' the bin cell below the mouse for its hint string after processing the double click. But at that point the cell bin item was no longer (reliable) available because the bin already regenerated it items cache list.

Owen Dive Wrote:Sorry to bring this up so close before the release of Beta 1.

Don't worry about it I rather fix this now then have a scratch on the brand new version just after releasing it

Not really a bug, but... when you use a part bin that has color information (set pbg, or history), you somehow would expect that double clicking on a part in the bin with a part selected would replace the part type AND its color. Currently only the part type is changed.

Found another quirck: when I change from bin set 1 to bin set 3 that are identical (set pbg) except for filter string, the displayed filter string is not updated (the bin contents are properly changed) . But it works when I change 1 to 2 then 2 to 3!

Philippe Hurbain Wrote:Not really a bug, but... when you use a part bin that has color information (set pbg, or history), you somehow would expect that double clicking on a part in the bin with a part selected would replace the part type AND its color. Currently only the part type is changed.

That's more logical indeed, I'll change it.

Philippe Hurbain Wrote:Found another quirck: when I change from bin set 1 to bin set 3 that are identical (set pbg) except for filter string, the displayed filter string is not updated (the bin contents are properly changed) . But it works when I change 1 to 2 then 2 to 3!

A bug resulting from the bin rewrite, I'll fix it.

On a side note I'm happy to report 1.5 Beta 1 is now feature complete and I'm concentrating on bug fixing / testing hoping to release it soon. If anyone has additional problems / quirks / bugs please let me know as soon a possible.

This is maybe not a bug either, but it is buggin me.
Or is the answer to my questions someware in a previous post?

1.)
Why can't I change the colour of a brick in my model by clicking on the colour wheel?
I want to select a brick in my model, and then select/change the colour of it by clicking on the colour wheel.
As it is now I have to select the part, then rightclick to the correct meny and manually edit the colour code.
Or delete it, select colour, add a new brick.

2.)
After installing the latest update, my icons were redirected to "G:\LDraw\LDCad\LDCad.exe"

3.)
Why can't I move a brick in my model from the keyboard alone?
In MLCad I select a part and then move it left/right/front/back with the arrow keys and up/down with "Page up/Page down"

4.)
Why can't I navigate the part bin by clicking above or below the slider?

Magnus Forsberg Wrote:Why can't I change the colour of a brick in my model by clicking on the colour wheel?
I want to select a brick in my model, and then select/change the colour of it by clicking on the colour wheel.
As it is now I have to select the part, then rightclick to the correct meny and manually edit the colour code.
Or delete it, select colour, add a new brick.

You can by double clicking the color wheel. But I'm thinking you are using the wheel wrong to begin with. The wheel selects the current 'working color' this is indeed used for new parts etc but you can also assign it to the selection by clicking the larger rectangle in the color history bar below the color wheel.

I'm not sure what you mean / happend here. All I can tell you is the setup does not change any file extension stuff, maybe you did a manual open with (use as default) in the windows context menu?

Magnus Forsberg Wrote:Why can't I move a brick in my model from the keyboard alone?
In MLCad I select a part and then move it left/right/front/back with the arrow keys and up/down with "Page up/Page down"

You can but the editing pin has to be in move mode, in 1.5 you can also use ctrl+arrows while its in rotate mode.

Magnus Forsberg Wrote:Why can't I navigate the part bin by clicking above or below the slider?

This is possible in 1.5 as it has a number of scroll bar related improvements.

Magnus Forsberg Wrote:The icon in Windows start meny stopped working. A right click told me that the properties was changed to
Target "G:\LDraw\LDCad\LDCad.exe".
Start in "G:\LDraw\LDCad\"

I don't have a G: drive !?
I have LDCad installed in "C:\Program Files (x86)\LDCad"

Ah you mean the start menu shortcut. I'll have to look into this as I'm currently unaware of any issues concerning the setup messing that up. Did you at one point run the setup from e.g. a thumb drive or something ? If anyone else had similar problems please let me know.

Magnus Forsberg Wrote:I want to move it in all three directions without having to choose a edit plane first.

Currently you can only move on the 2D grid but you can switch the plane using keys (T)op, (S)ides, (F)ront. I can't use pageup/down as those are already used for building step navigation. I'll try to open up your referred usage through the 1.6 version key remap feature.

Something for a future release: give the possibility to distribute length error of fixed elements flexible parts over the whole length. Maybe it's already possible, I tried to play with skin segment size, this does something but I couldn't get it right despite several trial/errors.

I'm not sure what you mean here, are you trying to define LSynth like skin? If so you need to set the segment size below 100% so the segments will slightly overlap, placement should be dynamic, 'max merge' disabled (1) and 'final scale' set to none.

And last you should use a donor which is available in the official library or mpd itself as it will use normal references while working with the dynamic placement method.

I made a tread using 57518 part (for 42042 model) using LDCad template. When properly placed over the sprockets and guiding wheels, the tread was 45 links long (the correct value) but there was a gap of maybe 1/2 link wide. I guess that in the real model, play at each link attachment allows to properly close the loop. What I want is to close the gap by making all the links a tad further apart.

Philippe Hurbain Wrote:I made a tread using 57518 part (for 42042 model) using LDCad template. When properly placed over the sprockets and guiding wheels, the tread was 45 links long (the correct value) but there was a gap of maybe 1/2 link wide. I guess that in the real model, play at each link attachment allows to properly close the loop. What I want is to close the gap by making all the links a tad further apart.

That should be possible by setting the skin tolerance to e.g. 5% and setting the 'grid stepping' (path page of the header dialog) to 0.

The grid stepping is the internal curve resolution, you will loose perfect link placement if it's different to the link length but that's what you want

Roland Melkert Wrote:Problem I'm having with this is there is a known bug I can't seem to trace as it occurs seemingly randomly while closing the program.

I'm still open to any additional info.

This is now the single pending issue preventing me from releasing 1.5 Beta 1. I thought I fixed it 2 days ago, but it crashed again a moment ago. I have one more thing to try but I'm wondering if I should just release it instead of waiting a couple of days again while doing random stuff in the program myself now and then.

Something that surprised me a bit (but somewhat makes sense): I inlined a shortcut while in nested mode. The shortcut was inlined at working level, instead of beeing inlined in the submodel where shortcut was.

Philippe Hurbain Wrote:Something that surprised me a bit (but somewhat makes sense): I inlined a shortcut while in nested mode. The shortcut was inlined at working level, instead of beeing inlined in the submodel where shortcut was.

This is how I set it ip to work, but I could add an option dialog to the feature.

'm not sure it is needed that much though, especially as you could also just press 'n' (change the working level to the selection's direct parent) before using inline-ing.