Search Members Help

» Welcome Guest
[ Log In :: Register ]

Mini-ITX Boards Sale, Fanless BareBones Mini-ITX, Bootable 1G DSL USBs, 533MHz Fanless PC <-- SALE $200 each!
Get The Official Damn Small Linux Book. DSL Market , Great VPS hosting provided by Tektonic
Pages: (9) </ 1 2 3 4 [5] 6 7 8 9 >/

[ Track this topic :: Email this topic :: Print this topic ]

reply to topic new topic new poll
Topic: Note to extension builders< Next Oldest | Next Newest >
roberts Offline





Group: Members
Posts: 4983
Joined: Oct. 2003
Posted: Nov. 15 2007,14:09 QUOTE

MyDSL is dynamic. MyDSL extensions use the Fluxbox menu specifiation. The menu entry of a MyDSL extensions are snipetts of menu code. They get loaded into /tmp/mydsl.menu during boot time or upon demand. Other window managers would not know about MyDSL menu items, neither their location or the format. Other window managers use their own menu specifications, e.g., jwm uses xml. To this end I have created a naming convention and structure to enable processing of MyDSL extensions without change the many core DSL MyDSL processes including dsl-config, mydsl-load, mountci, desktop.lua, desktop.sh, etc.

make
Therefore a program needs to be created to convert from flux format to xml or whatever the new window manager uses as its menu specification. The make program  is called during the boot process as well as the upon demand. It is also called when switching to a new window manager. The fact that actual output of make is in a known location by window manager makes it possible. Also the removal of the menu item upon an umount of a uci or upon shutdown/reboot. All core DSL MyDSL processing uses the new more flexible structure.

restart
The code needed by the window manager to redraw its menu. Examples are of course included for both jwm and fluxbox. Having a separate code file makes it extremely flexible.

menu_template
Some window managers require special headers to demark an include. Example is jwm. Also is used as a target place holder for the make program for the desire insertion point.

So by using the above naming convention and location for your custom scripts, to process your window manager's handling of MyDSL extensions, no changes need to be done to any core DSL program. Not even .xinitrc


Edited by roberts on Nov. 15 2007,14:11
Back to top
Profile PM WEB 
mikshaw Offline





Group: Members
Posts: 4856
Joined: July 2004
Posted: Nov. 15 2007,17:03 QUOTE

Oh...duh. The mydsl menu for an arbitrary window manager. I get it now, mostly, thanks.

I assume that a window manager with no applications menu would simply not need these scripts?

I think I might need to look at an example (and the scripts in 4.1) to get the full picture. I'm guessing the location of the main menu for a submitted window manager extension would need to be specified in make, or maybe menu_template.


--------------
http://www.tldp.org/LDP/intro-linux/html/index.html
Back to top
Profile PM WEB 
roberts Offline





Group: Members
Posts: 4983
Joined: Oct. 2003
Posted: Nov. 15 2007,20:34 QUOTE

Only part of the new structure is in 4.1RC1, the rest and final structure will be 4.1RC2. I just finished it today.

FYI the biggest and most difficult work was to implement user=name option. It affects more files than the new mydsl processing structure.

4.1 really has a different base structure than all prior versions of DSL.
It is the last of the major restructuring that I wanted to accomplish.
Back to top
Profile PM WEB 
WDef Offline





Group: Members
Posts: 798
Joined: Sep. 2005
Posted: Nov. 15 2007,22:45 QUOTE

Robert:

(Shamelessly skipping to the end of the thread here and shamefully out of date with recent dsl developments - will catch up soon though)

At the risk of having not read something important above, am I correct in thinking that, icon size aside, we extension builders can just go building our extensions with /tmp/mydsl.menu files exactly as we always have?
Back to top
Profile PM 
roberts Offline





Group: Members
Posts: 4983
Joined: Oct. 2003
Posted: Nov. 15 2007,23:00 QUOTE

Quote (roberts @ Oct. 16 2007,21:29)
Note 32x32 xpm style icons are being supported with DSLv4.x. Place your xpm icon in the /tmp/mydsl.icons/ directory. Naming convention is consistent with that current used for menu items.

Yes, you can go on building extensions as usual. I did this to be backward compatible to the existing repository. And to continue to fully support DSL 3.4.x as well as 4.x

The only thing that is new (additional) is that I ask is to also make or convert the icon image in home/dsl/.xtdesk and store it as a 32x32 icon in /tm/mydsl.icons/ext_name.xpm

Example:
/tmp/mydsl.icons/abiword.xpm
/tmp/mydsl.icons/imagemagick.xpm
/tmp/mydsl.icons/samba.xpm
/tmp/mydsl.icons/xchat.xpm

You can use imagemagick's convert program or xv, to convert gif,jpg,png,tif icons to xpm. Or better yet design a new icon using mikshaw's iconView.lua program.


Edited by roberts on Nov. 15 2007,23:01
Back to top
Profile PM WEB 
40 replies since Dec. 30 2006,21:07 < Next Oldest | Next Newest >

[ Track this topic :: Email this topic :: Print this topic ]

Pages: (9) </ 1 2 3 4 [5] 6 7 8 9 >/
reply to topic new topic new poll
Quick Reply: Note to extension builders

Do you wish to enable your signature for this post?
Do you wish to enable emoticons for this post?
Track this topic
View All Emoticons
View iB Code