acme Desk 5 (program launcher)

Developed or developing a new product in PureBasic? Tell the world about it.
Marc56us
Addict
Addict
Posts: 1600
Joined: Sat Feb 08, 2014 3:26 pm

acme Desk 5 (program launcher)

Post by Marc56us »

Hi,

New version of acme Desk.

Designed for wide screens. It is designed for users who need to open and close a lot of programs (i.e. developers, system administrators). It can display up to 300 tiles (150 on the same page). I designed it this way because I like to use a single click to launch a program rather than a double click, and the taskbar is limited, and also because the clock at the bottom of windows is difficult to read on large screens.

History: acme Desk 5 replaces acme Desk 3, which has become too difficult to maintain and had many functions that were not being used.

Ergonomics have been improved, and tiles can now be moved directly with left button (ImageGadget was replaced by CanvasGadget who have more possibilities (mouse button up/down/ cursor in/out)

The analog clock makes reading faster (a digital clock will be offered later as an alternative display).

This simplification enabled me to rewrite the entire program in just 2 months. Optimization and coding experience with PB: The source code is now just 2338 lines long rather than 10.000 for version 3.

Simplification:
Single EXE, portable installation (datas stored in an SQLite file)
No 32 bits versions. Windows XP + x64 version only

Features:
  • Launch 300 programs / documents / url / folders / links
  • - Drop Programs
  • - Drop Documents
  • - Drop folders
  • - Drop URL
  • - Drop Documents over programs
  • Time (24 ou 12 am/pm)
  • Date ('en' and 'fr')
  • Countdown
  • Calendar 12 month
What you can do:
Image

How to drop URL
Image
URL have Globe ico. If favicon exist, it will be draw over.

Type of Clock
(Date may be display in english of french format)
Image

Download here
Compilation PB 6.21 Beta 2 x64
Virustotal: 0/73


The program was written entirely in PB, with no external libraries. In a way, it's a demonstration of PB's capabilities.
All windows are created using the internal Form Designer (only tiles are dynamically generated on opening). There are only 2 direct API calls (one to extract icons and one to launch programs in admin mode if desired).

(And as I'm asked every time: the screenshots are made with FastStone Capture)
Note: domain name " mdacme . com "no longer belongs to me. I will put my old programs back on https://www.acmedev.fr

In development forever (as ideas come to me)
Feedback welcome.
Enjoy
:wink:
User avatar
HeX0R
Addict
Addict
Posts: 1201
Joined: Mon Sep 20, 2004 7:12 am
Location: Hell

Re: acme Desk 5 (program launcher)

Post by HeX0R »

Looks interesting, so I gave it a shot.
It seems to have some dpi problems.
I guess "Desk on right" should mean it will be displayed on the right side of the main monitor?
Because in fact it is shown somewhere in the middle of nowhere on my right monitor, but since that one has a different DPI setting, it is no longer sizable (title bar is outside of the screen)

And even on the main screen it is too large, I can only use 25x5 = 125 tools (x2 would be 250, not 300), guess there are more outside the screen which can't be accessed. (I somehow expected to have a scrollbar then)

How do we rename "page1" and "page2"?
[Edit]never mind, found it
Marc56us
Addict
Addict
Posts: 1600
Joined: Sat Feb 08, 2014 3:26 pm

Re: acme Desk 5 (program launcher)

Post by Marc56us »

Hello,

Yes, it is not DPI aware. I've disabled this option so as not to have to make additional calculations and because the program is designed for use on large (physical) screens which are always used at 100%.

By default, it launches on the right of screen 0 on first start-up and uses the maximum height.
It can be resized with the mouse by stretching the top or bottom (it's a simple #PB_Window_Tool type window, which also means it doesn't display in the taskbar).

I don't think anyone will use the 300 tiles, it's just to allow you to see the programs according to the layout. (I will add a scrollbar later if some of you want to use full height)

Size and position are automatically stored in the SQLite database.

:wink:
User avatar
blueb
Addict
Addict
Posts: 1116
Joined: Sat Apr 26, 2003 2:15 pm
Location: Cuernavaca, Mexico

Re: acme Desk 5 (program launcher)

Post by blueb »

Excellent Marcus56us.
I'm giving it a little test now.

I developed my own version that uses buttons, that works well for me.
Trouble is buttons require more space and don't have icons, but tell you what the buttons does.
It's also hard to use Icons only... some icons are very vague, especially when you could have 300 of them. {grin}

The ideal would be buttons 'with' text, and that's a little more difficult to do, but you are using icons and tooltips making things a lot easier.

Keep up the good work :)

Blueb
- It was too lonely at the top.

System : PB 6.21(x64) and Win 11 Pro (x64)
Hardware: AMD Ryzen 9 5900X w/64 gigs Ram, AMD RX 6950 XT Graphics w/16gigs Mem
Marc56us
Addict
Addict
Posts: 1600
Joined: Sat Feb 08, 2014 3:26 pm

Re: acme Desk 5 (program launcher)

Post by Marc56us »

blueb wrote: Wed Mar 26, 2025 2:02 pm The ideal would be buttons 'with' text, and that's a little more difficult to do, but you are using icons and tooltips making things a lot easier.
It's a good idea and not very difficult to implement, since my buttons are actually CanvasGadgets into which I've drawn an image, so all I have to do is make them wider and draw some text next to the image. I already use this system to put a site icon (favicon.ico) on top of the icon I use for websites (a globe).

Technically, I create the images on one side and then paste them into the Canvas when finished. This gives more possibilities than tracing directly in the Canvas. So adding text is easy

Code: Select all

CanvasGadget(i, \x, \y,  32,  32)

StartDrawing(ImageOutput(i
	DrawImage(
	DrawText(
StopDrawing()

SetGadgetAttribute(i, #PB_Canvas_Image, ImageID(i))
The challenge is to remain legible (text length and size vs. number of buttons displayed).

Right now I'm trying to get my “zoom” tooltip to display only 1 or 2 seconds after a mouse-over. It's more complicated than I thought, because a Delay(1000) after #PB_EventType_MouseEnter pauses the whole program, whereas I want it to keep running. In programming, what you think is simple is complicated, and vice versa. :o
User avatar
blueb
Addict
Addict
Posts: 1116
Joined: Sat Apr 26, 2003 2:15 pm
Location: Cuernavaca, Mexico

Re: acme Desk 5 (program launcher)

Post by blueb »

Marc56us wrote: Wed Mar 26, 2025 4:37 pm
blueb wrote: Wed Mar 26, 2025 2:02 pm The ideal would be buttons 'with' text, and that's a little more difficult to do, but you are using icons and tooltips making things a lot easier.
It's a good idea and not very difficult to implement, since my buttons are actually CanvasGadgets into which I've drawn an image, so all I have to do is make them wider and draw some text next to the image. I already use this system to put a site icon (favicon.ico) on top of the icon I use for websites (a globe).
I've thought of the idea, but I have a hard time conceiving how this would work with drag'N'drop. (but then I'm not a good programmer) haha
- It was too lonely at the top.

System : PB 6.21(x64) and Win 11 Pro (x64)
Hardware: AMD Ryzen 9 5900X w/64 gigs Ram, AMD RX 6950 XT Graphics w/16gigs Mem
Marc56us
Addict
Addict
Posts: 1600
Joined: Sat Feb 08, 2014 3:26 pm

Re: acme Desk 5 (program launcher)

Post by Marc56us »

blueb wrote: Wed Mar 26, 2025 6:45 pm I've thought of the idea, but I have a hard time conceiving how this would work with drag'N'drop. [...]
Sample: https://www.purebasic.fr/english/viewto ... 72#p638172
:wink:
Marc56us
Addict
Addict
Posts: 1600
Joined: Sat Feb 08, 2014 3:26 pm

Re: acme Desk 5 (program launcher)

Post by Marc56us »

New version: 5.1.2.3
  • Ability to launch multiple documents on programs that support multidocument (text editors, hex editors, spreadsheets, image editors)
  • Fixed bug where icons with transparent backgrounds displayed a black background
  • Replacement of the standard calendar (12 calendar gadgets) by a dynamically built calendar. (Do you know the day of the week of your birth ?)
The calendar is displayed in English or French, depending on the state of “date in french” checkbox (in the tool tab).
As it uses PB's date functions, the year ranges from 1601 to 9999.
Next: the calendar will allow events to be added, including drag'n'drop of ICS files.
I made this type of calendar because I prefer annual calendars in vertical form (such as large cardboard calendars).

Image

Download

:wink:
Post Reply