issue-#163 Adding 'Decimal' Tabs to Rulers

Merged to the master branch

Re: issue-#163 Adding 'Decimal' Tabs to Rulers

Postby Robert » Tue Jul 04, 2017 12:39 pm

Josef Templ wrote:@1: it is not possible to link to a CHAR, only ARRAY OF CHAR works.

Of course, I had forgotten that (I use CtlsSliders.NewCharField from the CPC site).

I think this is now ready for voting.
User avatar
Robert
 
Posts: 1023
Joined: Sat Sep 28, 2013 11:04 am
Location: Edinburgh, Scotland

Re: issue-#163 Adding 'Decimal' Tabs to Rulers

Postby Ivan Denisov » Wed Aug 30, 2017 4:05 am

I am adopting some of Center features for Obertone Freenix version of BlackBox.

Importing HostPorts to Text subsystem is bad idea. It breaks hermeticity of Text subsystem.

Better use Ctrl key in Track procedure.
Code: Select all
               modify := Controllers.modify IN msg.modifiers;
               GrabMark(m, r, f, msg.x, msg.y, ~modify);
               IF (m.kind = tabs) & modify THEN


I adopted this feature that way.
Ivan Denisov
 
Posts: 1698
Joined: Tue Sep 17, 2013 12:21 am
Location: Russia

Re: issue-#163 Adding 'Decimal' Tabs to Rulers

Postby Josef Templ » Wed Aug 30, 2017 10:15 am

Ivan Denisov wrote:I am adopting some of Center features for Obertone Freenix version of BlackBox.

Importing HostPorts to Text subsystem is bad idea. It breaks hermeticity of Text subsystem.

Better use Ctrl key in Track procedure.


Ivan, In principle I agree that importing HostPorts in TextRulers should be avoided
but I didn't find a better solution.

The problem with your approach is that it changes existing behavior.
Both, extend and modify, are already used for tabs.

HostPorts.right is also used in DevDependencies. It is the same problem there.
Replacing HostPorts.right by the constant 18 would be even worse, obviously.

A clean solution would require to add another high-level modifier for mouse-right clicks to Controllers.TrackMsg.modifiers.
Something like 'context' (or 'menu' or 'properties' or 'popup') because mouse-right is usually used for opening a context menu of an object in the Windows GUI.
A simple and 'compatible by construction' approach would be to use the constant 18 (HostPorts.right) for that new modifier.
This effectively raises the platform specific concept of a mouse-right click to a high-level concept.
The ugly point here is that until now the platform specific modifiers are >= 16 (by convention) and this no longer holds then.
A cleaner approach therefore would be to add a new constant (e.g. context = 3) that is included in modifiers together with
the platform specific value HostPorts.right. I don't know if this causes any incompatibilities in existing mouse tracking procedures
but probably it will work without any problems.

I have put together an experimental clean version in issue-#163. Eventually, it will deserve a new issue because it also affects DevDependencies.
See diffs at https://redmine.blackboxframework.org/projects/blackbox/repository/diff?utf8=%E2%9C%93&rev=bca4eeb3427b3ce9c5eedcbcbd2a00c23c013ccb&rev_to=7ee4ded8c62f8384496cb27c274658982824bd7b.

- Josef
User avatar
Josef Templ
 
Posts: 2038
Joined: Tue Sep 17, 2013 6:50 am

Re: issue-#163 Adding 'Decimal' Tabs to Rulers

Postby Ivan Denisov » Sun Sep 03, 2017 7:21 am

Josef Templ wrote:
Ivan Denisov wrote:I am adopting some of Center features for Obertone Freenix version of BlackBox.

Importing HostPorts to Text subsystem is bad idea. It breaks hermeticity of Text subsystem.

Better use Ctrl key in Track procedure.


Ivan, In principle I agree that importing HostPorts in TextRulers should be avoided
but I didn't find a better solution.

The problem with your approach is that it changes existing behavior.
Both, extend and modify, are already used for tabs.


Ctrl was used to add vertical line. Now it is also can be used to add vertical lines with new dialog window. So there is not much inconvenience in that change.
Ivan Denisov
 
Posts: 1698
Joined: Tue Sep 17, 2013 12:21 am
Location: Russia

Re: issue-#163 Adding 'Decimal' Tabs to Rulers

Postby Ivan Denisov » Sun Sep 03, 2017 7:26 am

Josef Templ wrote:A clean solution would require to add another high-level modifier for mouse-right clicks to Controllers.TrackMsg.modifiers.
Something like 'context' (or 'menu' or 'properties' or 'popup') because mouse-right is usually used for opening a context menu of an object in the Windows GUI.
A simple and 'compatible by construction' approach would be to use the constant 18 (HostPorts.right) for that new modifier.
This effectively raises the platform specific concept of a mouse-right click to a high-level concept.
The ugly point here is that until now the platform specific modifiers are >= 16 (by convention) and this no longer holds then.
A cleaner approach therefore would be to add a new constant (e.g. context = 3) that is included in modifiers together with
the platform specific value HostPorts.right. I don't know if this causes any incompatibilities in existing mouse tracking procedures
but probably it will work without any problems.


I like this idea, because initially (I guess) BlackBox was aimed for mac with only one mouse button. So there is lack of basic controls states. The "context" can help in many cases.
Last edited by Ivan Denisov on Sun Sep 03, 2017 10:06 am, edited 2 times in total.
Ivan Denisov
 
Posts: 1698
Joined: Tue Sep 17, 2013 12:21 am
Location: Russia

Re: issue-#163 Adding 'Decimal' Tabs to Rulers

Postby Josef Templ » Sun Sep 03, 2017 9:24 am

Ivan Denisov wrote:I like this idea, because... The "context" can help in many cases.


Right. It solves, for example, the same problem in DevDependencies.
Maybe there are more examples in CPC packages.

When I added the decimal tabs I actually thought about this option but was afraid to make too many changes.
Now it turned out to be a surprisingly simple change and so far I have not observed any incompatibilities.

- Josef
User avatar
Josef Templ
 
Posts: 2038
Joined: Tue Sep 17, 2013 6:50 am

Re: issue-#163 Adding 'Decimal' Tabs to Rulers

Postby Robert » Sun Sep 03, 2017 2:23 pm

Josef Templ wrote:A clean solution would require to add another high-level modifier for mouse-right clicks to Controllers.TrackMsg.modifiers.
Something like 'context' (or 'menu' or 'properties' or 'popup') because mouse-right is usually used for opening a context menu of an object in the Windows GUI.


This sounds like the start of a good solution, but, for me, the main part of a clean solution is to improve the Docus.

As a Windows user I am familiar with the ideas: Left-mouse-click, centre-mouse-click, right-mouse-click, Shift-key, Ctrl-key, & Alt-key. However how they map onto the BlackBox implementation and documentation (eg modify & extend, and now context) is not intuitive or documented accessibly.

Text/Docu/User-Man talks about ctl& alt keys (see sections 4 & 7) with no immediate mapping to the ideas modify & extend.

The mapping is given in System/Docu/Controllers, but not as clearly as I would like. I can't find this platform specific mapping in the PSI document. I thought it was mentioned in some higher level user manuals, but can't find it now.

I would like to see a clear table giving the full mapping (for Windows, and any other platforms where it makes sense). This table could be in one place, with links to it from other places where these ideas are currently mentioned.
User avatar
Robert
 
Posts: 1023
Joined: Sat Sep 28, 2013 11:04 am
Location: Edinburgh, Scotland

Re: issue-#163 Adding 'Decimal' Tabs to Rulers

Postby Josef Templ » Sun Sep 03, 2017 9:27 pm

Robert wrote:The mapping is given in System/Docu/Controllers, but not as clearly as I would like. I can't find this platform specific mapping in the PSI document. I thought it was mentioned in some higher level user manuals, but can't find it now.

I would like to see a clear table giving the full mapping (for Windows, and any other platforms where it makes sense). This table could be in one place, with links to it from other places where these ideas are currently mentioned.


The platform mapping should be added to the P-S-I document, I think.

I don't know how the ALT-key is currently handled. This seems to be more tricky than shift and ctrl.
It is strange that the ALT-key is mentioned in the docu as if it were a high-level modifier.

- Josef
User avatar
Josef Templ
 
Posts: 2038
Joined: Tue Sep 17, 2013 6:50 am

Re: issue-#163 Adding 'Decimal' Tabs to Rulers

Postby Josef Templ » Sun Oct 15, 2017 10:06 am

I have now renamed the docu file to Tab-Dialog as discussed for issue-#175.

The diffs at https://redmine.blackboxframework.org/projects/blackbox/repository/diff?utf8=%E2%9C%93&rev=0be5dc697555881579ead79e8032ff26f2745948&rev_to=094238173d9a1c3115206e7f202f693b568ee07a shows the renaming but not the changes required for referencing this file. There are two such references, viz. Help button in the dialog and Text/Docu/User-Man.
They have been changed accordingly.

Remark: One more such renamings would be required for issue-#105 of BB 1.7 where the Preferences Help text has been added.
Host/Docu/Prefs needs to be renamed to Prefs-Dialog.

- Josef
User avatar
Josef Templ
 
Posts: 2038
Joined: Tue Sep 17, 2013 6:50 am

Previous

Return to Resolved (Features)

Who is online

Users browsing this forum: No registered users and 1 guest

cron