I know we can change the stacking order of layers in the Object Manager/Layer Manager View. But I can't find an opportunity to change the stacking order of the layers for all pages at once, you seem to have to do that manually on each page. If only the Master Layers were stacked at the bottom by default this wouldn't be a big problem, but they are not, according to the Help file:
"By default, the master layers are applied above local layers. You can change the order of the master layers relative to local layers by clicking a page name, enabling the Layer manager view button at the top of the Object manager docker, and dragging a layer name to a new position in the layers list."
I can't se the logic of that decision to make the Master layers on the top as default. Normally (at least for me) I want some page background appear on all sides, then I of course want them at the back.
So, if there isn't a tool for changing the stacking order for all pages in one command, please make one. I believe this was easier before we got independent layers on every page. But since we have that now, we also need more powerful tools to handle them. This also goes for grid and guideline layers.
I might be wrong, since this is such a glaring omission if true, so please direct me to the button for changing the layer stacking order for all pages if there is one. I mean, do they really mean that we should do this by hand for each page separately???
Hello Lars
We all are missing you.
I do not use X4 & X5 for jobs with critical layer layouts. BTW this is known to Corel and I think Brian has a macro to handle layer stacking. I have written a macro, which I use in my some jobs that I create in X4, X5, which adds or deletes layers from all or selected pages. However I have'nt got into stacking part of layers in my macro. But it needs some more love from Corel for sure.
Hello Anand,
Well, I am here now As soon as I work with Draw something pops up that I have to write about. It's just that I don't do that so often now for work reasons. But you might have noticed I have entered some new discussions here lately.
Anyway, a macro would be handy, but a button "Apply to all layers" at the top of the Object manager would be even better. I am not really friends with macros. They tend to disappear when you upgrade and when you must restore you workspace. Hate that.
And I suppose your answer means that this problem isn't solved by Corel yet. Yet I think it's been there for two versions now. Next SP?
Yes. I am waiting for it too.
Lars Forslin said: And I suppose your answer means that this problem isn't solved by Corel yet.
Lars Forslin said:Next SP?
Hi all,
I don't think it's a big problem. I guess Corel have more important thing than this. Use this:
Sub LayersMoveTo() Dim targetLayer$ targetLayer = InputBox("Type name of target layer", "Choose...", "") If targetLayer = "" Then Exit Sub Dim p As Page, l$, al As Layer l = ActiveLayer.Name For Each p In ActiveDocument.Pages p.Activate For Each al In p.LayersIf al.Name = targetLayer Then'here you can choose which function use. Now active MoveBelow function 'p.Layers(l).MoveAbove p.Layers(targetLayer) 'Move above target layer p.Layers(l).MoveBelow p.Layers(targetLayer) 'Move below target layer Exit For End If Next NextEnd Sub
Select a layer which need to move and run this macro...
Sancho
Thanks a lot for sharing. I shall use it and see if works for me as I need. First impression after going thru your code : I think it will not move master layers.
There's no problem for you and those familier with using or writing macros, sancho. For normal users its
Sancho said:I don't think it's a big problem. I guess Corel have more important thing than this.
For Desktop use this line in the macro
p.DesktopLayer.MoveBelow p.Layers(targetLayer) ' or MoveAbove
Well, if it's so easy, why don't they fix it?
Frankly, I don't know what to do with your code. I know a lot of stuff, but my areas of expertise ends here.