FLTK logo

STR #3460

FLTK matrix user chat room
(using Element browser app)   FLTK gitter user chat room   GitHub FLTK Project   FLTK News RSS Feed  
  FLTK Apps      FLTK Library      Forums      Links     Login 
 Home  |  Articles & FAQs  |  Bugs & Features  |  Documentation  |  Download  |  Screenshots  ]
 

Return to Bugs & Features | SVN ⇄ GIT ]

STR #3460

Application:FLTK Library
Status:1 - Closed w/Resolution
Priority:1 - Request for Enhancement, e.g. asking for a feature
Scope:3 - Applies to all machines and operating systems
Subsystem:FLUID
Summary:Small fluid annoyance bugs
Version:1.4-feature
Created By:greg.ercolano
Assigned To:matt
Fix Version:1.4.0
Fix Commit:4f2febd801eadce214189f119090cbe0bb9c05b1
Update Notification:

Receive EMails Don't Receive EMails

Trouble Report Files:

No files


Trouble Report Comments:


Name/Time/Date Text  
 
#1 greg.ercolano
19:19 Mar 31, 2018
Combining several into one -- sorry, I just don't have time to make
separate reports for stuff like this, so unless I do it this way,
I won't end up doing it at all, because they're small things.

o While typing into the widget properties dialog under C++ -> Comment,
  checking of ()'s needs to be turned off. As soon as you type an
  open paren, it immediately posts a dialog complaining about a
  missing closing paren. Ditto for curly braces. Even deleting a paren
  or curly brace immediately posts a warning dialog.. while you're still
  typing.

o It appears the scrollbar is not recalculated after copy/paste
  operations, and/or moves with F2. This can best be seen with large
  trees (over a page of items). Select a bunch of items at the top and
  move them down with F3 seems OK, but moving them up again with F2, the
  scrollbar doesn't update correctly, giving very misleading position
  info to the user.
 
 
#2 greg.ercolano
17:22 Apr 03, 2018
o When "Code Properties" is opened, horiz/vert scrollbar positions
      of last edit are remembered, but cursor position is not (it's
      always at the top of the text). So either the cursor position
      needs to be remembered, or the scrollbars reset to the top/left.

    o Shell->Command should be saved in the project if set, so any
      'make' commands to build the project are saved with it. Perhaps
      these commands should be saved per-platform, or perhaps
      per-hostname, so the same fluid file can be used to build in
      each environment.
        
    o When a shell command is running, it pops open the 'shell output'
      window /centered under the mouse/. It would be better IMHO if it
      left the shell output window where the user last positioned it,
      and didn't always try to track the mouse. Or perhaps a GUI option
      can be made for this.
    
    o There should be separate items in New -> Menus for
      Toggle and Radio Item. Currently you have to create a menu item,
      and then change the untitled chooser at the upper right of the
      C++ tab from "Normal" to "Toggle". This is obscure, and is likely
      as confusing to new users as it is hard to remember for seasoned
      users.
 
 
#3 matt
14:07 Jan 13, 2019
Commenting issue fixed in 1.4  
 
#4 matt
14:09 Jan 13, 2019
As for the tree view, this is actually a list that uses a lot of trickery to implement comments, indentation, arrows, and icons. It would be best and kind of obvious to use Fl_Tree instead :-)  
 
#5 matt
14:36 Jan 13, 2019
Code Properties cursor position saved in Code_Type (not for external editor, not saved in fl file)  
 
#6 matt
14:50 Jan 13, 2019
As for saving 'make' commands, well, the dialog already saves the last issued command in the Fluid preferences. I understand that this is different to your suggestion, however I am unsure if two features should be layered on top of each other here. Suggestions?  
 
#7 matt
15:12 Jan 13, 2019
Shell result window remembers position and size.  
 
#8 matt
16:17 Jan 13, 2019
Added menu styles to "New..." pulldown menu  
 
#9 greg.ercolano
12:10 Jul 09, 2020
Thanks Matt for the fixes.

Regarding comment #6 and the "Shell" commands being saved in the .fl file vs globally for the user, I guess if that's not viable, what's the recommended practice for a user running fluid to manage multiple projects each with separate "Shell" commands?

Perhaps the suggestion would be 'Make the Shell command run the same command no matter what the project is, e.g. 'make build-and-run 2>&1', so that project specific commands are in the Makefile, not the command.

Which I guess would be fine if this were documented, but because it's not people are free to make up their own per-project build commands, which might vary a lot more, such as building a widget vs. an application.

From what I've seen of IDEs, they save build commands as part of the project, though I'm not sure how they handle multiple platforms. Visual Studio is a bad example because it assumes only its own platform, and that's the only IDE I'm familiar with. Xcode is probably the same.
 
 
#10 greg.ercolano
12:18 Jul 09, 2020
I figure I should fix my mess a bit by reposting the suggs, identifying
each with a letter (something I should have done from the beginning),
and mark which ones have been fixed so far:

[A] While typing into the widget properties dialog under C++ -> Comment,
    checking of ()'s needs to be turned off. As soon as you type an
    open paren, it immediately posts a dialog complaining about a
    missing closing paren. Ditto for curly braces. Even deleting a paren
    or curly brace immediately posts a warning dialog.. while you're still
    typing.
    (DONE: Matt, comment #3)

[B] It appears the scrollbar is not recalculated after copy/paste
    operations, and/or moves with F2. This can best be seen with large
    trees (over a page of items). Select a bunch of items at the top and
    move them down with F3 seems OK, but moving them up again with F2, the
    scrollbar doesn't update correctly, giving very misleading position
    info to the user.

[C] When "Code Properties" is opened, horiz/vert scrollbar positions
    of last edit are remembered, but cursor position is not (it's
    always at the top of the text). So either the cursor position
    needs to be remembered, or the scrollbars reset to the top/left.
    (DONE: Matt, comment #5)

[D] Shell->Command should be saved in the project if set, so any
    'make' commands to build the project are saved with it. Perhaps
    these commands should be saved per-platform, or perhaps
    per-hostname, so the same fluid file can be used to build in
    each environment.
    (Discussion)
        
[E] When a shell command is running, it pops open the 'shell output'
    window /centered under the mouse/. It would be better IMHO if it
    left the shell output window where the user last positioned it,
    and didn't always try to track the mouse. Or perhaps a GUI option
    can be made for this.
    (DONE: Matt, comment #7)
    
[F] There should be separate items in New -> Menus for
    Toggle and Radio Item. Currently you have to create a menu item,
    and then change the untitled chooser at the upper right of the
    C++ tab from "Normal" to "Toggle". This is obscure, and is likely
    as confusing to new users as it is hard to remember for seasoned
    users.
    (DONE: Matt, comment #8)
 
 
#11 greg.ercolano
12:42 Jul 09, 2020
I'll see if I can fix [B].

I'm guessing that's a simple recalc call that needs to be made whenever there's changes to the Fl_Browser, or whatever the fluid tree is based on.

It'd certainly be a good thing to be refitted with Fl_Tree, but I hate to make a huge diff for something that works well as is. Not really sure how easy a refit would be; depends on how deeply into the code the existing widget design is.
 
 
#12 matt
05:24 Dec 05, 2021
Summary:

 - typing into comments had been fixed
 - recalculating the scrollbar has *not* been fixed
 - Code Properties curser position *is* saved, but text editor scroll position is *not* saved. We must make sure that the cursor is visible.
 - Shell->Command *not* saved in project
 - Shell Result window position *is* fixed, but
 - on MacOS, saving the .cxx file from Shell will crash Fluid
 - check and radio menu item should also go into the widget bin
 
 
#13 matt
14:41 Dec 05, 2021
FIXED: saving the .cxx file from Shell will crash Fluid
FIXED: - check and radio menu item should also go into the widget bin
bottom left image

TODO: - recalculating the scrollbar has *not* been fixed
TODO: - Code Properties curser position *is* saved, but text editor scroll position is *not* saved. We must make sure that the cursor is visible.
TODO: - Shell->Command *not* saved in project
 
 
#14 matt
10:01 Dec 08, 2021
DONE: - Code Properties curser position and scroll positions are now saved

TODO: - recalculate the widget browser scrollbar when nodes are inserted and deleted
TODO: - Shell->Command and parameters should saved in .fl design file
 
 
#15 matt
11:55 Dec 08, 2021
DONE: - recalculate the widget browser scrollbar when nodes are inserted and deleted, hope I caught all cases

TODO: - Shell->Command and parameters should saved in .fl design file
bottom left image
 
 
#16 matt
17:50 Dec 08, 2021
DONE: - Shell->Command and parameters should saved in .fl design file
bottom left image

The dialog box now has an option to load and save settings with .fl files. It can change the default shell settings, and it will save different settings for every operating system (Windows, Linux, macOS), so different commands can be run on different machines.
 
     

Return to Bugs & Features ]

 
 

Comments are owned by the poster. All other content is copyright 1998-2024 by Bill Spitzak and others. This project is hosted by The FLTK Team. Please report site problems to 'erco@seriss.com'.