Scribus UI/UX improvements

Previous topic - Next topic

tim_occ

Hi guys,

I made an update of the Indigo branch. Now it is based on Scribus 1.5.3 master branch which includes all changes until today.
https://github.com/nitramr/scribus-indigo

----

So, I want to share my minds with you about the horizontal panels.
I agree with Garry, Scribus' workspace should fit to the user, for beginners and professionels. Why not support horizontal panels?
It is possible if we put all panel ui elements in small blocks. See image in attachement. In this way we can have a "floating" layout. But this solution will break if not all elements can fit in such "static" blocks, like list views.

Here is an example for a vertical layout (elements can group into 2-row blocks):
https://docs.google.com/presentation/d/1JRs-9VUaZGjG3Dvyci2DCpwIpYQLR8IZv485hjujdEk/edit#slide=id.g1b39926b0d_0_4

Here is an example for a horizontal layout (you can see the 2-row blocks better):
https://docs.google.com/presentation/d/1JRs-9VUaZGjG3Dvyci2DCpwIpYQLR8IZv485hjujdEk/edit#slide=id.g1d20649765_0_14

Let me know what you think about.

regards,
Martin

[attachment deleted by admin]

GarryP

I think both of the options look great.

If the elements are grouped into blocks/panels that are added to a flow layout (or whatever the Qt equivalent is) then the UI should be able to handle both without much extra coding. Let the user give the orientation and size of the area and let the UI/API figure it out. That's what all these layout manager classes are for.

I understand that some list views won't work well - e.g. colour selection (if it's kept as it is, and, really, should it not just be a simple drop-down?) - but there are some parts of the UI - e.g. "text flow around frame" - where a simple drop-down list would make the UI much cleaner and help to avoid that problem.

If there's a part of the UI that doesn't fit into a flow layout then maybe it's time to have another look at it and see if it can be done differently.

I think a basic point is that even if the user uses a landscape-oriented monitor and wants all of their palettes and things at the top and bottom of the screen leaving only a "letterbox" of space for the document then they should be allowed to do that. There's no right or wrong way, there's just the way the user wants to have it for whatever reason they want, and Scribus should allow for it.

MrB

So I agree, and it was my plan anyway to support vertical and horizontal layouts.
So I could show both at the same time, its not in preview mode, but I think we can achieve both with the same raw .ui file. In fact, we might be able to just lump all widgets unordered onto a blank dialog ui and then use stylesheets to set the x/y locations. The problem then becomes scaling to UI DPI etc. Anyway, sample screenshot attached.

[attachment deleted by admin]

tim_occ

Hi MrB,

another solution could be the Qt Flow Layout:
http://doc.qt.io/qt-5/qtwidgets-layouts-flowlayout-example.html

As I know it handle automaticly the "breaks" of the child elements based on the layout container width. Maybe it fits better to our layout than stylesheets.

regards,
Martin

MrB

Hi Martin

It might present some options for coding re-layout. The example shown is a bit too fluid for what we would want but it might show some ideas in the code that could be useful.

Craig

MrB

I just built the latest indigo..
- something's funny with the icons.. always very light, to the point of being unusable.
- I don't like how the properties palette becomes empty when no item is selected, although I understand why in context.

Other than that its a good thing so far.

I haven't read the code much yet so I don't know if the base changes are what we would want with the newer "broken up" palette thoughts.
The idea of splitting the palettes up more, eg so XYZ (with some others perhaps like rotation) would be more flexible and get around the issue of not having palettes making sense (ie like the PP being blank right now per the above)

What about the limited docking options in current Qt?
Would we need our own docking container that docks into the current Qt areas and then our palettes dock within that? I guess thats not unlike what is done now in indigo but also would cover the horizontal option where multiple small palettes can fit together.



afincato

Any good soul willing to quickly explain how to properly build Scribus Indigo on macOS w/ homebrew?

I'm having problem as reported here — https://github.com/nitramr/scribus-indigo/issues/46.


Thanks,
af

GarryP

I only managed to build Scribus from source on OSX via some very patient hand-holding by another user.
There was a lot of "try this, then this, oh it didn't work, try this instead, ah you're missing that, so do this, then that, what do you mean that's not what it says, okay then try this other thing" etc. etc.
I would suggest using the #scribus IRC channel on freenode.net to get some real-time support, if it's available (always ask nicely). Doing this via the forum will probably be a bit like playing chess by post when you're not sure of the rules.

Interfacetestedbychildren

hello tim_occ

i just found another interesting approach on dtp programs
with a imho very clean and intuitive user interface

done by https://www.belightsoft.com/products/printworks/

apparently it lacks on the options side
it s also not open,
but maybe its a interesting thing look at.

A mouse menu (like krita) fired by a shortcut to toggle between the tools
could be an interesting idea how to save some precious space
and get even more of the worked on document to be displayed somewhere in the future.
Just to have something to think/dream about for the long terms :)

I hope this an interesting information
and i also want to take this opportunity to thank you for the amazing work you all have done so far.
I know it's pretty damn hard to actually change something.

For me it's like a miracle, everytime i read through this feed and see how it evolved over the years. It makes me smile.
It might seem like a small step sometimes, but if you look at it for them long term period it changes things pretty massive.

this is just for documentation purposes, I have no time right now, just money :(
but I will be here for the next years if I can.

Thank you and have a great time.

tim_occ

Hi Interfacetestedbychildren,

thanks for your warm words, it is a great motivation to keep on it. :D
I checked out the webpage of this tool and it looks pretty nice. Could it be that this tool has been called "Swift Publisher" in the past? I have it already in my list of DTP's

https://docs.google.com/presentation/d/1JKMucX1c4wzxVbpJShCLpjJYiVEXCUORo6M8pXJXkws/edit?usp=sharing

But I added yours as a new one too.
Just an update at this point: The development for the new UI doesn't stopped, but it's just a bit slow :(

regards
Martin

radu81

Congrats for this project!
When thus will be included into scribus I think many people will change their opinion about scribus.

I only saw the screenshots, but as soon as I can I will test it
sorry for my bad english

PeterBenedek

#251
Hi Martin!

This is great project. I congratulate you.

I'm really looking forward.

May the Force be with you!    ;D

regards

Peter (and the whole Hungarian Scribus team)

tim_occ

#252
I'm happy to announce some progress for new UI-Layouts.

Currently I have created some custom dynamic UI widgets which can handle pre-built layout files. So, easy to create UI's via Qt Designer instead of programing. ;)
Nothing is integrated yet in Scribus so far but I plan to create all needed layout files at first and than try to connect the wires in Scribus.

Take a look to the first UI redesign in attachement. The UI is organized in floating blocks to suppport horizontal layouts.

BTW: the latest UI Widgets are on Github: https://github.com/nitramr/IndigoUIWidgets

Whats done?
- Layout for Property Panel (Frame)

Whats left?
- Property Panel (Frame) advanced menus
- Property Panel (Content) + advanced menus
- Text Panel + advanced menus
- Color Picker (Solid, Gradient, Pattern)

regards,
Martin

[attachment deleted by admin]

tim_occ

Hi guys,

I want to give an update to you about my progress. A big part of the text properties panel is shining in a new design. But at this moment a lot of small details have to be adjusted.

The "new" Scribus is available in a Scribus fork on GitHub for selfcompiling. But at this moment Scribus crashes after closing the document. If someone wants to figure out the reason why it would be great.

https://github.com/nitramr/scribus

regards
Martin

[attachment deleted by admin]

PeterBenedek

Hi Martin

This is a very nice job. Congratulations.