jacobpalm/costa

Feature request:Move icons betwen desktops.

Axle-Ozz-i-sofT opened this issue · 5 comments

Hi Jacob
After using 3 versions of Costa I have found the potential for a convenience feature.
Moving icons/links between desktops

Obviously this will require moving the data and xy position entry from one DB file to another and some code changes to switch the Read/Write to the other DB file.

I looked at the current icon options dialog and the current button arrangements are quite neat, so I don't feel that you would want to mess with that. There may be other options but I did look at the change desktop <- 2/5 -> option which is currently in use during the [Move] procedure to move the icon rather than change the desktop. Maybe there is a simple option somewhere in the use of the arrow keys '<-' '->' and the '<' '>' symbols without messing too much with the GUI coding.
You know your application better than anyone, so I will leave the thought in your hands :)

Version 1.7.4 has been working great and so far I have not encountered any issues. Well done with that :)
I do occasionally have problems with the CTMouse driver sensitivity when changing VESA modes for other graphics applications and returning to Costa but that is more to do with running FreeDOS in windowed mode in VirtualBox and nothing to do with Costa. The quick fix at the moment is to create an icon on the Costa desktop with CTMOUSE /R33 to reset the xy sensitivity.

I have uploaded the current draft of the FreeDOS guide for you as requested in another thread. I still have some parts to tidy and complete, but it is getting close to completion.
Beginers Guide to DOS programming environments - book 1

And I also did a quick video (In 3 parts. 3 x 11mins) of using FreeDOS with Costa as the central shell/launch environment and showcasing some of the tools used in the guide.
FreeDOS Development tools - Part 1 to 3

Have a great day
Axle :)

Hi Axle,

First, let me start by thanking you for including Costa in your book. I am thrilled to see it mentioned, and I really appreciate it. Also, 200+ pages, you've done some really good work there! I haven't read the whole thing, but I've read the part about Costa obviously, and skimmed the rest, and I am very excited to see the final book in the future. I think it has great potential to be a valuable resource for newcomers to DOS development!

As for the feature request, I have to say that as soon as I read it, I thought to myself "why haven't I made this already?". It just never crossed my mind, but now that you point it out, it's such a small but useful feature. I will absolutely look in to that, I have some ideas and it shouldn't be too hard to implement.

My pleasure, and thank you again for your efforts on Costa.

Hopefully I will get to the partner guide using Win95 for DOS development environments in the new year. Tertiary due dates are coming close so have to focus on that :)
These guides are supplemental to my "Beginners Guide to Programming" series which cover programming fundamentals using C, FreeBASIC and Python side by side for all examples, development environment setup for all 3 languages, and book 3 covers the use of some essential/basic libraries. The guides and examples are for Win x86-64 and Ubuntu (DEB) x86-64 so I kind of thought why not throw DOS into the mix lol
I just need to choose some compatible libraries to use in examples across all 3 platforms so I needed to go through the DOS side to double check, so I have for example PDCurses that compiles on any platform, and for basic graphics in the Turbo BGI graphics.h styles we have GRX (BGI like API) for DOS and SDL_BGI for Win/Ubuntu x64 (Although I had original choose to use raylib and raygui). Guide 4,5 and 6 will focus on designing/building some simple apps based upon the previous libraries. I may have to add a supplemental for DOS as well which will be a nice second step to the DOS Dev environment setup guide.

I am using Alentum ALaunch (Advanced Launcher} for Win9x which fits the style well, and often use salvadorbs ASuite for USB and portable distros, so Costa is a perfect fit for DOS portable distros as well :) I'll take Costa for a spin on Win 9x and see how it feels as a convenient launch pad :)

It is like Costa has made my GUI world feel complete on all OS lol
(To add context to that, I started coding back in the late 70s on B & W and green phosphor screens then dos, and then 16 colour TUI. The Black and white terminal novelty wore off a long time ago lol GUI all the way...)

Simple, elegant and brilliant :P

Hi Axle,

I have added the option to move icons between desktops in commit 1929f04 and have tested it. On older machines it might not be the fastest operation since it has to delete the icon from current desktop and save the desktop data file, load another desktop data file, add the icon, and save the new desktop file. But still, a lot faster than deleting an icon and recreating it on another desktop!

While I was at it, I also enabled the 1-5 keys to switch between the five available desktops, both when on the desktop itself and while moving an icon. It really makes it easier and faster than cycling through desktops, when you know what desktop you're looking for.

Here's a preview of what it looks like when moving an icon:
iconmove

Thanks for submitting this feature request! As I wrote earlier, as soon as I read it I thought to myself "Why haven't I made this already?", and I really like how the feature turned out. So thank you for that!

Hi Jacob,
Glad to hear the feature has turned out well. The GIF looks good :P
I like the 1-5 quick keys idea :)
Well done 😁

I am just about finished the final proof read on the 2 DOS DEV books, so I will have to take the new Costa version for a try and update the version, links and maybe I should expand the chapter on Costa a little more as I advised to think about how to arrange icon groups beforehand for each desktop because this feature wasn't there so I will change that wording now.

I never thought I would get this excited about DOS in 2024, but here I am lol

Thank you 😀

P.S I have updated the 2 DOS book links above with the "Draft Preview" versions. It turns out my GitHub repo for these has become something of a mess from "mission creep". It was original meant to be 2 books :/ and I think I am looking at about 10 books/booklets at the moment so I will get in and clean that up in the coming days.

P.S. I think I may have asked before. Is there a way to convert a normal 16 or 256 color bitmap image (icon) to the .BSV format that you are using?
Just reading back through your Costa Blog posts:
https://costa.jacobpalm.dk/2021/04/21/icon-editor-improved.html
I get it now :)
I did a similar thing with a "Big Number" library I wrote. Instead of wasting 4 (32) or 8 (64) bytes for each ANSI number (7-bit) in INT array. I did the entire library in "BYTE" or CHAR arrays. Textual numbers in, processed as text using the ASCII DEC value for each number character and Textual numbers out. So the only integers used was the ASCII Dec 48 to 57 with a maximum sized integer never exceeding 81. ~100% Textual/Character based big number library. Worked well with my command console programmers calculator I wrote.
Calculator
Win NT 32|64-bit only (No DOS)

Anyway, I think I understand your storage format for the icon images :)
P.S.S C.O.S.T.A. is FAR from annoying :)