Crappiest Launcher You'll Ever See, But Here You Go


skeezix

Internal Development
Joined
Mar 11, 2003
Messages
8,070
Website
www.codejedi.com
I've been goofing around the idea of making a uber-minimal launcher; Craig really wanted me to do it, so we coudl have something basic and fast and sort of like gmenu2x.

Seeing as we're shipping soon, this is quick and last minute .. wish I'd known to write something months ago ;)

Since I'm in a hurry I made it depend on SDL, which buys us the advantage of working on framebuffer or X11 no problem, so can use it inside or outside of X.

A quick pic from my desktop:
http://www.codejedi.com/pandora/minimenu/screenshots/minimenu_0005.png

A quick pic on the pandora:
http://www.codejedi.com/pandora/minimenu/screenshots/IMG_0174.JPG

A quick video, which doesn't even show me switching tabs or scrolling up and down, though it can do those things. You know by now, I suck at video.
http://www.youtube.com/watch?v=BlIx3ZukTDo

I've got some loving to give it yet, as best I can squeeze the time in.

I've made it open source, GPL, though the code will bring shame on the House of Skeezix for being rushed out the door, but you go and write a menu in 4 nights when you're on babysitting duty ;)

jeff

Anyone like the basic looks of it? Theres no features .. no movie playing, no fancy menus, no battery indicator (so far, not sure I see the need, we have a blinky LED right?), and so on. It just comes up, lets you shut off the pandora, or run apps. Maybe I'll add a directory browser for running apps from the filesystem.
 
Good job. Looks nice and very promising. ;)
Have you thought about a theme-feature, too? So user can simply create own themes like backgroundimage, color of frames, font, etc. Or features, so everyone can bring more individuality in it the launcher gui like arranging the icons (sort by name, individual sort), creating individual tabs etc. Just an idea. But as I say, great job ;)
 
Its currently all png-files, named in a conf file (and with their position and various options set in conf.) ie: You want a background image? Specify a filename with the right key in the conf, and bam. You want a grid thats 1 column, or 8 columns, just tell it the spacing and padding and scaling sizes for icons, and it'll take care of that. Borders, arrows, etc, all just png-files.

So folks ca customize it 'reasonably', but not as much as cpasjuste's pmenu or fancier menus.

But my goal was to have it start up in .5s (which it does), and then scan for apps, and then do stuff. I can speed up the app-scan by removing the 'moving pandora icon', and some stuff), but I'm not worried about it until I've got about 1000 pnd files to do stress testing :)

jeff
 
Awesome. Even though it's a two day hack.

Design?
The layout is perfect or near enough, but I'm not a fan of gray/white frames, but hey as long as it works, and those are just images that can be swapped, right? ;)

Also, show us the code! I'm sure I'd be able to add some feature or other to it! This launcher seems to be close-to-the-metal enough for my taste, aka perfect for hacking!
 
I don't know. Anything looks good on a Pandora. At least the Pandora icons show Quake, not Ogres....OGLES
 
I didn't know there was an open source version of Heroes of Might and Magic 2, now I'm looking forward to the ship date even more.
 
dflemstr .. to lessen the amoutn I'll break djwillis image-building, I stuck it into libpnd/minimenu/ for now (but with its own GPL license, to help illustrate it really being a separate project.)

I was sorely tempted to do it QT-embedded, or at least use a stylesheet engine, or at least use QT containers, or Boost (thogh I'm not a fan of Boost). But I was babysitting my little girl and coding while she napped and hammering this out too damned fast, so its more plain jane C. I was seriously tempted to close source it for now, since I'm seriously trhinking it needs a total rewrite and brings shame :)

I mean, I really wanted to py-QT or c++ it, with a class to contain a UI framework, and dynamic load up peoples .so interfaces (or perhaps just javascript or py scripts, to avoids security concerns with dynloading peoples .so's), and add in lots of goodies.. but having only a week or two to hack it together, all that went out the window.l

Story of my life for the last year eh? :)

But seriously, this desparately needs to be a pyqt job, say, take half as much time to write, but with release impending I didn't want ot get stuck in a corner where things go all to hell :)

jeff
 
You have done right with your decissions. The ideas are just "goodies", np if they miss at all. Np , youve done alot already, thx ;)
 
Good stuff. Paging DaveC!

I have to mention Pmenu as well though. Wouldn't it be a good idea to modify Pmenu's layout to something like this, perhaps as an option, instead of having a whole new launcher? Or has Pmenu become too feature rich for Craig's liking?
 
borgqueenx said:
I will never use p-menu and that stuff. I love pandora for its desktop abilitys in such a small device.

I had the exact same though... BUT, I do plan on using one of these systems (this one is looking very nice) to just fire up and let run for day-to-day game playing/switching. It should be quick and easy enough to exit to get a full desktop experience. :)
 
Last edited by a moderator:
skeezix said:
I mean, I really wanted to py-QT or c++ it, with a class to contain a UI framework, and dynamic load up peoples .so interfaces (or perhaps just javascript or py scripts, to avoids security concerns with dynloading peoples .so's), and add in lots of goodies.. but having only a week or two to hack it together, all that went out the window.l
There's Panorama for that kind of heavyweight stuff, no worries! (Panorama takes 14 MiB of RAM excluding the Qt libs which is plenty relatively speaking... But then again, most of that RAM goes into loading .desktop files so I could optimize it away if I used libpnd for everything ;))
Anyways, if you need a Qt thingie to hack on, there's Panorama for you, with themes fully written in JS and everything. But I like the prospect of having an even *more* lightweight launcher, and that's where mmenu fits in!

mindlord said:
I don't understand... are they dropping pmenu? Why do this all over again?
PMenu is *very* non-lightweight for what it's doing, again, it's all relative of course.
 
Last edited by a moderator:
Not dropping anything just filling some gaps.. Heavy with full desktop to very minimal, with pmenu and netbook launcher as degrees inbetween. I'm sorely tempted to add a pure text launcher module for this.. Boot right to text, how much faster could you get? :)

something for everyone, right!

Jeffphone
 
So we've got the full desktop which is very complete, but takes a while to load. Then PMenu which is very pretty, easy to use, and has a lot of features that make it suitable for those that like things to just work, but to get all those features it is also kinda slow.
This will have no real special features, it just enumerates applications and lets you run them, thereby making it fast?
 
Wermy.. A pnd file may contain many apps within it, wih their own categories and params. Think Vice.. C64 and vic20 etc in one pnd file. When in pndfile it can only easily get one icon for all subapps, but if unpacked it can be an icon for each subapp .. But for say windowed versus fullscreen versions of same app, same icon makes sense

sorry for quick explanation, using phone :)

jeffphone
 
skeezix said:
Not dropping anything just filling some gaps.. Heavy with full desktop to very minimal, with pmenu and netbook launcher as degrees inbetween. I'm sorely tempted to add a pure text launcher module for this.. Boot right to text, how much faster could you get? :)

something for everyone, right!

Jeffphone

Yeah baby!
 
Last edited by a moderator:
Back
Top