Giter VIP home page Giter VIP logo

legacy-save's Introduction

Eneroth Legacy Save

This extension quickly saves the model in a legacy SketchUp version. In contrast to utilizing the native Save As... command you don't need to accept the file location and confirm overwrite on each save.

If you have colleges stuck in older versions or want your files to be accessible using SketchUp Make, which stopped being developed after version 2017, you may find this extension useful.

If the file is already saved, this command will function similarly to the native Save command, and save the file to the same location as the same SketchUp. If the file has already been saved to a newer version than you want to save as, first use native Save As and select what version you want to use.

Activated from File > Save in Legacy Format.

Source code available at Github.

legacy-save's People

Contributors

eneroth3 avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

Forkers

raybrumbaugh

legacy-save's Issues

Missing Save As... dialog

To make the Save in Legacy Format command behave consistently to native Save, the Save dialog should be shown if the model is not already saved, letting the user select location, name and version.

As of now I haven't found a way to open the native Save dialog. According to the Ruby API documentation, Sketchup.send_action(21036) should work on Windows, but it does not.

Ideally the native dialog should be used, as a manually recreated one would not be automatically localized and in other ways risk not feeling like the native one. Also it doesn't appear as the version dropdown can be implemented in a custom save panel.

Menu entry being wrongly positioned when Open Newer Version is missing

Without noticing I positioned the menu entry at the 9th index, with my own Open Newer Version extension having its entry further up. For this extension to be positioned between Save As Template and Revert, it has to be positioned one step up if Open Newer Version is missing.

Note that this is something of a hack, not a general solution. If another to me unknown extension places its entry anywhere above this extension's entry, this entry will be offset one step relative to native entries.

Warn when saving to most recent format

Continuing from #1, there is a risk the user intends to save to an older format, but press Ctrl+S out of old habit without realizing it, and end up all with succeeding calls to Legacy Save saving to the most recent format.

It may be useful with a warning saying you are doing a legacy save to the most recent format, not a legacy one. However, such warning must have a "Don't show me this again."-option, as some users may use Legacy Save as their default method of saving, regardless of whether they want to save to an older format or not.

Error on saving SU2019 files in SU2019

As of SketchUp 2019 there is an API bug in Model#save. With version 2019 sent as a parameter the method throws an ArgumentError. This could be quite easily fixed by checking if the selected file version is the same as the running SU version, and call the method without this argument, as it defaults to the running SU version.

However, through my own experience with using the extension I've noticed that I often get this error when I intended to save to an older format, but had previously accidentally out of habit pressed Ctrl+S and saved to the most recent format. In such a case the error message reminded me to go to Save As and select the old version once again.

Perhaps, in addition to fixing the bug, there should also be a warning message when trying to save to the version that SketchUp runs at? However, such a warning would be annoying if you rely on Legacy Save even for saving to the most recent version, e.g. by relinking Ctrl+S to trigger it. Such a warning would require a Do not show me this again-option.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.