Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Toolbar #188

Closed
theczar opened this issue Aug 22, 2015 · 7 comments
Closed

Toolbar #188

theczar opened this issue Aug 22, 2015 · 7 comments

Comments

@theczar
Copy link

theczar commented Aug 22, 2015

How about adding a proper toolbar section, or at least the option to have it and be able to create/customize icons. It can be bit frustrating to always go throughout menus to find the commands if you can't remember all shortcuts.

@roederj85
Copy link

I don't know if this is SOP, but I would also like to see this happen. I miss having the toolbars from PTE of ages past.

@cameronwhite
Copy link
Member

If anyone is interested in tackling this, there is some old / disabled code for doing this in https://github.com/powertab/powertabeditor/tree/master/source/widgets/toolbox.

@nbrunett
Copy link
Contributor

I've been poking around at this, and I was wondering if QToolBars could be used. I was able to get something working with just the QActions used by the menus like so in Powertabeditor::createMenus

// Set icons.
myWholeNoteCommand->setIcon(QIcon(":images/whole_note"));
myHalfNoteCommand->setIcon(QIcon(":images/half_note"));
myQuarterNoteCommand->setIcon(QIcon(":images/quarter_note"));
myEighthNoteCommand->setIcon(QIcon(":images/8th_note"));
mySixteenthNoteCommand->setIcon(QIcon(":images/16th_note"));
myThirtySecondNoteCommand->setIcon(QIcon(":images/32nd_note"));
mySixtyFourthNoteCommand->setIcon(QIcon(":images/64th_note"));

// Add ToolBar.
myNotesToolBar = addToolBar(tr("Notes"));
addToolBar(Qt::LeftToolBarArea, myNotesToolBar);

// Add note actions.
myNotesToolBar->addAction(myWholeNoteCommand);
myNotesToolBar->addAction(myHalfNoteCommand);
myNotesToolBar->addAction(myQuarterNoteCommand);
myNotesToolBar->addAction(myEighthNoteCommand);
myNotesToolBar->addAction(mySixteenthNoteCommand);
myNotesToolBar->addAction(myThirtySecondNoteCommand);
myNotesToolBar->addAction(mySixtyFourthNoteCommand);
myNotesToolBar->addSeparator();
...

That's probably not where it should go, but it didn't require creating new classes. I could certainly be missing good organizational reasons to go the toolbox route, though.

Attached shows this in action, with just about everything from the Notes menu. Pardon the Mac dark mode making the button icons tough to see.
Screen Shot 2020-06-13 at 5 24 58 PM (2)

@cameronwhite
Copy link
Member

Thanks for looking into this!

The toolbar approach definitely could work. It's been a while, but I think the original idea of the separate widget was to have a side panel with a more complex layout of buttons (e.g. in several rows), so it really just depends on what UI design looks good (the old toolbox widget definitely was not great looking!)

One consideration would be how the toolbar interacts with dock widgets. Currently the mixer and instrument panels are fixed to the bottom, but if they're allowed to move then it would be good if the toolbars can be repositioned too

@nbrunett
Copy link
Contributor

Thanks for the quick feedback.

I'm not sure exactly how the toolbars and dock widgets would interact, if the docks were made moveable. But the toolbars can be moved to any of the four edges. When at the bottom they are above the mixer and instrument panels.

It looks like toolbars can be stacked, so they can be in multiple rows or columns. I'll keep adding things from the menus and open up a PR soon to get a quick review of that route.

Is there a list of toolbar buttons you would like? Or a layout you want to aim for? I've been taking some hints from GP7, with these types of buttons on the sides.

@cameronwhite
Copy link
Member

No problem, feel free to make a PR for some feedback!

I think I like the GP or MuseScore style layout with buttons on the side, since that frees up vertical room for the score (similarly I'd probably like to move the mixer / instrument panels to one side by default). I'd probably want most of the common note duration / notation and tab symbols in there as a starting point?

@cameronwhite cameronwhite added this to the Alpha 13 milestone Aug 2, 2020
@cameronwhite
Copy link
Member

Fixed by #300

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants