Hello again,

The demo selection filter is going along nicely, but I've been thinking 
about extending the filter to be able to filter all element types. Right 
now I have defined a new enum that contains, 4 voice types for each of 
the voices, articulation, dynamic, lyrics. After fixing the text 
elements behavior for selections, I have realized that there should be a 
way to filter any text element. Why should we limit other types as well?

My only arguments against adding a filter for each time, is the 
selection window. There are more than 60 element types, and it would be 
difficult for the user to pick the filter he/she may want. A partial 
solution to this would be similar to the palette widget. The window 
would be organized by grouping element types into groups. There would be 
a checkbox for a element group, and for each element. Checking the group 
checkbox, would enable filters for all elements in the group. A user 
could also hide the category contents, and just work on the groups.

The other argument is that the filter would have to be extended to hold 
enough bits for each element type.
This could be solved by a std::bitset, so it's not that much of a problem.

Changing it to more specific elements would also allow to add a new 
interesting functionality, where a user would right click on an element 
and add or remove the element type from the selection. Right now this is 
impossible, because a user might want to keep an element type, that 
shares the same filter with the element that is deselected.

I have also decided to create a list of possible actions that use a 
list. Later I will make sure that all these actions work correctly with 
the filter.

1. Cut - Copy - Paste
2. Delete
3. Inspector - modification of elements properties
4. Toggle visibilty
5. Change voice
6. Move notes an interval higher/lower

Is there anything else I have missed?

I would greatly appreciate your input.

Cheers,
Bartłomiej

------------------------------------------------------------------------------
HPCC Systems Open Source Big Data Platform from LexisNexis Risk Solutions
Find What Matters Most in Your Big Data with HPCC Systems
Open Source. Fast. Scalable. Simple. Ideal for Dirty Data.
Leverages Graph Analysis for Fast Processing & Easy Data Exploration
http://p.sf.net/sfu/hpccsystems
_______________________________________________
Mscore-developer mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/mscore-developer

Reply via email to