* Salt packages can host native Ruby and Python
libraries now. The "ruby_lib" and "python_lib"
templates provide such native libraries.
This way we can basically wrap every native
extension in such a package.
* Ability to supply binary plugins through
Salt packages as well.
Technologies and macros that come from packages
are indicated as such in their description texts
in the tech and macro editor.
Technologies and macros that come from packages
which are downloaded are readonly now. This will
prevent editing of downloaded packages.
The bug was that a crash happened when a package was deleted.
Essentially that was an effect of too many message boxes asking
to run autorun macros (also a bug - solved by deferred execution
of the macro update). This is solved by putting the salt model
into a "under construction" state while the model is not updated
yet.
- Adding/removing folders to packages now will
make them appear/disappear automatically in the macro
editor.
- Adding and removing files from folders will make
them appear/disappear in the macro tree.
The tech controller now is indenpendent from the
macro controller. The macro controller is responsible for
pulling it's data from the tech controller. It's initialized
after the tech controller so it can do so.
The macro controller is also responsible to building the
menus.
The tech controller issues events that the macro controller
can listen to.
Resolved the dependencies between MainWindow, TechController
and MacroController somewhat more.
* The macro controller now listens to the tech controller
for the active technology
* The tech controller has more responsibility now
* Some functionality has been taken out of the MainWindow
and put into the controller's implementation
* Introduced "refresh" method of tech setup dialog
* Some refactoring -> tech management is part of
tech controller
* Macro category management moved to macro controller
The MacroController is the central facility for managing
macros and their views. The plugin framework has been
extended to support such a design.
In addition, some small bugs have been fixed related to
macro interpreters (specifically the DRC).