08-30-2010 05:41 AM
I've implemented this in the latest build
Make it possible to generate a flat file structure for classes in GOOP4 (no Private,Protected or Util folders) but keep that structure in the lvclass. This vill make it simpler to handle in SVN subversion.
Regarding a flat directory structure
How and where should the user be able to configure it?
Tools->GOOP->Class Provider Options... Configure class provider
could be a good place.
+1 for this idea!
Something like this:
Should I also present this option in the Create Class Dialog as well?
When I inherit from a class should I use its preferences or use the default preferences?
I see no need to present the option in the Create Class Dialog.. Either one or the other will be ones preferred way of working. Nothing to gain in using both schemes together.
For inheriting it should probably use the default preference, but I could think of use cases where one would like to have the option to override that and use the same scheme as the parent class.
Yes that will do. I see no need to mix the two, since the primary reason (for me any way) it's to simplify the use of Subversion when you have to change the access scope of a vi.
If the file structure is not flat you have to move the vi to a other folder when the access scope change (not to make a mess) and that is messy in Subversion.
So what should I call the option in details?
All text and help are defined in the language files, so this control will have a section like this:
[_FlatFolderStructure]
description=This is the option that turns flat folder structure ON for the GOOP4 class provider
en=Use flat folder structure for new classes
[_FlatFolderStructure_Tip]
en=Turn this option ON to have all new classes using a flat folder structure
[_FlatFolderStructure_Help]
en= Turn this option ON to have all new classes using a flat folder structure.\0AThis will not make the physical private and protected folders on disk, but still create the virtual folders. The physical and virtual utils-folder will still be created.
BTW, if someone would like to translate GDS to other langauges, feel free to add a key for that langauge, e.g.
sv=Swedish
gm=German
nl=Dutch; Flemish
The files are located here:
LabVIEW 2010\resource\Framework\Providers\Endevo\LanguageFiles
Cheers,
Mikael
//Mikael
Guys
I've just implemented this, but...
The only change I got was that the private folder wasn't created.
The protected folder is preferable created to place the ObjectAttributes.ctl in.
Don’t you agree?
Then when you create methods, you just have to make sure you only use the Visibility and not the Method Location option in the Create Method dialog.
Do I need to handle the Flat folder structure in any other action?
I’m uploading this build soon, (Q2K)
Cheers,
Mikael
I'm not to fond of having a Protected folder that you must not put your protected method in that is confusing. I have no problem with a folder for the ObjectAttributes.ctl because you don't want to move that around. Maybe an other name for the folder, but then again the ObjectAttributes.ctl are protected. I don't know.
When you create methods it should not be possible to use the Method Location option in the Create Method dialog (if the flat structure is selected), it should be grayed out or something.