[Plugin] Components manager plugin
-
Inteloide,
I've been wanting something like this forever. Even if I don't deal with mechanic enginnering the amount of components and xrefs I use is very hard to manage with native SU tools.
I'll give it a spin immediately and tell you about it's usage and any bugs I find out.
Thanks and best regards,
EDIT: I noticed only 5 downloads this is not consistent with the usefulness of your plugin. Did you try publishing it in Sketchucation Plugin Store. There is a form for that and that can get you a whole lot more downloads...
JQL
-
Thank you JQL, that make me "boost".
Two things :
- I wanted to post officially the plugin when working 100% ok. Glro already help me on that even if I desesperate to explain how useful the plugin could be.
-I cannot find where to post a plugin, I looked in the pluginstore but couldn't find easily... I'll ask SketchUcation team how to proceed.
After some feedback and maybe 2-3 improvment I have in my mind and I will officially post it. Hope this will be done for end of week.
In few seconds, I post the new version 1.4.0 with interesting updates :
Added : Options are now saved in My Documents folder instead of Inside Model
Added : Option to select automatically the instances in the model (yes by default)
Added : Number of instances of components beside component definition name, ex : toto (*3), means 3 instances in the branch of the list
Added : Plugin version in title for more traceability
Added : Update list when openning an existing file or creating a new file
Removed : Progress in Sketchup state bar (I will try in implement again later)
Removed : Old code for sub-menu options
Corrected : Error in observers for new model and open model
Corrected : Components in root of the model were duplicated in the list : not anymore
- I wanted to post officially the plugin when working 100% ok. Glro already help me on that even if I desesperate to explain how useful the plugin could be.
-
I'll add you to the Plugin Author group tomorrow and get this listed in the PluginStore
Thanks for sharing your plugin here
-
ok thanks !
Just post version 1.4.1, as Win32API.so file is required, for option saving.
It didn't saw it as it was included on my computer with other plugin I have... -
@inteloide said:
ok thanks !
Just post version 1.4.1, as Win32API.so file is required, for option saving.
It didn't saw it as it was included on my computer with other plugin I have...version 1.4.1 lists components as you wrote
here is a screen shot of my screen
All components came previously from my components folder
for the components written in green, I modified the definition path using the 3rd button from the left; that is why they are written in green
I didn't do it for the components written in orange
For this particular component written in orange, i tried to reload the existing definition, and failed...
Why is it necessary to create manually a new definition, anyway, since the address of the component is known (shown at the bottom of the window)?
Why is it that the plugin does not go directly to the adress of the component and check if it is up to date?
Maybe i don't understand well the definition of "definition"...
-
Hello,
the plugin is made to update component without having to link (third button) each of them...so there is something strange.
If item is in orange, this means that he could not reach the file, and as you don't modify the component, the plugin didn't create a relative link. Therefore it lloks like the file is not reachable.
Could you send me the complete link (as show in bottom of the window, you can select it and copy it by right clicking on) and send me the real link (through windows explorer for example), to see what's going wrong.
The error may come from special characters...maybe.
Also, you can try to copy the link in bottom of the window to the windows explorer to see if the file is opening.
Thank you to make this trials ! -
Hi inteloide,
Great plugin you have here. Fills a lot of my needs for xref and component management in models.
I get a script error after trying to open a complex model in SU 2013.
When I start SU2013 it autoloads a template file with 2 components one is there because of a plugin.
If I open a particular existing file, with lots of components (618 Groups; 537 Component Definitions; 2548 Component Instances) I get a blank list where only those 2 previous components from the template file remain.
If I refresh the list using the first button, I get no update, the two components are still there and I get the following error message:
However there are other files where this doesn't happen and the list becomes full immediatelly when I open them.
The main difference I can remember between both files is that in the one that gives me the error I've been managing files/components with XREF manager plugin, from TIG.
There is no info on Ruby console.
If this info is not enough and you need something more, just tell me that I'll try to get it.
Thanks and congratulations on your excellent work.
Best regards,
JQL
-
Hello, there is a problem with special characters. I tried it and it failed, so it's sure.
I will correct this and you will be able to try again to see it solve this issue. -
You're right!
I took out all "àáéíóúâãõç" characters from component and group names and it's now showing what seems to be the full list of components and groups from my probmodel.
It's really fast in doing that too, so this might also be an outliner replacer... and if it is... you've made me a very happy SU user!
-
There are errors when:
-component name include special characters
-file path include special charactersFirst one generate javascript issue => should be easy to repair
Second one involve issue in ruby coding : harder to solve... But I found a solution on this forum : I will try to correct using it. -
Hello,
Just update the new version that solve special characters issue (thanks to a TIG script).
Other improvments :
Added: Number of instances are written in italic blue to make it different from definition name
Corrected : Bug when component or path have a special characters inside
Corrected : Move Win32API in BGSketchup folder not to interfer with other plugins
Corrected : Simplify reload definition script, avoid error when Group is selected
Corrected : add to_java function to format string to reach javascript standardPlease make trials in your models and tell me if it corrected issues you had.
I'm glad to see people happy of this function. May some of you push "Donate" button when it will be published, a little contribution to allow me buying a 3D printer (my dream).
Also, if some improvment are missing from your point of view, please tell me.
-
New version 1.6.0 :
Added : Window can be resize
Corrected : Avoid graphic issue when selecting different line in the list
Optimized : Simplify CSS file (removed un-used data)
Optimized : Buttons are now centered in window -
Excellent update, I'm going to test it and I'll try to say something later!
-
@jql said:
Excellent update, I'm going to test it and I'll try to say something later!
Some bugs actually... Selected lines are not highlighted. Color bug in list. List size error when uploading the list.
I will correct this tonight.
I will add a function to manage levels of components in file name ex:"toto ind 2.skp", to upload only last level. -
That level management is a very good idea for nested xrefs...
-
@jql said:
That level management is a very good idea for nested xrefs...
Yes ! It would be very useful for me !!
I already code the script to check if other files exist in a path with different level. (You will see, in version 1.7.0 in "options", that options are implemented but not active)So the idea will be, when updating a component definition from a file, to check if other file exist with the same "base" but with different level. Ex :
"c:\toto\drawing.skp"
"c:\toto\drawing ind2.skp"
"c:\toto\drawing ind3.skp"Then the plugins will update only the highest level : "c:\toto\drawing ind3.skp"
Therfore, you will be able to keep history of your component by saving it in a different level each time you modify it !Of course the level idenitificator (" ind" here) will be changeable in options).
Also, this options can be activable or not in options too.Just pending for me to implement the script at correct places and that's it !
I hope to complete this by Thursday (yes, tomorrow start the sales in France...and my TV is broken down...sniff )
So version 1.8.0 will have this useful function ! Just wait a bit...New version update (1.7.0) , with following changes :
Added : New red color to distinguish file newer than definition with file older than definition
Added : New option to choose if the brightest red color means file newer or older than definition
Added : Add refresh time in window bottom when updating the list
Corrected : Number of component instances in a branch was wrong
Corrected : Restore highlightning of selected item (come back to previous script...)
Corrected : Number of instance in same style that item to avoid double item selection error
Corrected : Avoid to have unlinked components text in the same color than previous list item (CSS)
Corrected : Options were still saved in model (even if not used) -
Oh I see now! What you mean by levels is revisions.
So if you save a lot of revisions or versions of the same component the latest version will be the one the plugin finds to reload. Though that is not what I thought it is, it is useful indeed!
Best regards,
JQL
-
does this script work on mac version? thx
-
@greatoe said:
does this script work on mac version? thx
Hello Greatoe,
not sure it work on Mac, as I don't have one, as system is different...Maybe the best is to try and tell me if it's works...
I will try later to understand how Mac file system works and update, if required.JQL, what yours thoughts were exactly ? Maybe I can implement !
-
I thought you where refering to nesting levels inside Xrefed components.
Just to clarify, even if I'm sure you're familiar with the concept of Xref there might be someone else not familiar with it. A Xref is a .skp file that has been referenced as a component inside a model (TIG is also able to reference .dwg files with his Xref Manager plugin but that's not the scope of your plugin).
So imagine a model of an house that has 2 floors:
- The house might be a component that you can "save as" to a file, Xrefing it.
- But inside the house there might be many other components like the 2 floors, kitchen, bathrooms, closets, etc...
- All of those components might be Xrefed too so you get a lot of Xrefs with other xrefs inside. This can be called nested Xrefs
- With your plugin it's very easy to "reload" or "save as" multiple components at the same time;
- It's also easy to choose specific components to "reload" or "save as" and it tells wich ones need to be updated, wich is excellent;
- What I thought you were talking about was the ability to auto update only the components that were more deeply nested inside other components that needed an update, without having to update all components above.
Example:
- Inside house component there's 1st floor component;
- Inside 1st floor there's the kitchen component;
- Inside kitchen there's a counter with a sink component;
- All of this components are xrefed;
- You changed the sink component in the file and all of this nested Xrefs are outdated;
- If your plugin would be able to automatically detect that the sink component was the only component interfering with this "outdate" status, and would be able to update all only by reloading the sink component, this would be a wonderful time saver.
That was what I was thinking of, but it might be a bit complex.
Best regards and thanks again,
JQL
Advertisement