before I start to run around in circles, I'm releasing it now - I've become blinkered anyway.
Edit/Update June 2014: I think, I won't update it anymore, see here for a simple replacement using new functions build-in to XY.
---------------------
Edit: The current release is LayoutManager-1.1.
---------------------
---------------------
Edit: The current release is LayoutManager-1.0.
---------------------
It started here, especially this statement
told me to go for it, because it's the kind of 'challenge' I can dare to take.admin wrote:Technically it would be possible and quite easy to add.
So here it is: LayoutManager 0.5 alpha, the combined outcome of my first SC exercises.
What does it do?
Sure, XY is not a heavyweight gem such as an IDE (Eclipse or MS Visual Studio to name a few), where those layouts/perspectives are not only major time saviors, but undispensable essentials for effective coding. Nevertheless, I did find myself looking for single-click GUI-batch-toggle quite quick. After Don stated, this has been a almost-never-asked-for-feature and therefore isn't on top of his priorities (which is completely understood because it's his plain business after all), I decided to give it a try.
Not really surprising, the LayoutManager script does create, save, switch and delete what I call Layouts. I consider a Layout to mainly provide a snapshot of the visibility and relative positions of the major GUI elements at a given time. There's not really much more about it (at least, released by now). The rest is just bells & whistles.
The GUI component states the script can handle are restricted to those function IDs whose toggle states can be retrieved by calling
Code: Select all
get("#functionID");
Code: Select all
#800 Panes | Dual Pane
#801 Panes | Horizontal Panes
#660 Window | Show Address Bar
#661 Window | Show Toolbar
#662 Window | Show Tab Bar
#670 Window | Show Status Bar
#669 Window | Show Status Bar Buttons
#668 Window | Show Tree
#664 Window | Show Catalog
#665 Window | Show Info Panel
#685 Window | Wide Info Panel
#686 Window | Catalog Above Tree
#1061 Miscellaneous | General Functions | Show/Hide Main Menu
Code: Select all
#686 | Catalog Above Tree [DONE as of v1.1]
#666 | Last Size/Minimize Info Panel [no XY-internal state -> won't be done]
#667 | Maximize/Minimize Info Panel [no XY-internal state -> won't be done]
Install 'guide'
Simply unzip* to the <xyscipts>-folder of any XYplorer installation and create a custom-button with On-Click "load("<xyscripts>\LayoutManager\\LMMenu.xys")".
I recommend:
Unzip it somewhere and read <somewhere>\LayoutManager\resources\help\LM-help.xhtml first.
Because it's pointless, I skipped posting any code and would like to suggest to simply post selective script codes of interest for further discussion.
I really do wonder how many bugs/pitfalls I've overseen....
Update/just found: The menu seems to need at least two entries to be shown (xyplorer_v10.90.0100).
Cheers,
Filehero
@Don: Thanks a lot for raising the single attachment size limit.
Edit 12-03-23: Added script description//www