I have been on to this thing a couple of times but i have not been able to express myself clearly enough previously and so no one with the skills has been able to find a viable solution or even understand what I’m on about.

I have been on to this thing a couple of times but i have not been able to express myself clearly enough previously and so no one with the skills has been able to find a viable solution or even understand what I’m on about.

I work i a VM (VirtualBox). If the host and the VM both has 100% both this is not a big problem. But when the host has a smaller (15 inch) scaled 4K screen and the VM is forced to use scaling, the painting of the IDE gets slower. If the host has 250% scaling the paining in the VM is even worse. Syrup.

I usually have the IDE in MDI-mode, i think that is what it is called. I have a docked set of windows to the bottom (100% width), one docked set to the left (commonly structure, object inspector) and one to the right (project manager, tool palette, et. al).

The problem is that when the IDE switches from Default Layout to Debug Layout it takes too long to repaint everything in the above described circumstances. Key here is of course that the Default and the Debug layout has slightly different windows active in the different "panels" (or as i wrote above set of windows) but this is ok and should remain so.

What would save me a LOT of time when working (code - compile - debug cycle) is if i could tell the Debug layout to:

* Have the same Left, Top, Width and Height and WindowState (maximized or not) as the Default layout.
* Have the three "sets of windows" to have the same docking (they do anyway so not a problem) but more importantly the same height and width.

I have tried to BeyondCompare and edit the Debug Layout.dst file, but to no avail. A boon would be to have a button "Update Debug Key/Selected Metrics from Default", because as i work and debug GUI code i often resize the IDE. Much more often than i move things around.

Any ideas are hugely appreciated.

Multiple monitors solve this problem partially as I do not have to allow space for the debugged application and can have the IDE maximized both for Default and Debug, but the painting still takes a lot of time when the width and height of my “window sets” changes.

If i could not express myself clearly this time too i'll have to download some video capturing stuff and learn to handle that too.

TIA

/D

Comments

  1. Oh, and if i do "Save this layout as: Debug Layout" i loose the differences in what actual windows are in the three "sets of windows" so that is not a solution :(

    ReplyDelete
  2. I hate to suggest this, but I think it's an age-related issue. Once you're at a point where you regularly need reading glasses, small monitors running 4k resolution are useless. Sadly, I can no longer read a 27" HD monitor without reading glasses; forget a 27" 4k monitor!

    I guess younger eyes can see finer details afforded by Apple's Retina screens for example, but I sure can't. The screen on my 15" MacBook Pro with its Retina display is pretty much useless by itself, since I can't read a lot of stuff without magnifying the fonts or windows. (Apple actually does a great job of supporting this, unlike Windows.)

    (On a side note, I think marketers who think all of this ultra-high-res stuff on mobile devices is meaningful to older folks with reading glasses are NUTS! It's silly for me to upgrade my phone to get full HD resolution in my palm when it literally wouldn't look any different to me than a 640x480 display in the same size device.)

    Why someone gets, say, a 24" monitor running at 4k then runs into problems "scaling-up" so they can read things inside of windows that need to be magnified 200% to 400% is beyond me.

    I have a 55" 4k TV set up to work as a monitor that's plugged into my MacBook Pro. It's ONE SCREEN. Only it has the resolution of four (2x2) 27" HD monitors.

    I run Delphi inside of VirtualBox, and I imagine I can maximize the VM to fill the entire frigging screen with the Delphi IDE if I wanted to. The Good News is ... it runs at 100% natural resolution with no need to magnify anything. It's STILL a PITA to read even with my reading glasses at times! But it's a heckofalot easier to manage one resizable window on a super-large canvas like that without having to deal with artificial boundary issues that would come by having a 2x2 layout of 27" monitors on my desk.

    The only thing that might be nice is to have separate dev and debug windows so I could have them both open in different parts of the display, maybe inside of separate VMs rather than all inside of the same IDE. That's feasible with a 55" 4k display area, but not a 24" display.

    If you don't need reading glasses yet, you might try a 40" 4k TV, which would be equivalent to a 2x2 array of 20" monitors. I cannot imagine running 4k at smaller physical layouts than that, as normal 10 pt text would look like 4pt text on any normal-sized device. Maybe you need some jeweler's glasses instead?

    In other words, why bother with a 4k monitor that's got such a small display area that you're forced to MAGNIFY things to read anything? This seems to be the crux of your problem, IMHO. ;-)

    ReplyDelete
  3. David Schwartz i have two sets of glasses :) and one more or less useless shoulder (work-related). I also have clients using ZoomText / JAWS and other accessibility stuff. I like to think of myself as rather well informed ergo-police, 30 year-old's around do listen to what i have to say, alas with a smirk on their faces.

    That said; i went for one big screen last year. Not av TV, a real computer screen! It is GREAT. However my situation demands that i do some work while away from office.

    BUT - the above holds even for having a BIG screen. Especially when working on GUI projects with a lot of stored components. As i said, the performance goes down almost critically when the host is scaled, but IMHO is not good enough either way.

    I use a XEON E-3 1245 with itäs HD Graphics P4600. Perhaps i should buy a graphics card? Would that really help? I do not think the VM will have any use for it and i guess IDE painting demands calculations done mainly on the CPU i one thread.

    I will never go back to two monitors as my shoulder will only get worse having to swivel my head all day long.

    Even though having one big screen i realize now when trying that i can set the VM to use two monitors and put 1 and 2 up beside each other. Another thing that helps a bit is to use Crtl+Shift+F9 when i don not need to trace.

    Even with the big nice screen (100% host, 100% VM) the IDE repaints itself slooooowly... :(

    Also i need to test scaling for the GUI projects, to be sure of good testing on the same machine i /should/ log out and log in when changing the scaling. That is a pain in itself. Having the 4K laptop on the side breaks my shoulder. But any actions with the .dst-files won't help for that.

    I will move on and maybe run the IDE in a profiler to see if i can catch the culprit. When and if i have the time.

    Thank you for you input and regards!

    ReplyDelete
  4. For anyone interested, running the IDE non-maximized for advanced GUI projects is a PITA. Now i run a VM with the IDE maximized in one window and set the VM to use two screens. Even if i have a one-monitor system i can simulate a two-monitor one by enabling a second virtual screen that i have to the right on the big screen.

    Thus i do not have to wait as much for all the repainting between design and debug and can do serious GUI debugging too.

    I just have to concentrate of non-GUI or small projects when on the road with my laptop.

    Greets!

    ReplyDelete

Post a Comment