GNU xhippo-3.5 to xhippo_lite, testing

For discussions about programming, programming questions/advice, and projects that don't really have anything to do with Puppy.
Post Reply
Message
Author
User avatar
torm
Posts: 186
Joined: Sat 07 Mar 2015, 19:56

GNU xhippo-3.5 to xhippo_lite, testing

#1 Post by torm »

Official source-code to build GNU xhippo-3.5 is here:
http://ftp.gnu.org/gnu/xhippo/

Note. To compile it, configure with "--with-gtk2" option,
as it appears to default to GTK-1.2



There are pre-built packages for xhippo-3.5 available on the forum,
for example - see :
http://www.murga-linux.com/puppy/viewtopic.php?t=10722
and:
http://www.murga-linux.com/puppy/viewtopic.php?t=86753

With the information on what xhippo is and what it does.


----

This topic is more about.. work-in-progress test version, that focuses
on easy to use UI - with drag'and'drop playlist editing, simple configuration
and locale support, using minimal memory footprint and processor load.

Here I hope it is ok to provide only the C source in gzipped form.
Noarch data is included there as pet.

Note that the setup window is not finished or translated in test package.
Setup window is gtkdialog-based, so can be updated or replaced
without any change to base application.
There are no themes provided also, - if all works out well, will try to post
some example themes in eyecandy section, with full widget paths and any relevant
comments on options. Theme selection accepts "global theme" as option, or themes
that set only some part of player window ( - like icons ) . It would be better
to have fixed widget paths first, to avoid wildcards in themes.

Most of the modifications in xhippo_lite are based on my own user expectations, while
everything about c, gtk2, gtkdialog, bash commands, theme design, etc. may not work as perfect
as it should.. for now. :wink: Feel free to provide any ideas on those.
At least the documentaion and "english" labels will need a review, at some point.

User avatar
torm
Posts: 186
Joined: Sat 07 Mar 2015, 19:56

#2 Post by torm »

Using TahrPup605PAE-32bit as a base, so it may work a bit different on other systems.
Also: ROX-filer 2.11, IceWM windowmanager, GTK 2.24.23, GLib 2.40.2
Original source: GNU xhippo-3.5, GPLv3
years 1999-2007, man-page links to "potamus" as later development ( note the dependencies.. )

______________________________________

Will use a name xhippo_lite-01 for the modified version.
Removed or replaced number of built-in features - that is where the "_lite" part comes in.. :)
For short changelog, see README file in the archive.

If you have any other version of xhippo installed on the system,
please back it up ( and maybe uninstall ) it first.
xhippo_lite is not compatible, or even supposed to be compatible with any other version.
_______________________________________

Now..
To compile the source, extract it someplace, open terminal in that folder and run:

autoconf

./configure

make

strip ./xhippo

and you should get the executable, if no errors.
To test the xhippo, please install the data_xhippo_lite-01.pet in that folder FIRST.
It has the setup window, desktop file, icons, man page, everything for /root/.xhippo
folder and so on - ready to go. You can then also uninstall the pet later with
PPM without tracking loose bits all-over the system.

NOTE: test source needs cleanup, so.. read the README, when in doupt.
Running other commands OR not running the above commands will have unforseen results.


Have a nice day ;)
Attachments
xhippo_lite-02.tar.gz
xhippo-lite source, and data, version 02
(180.13 KiB) Downloaded 143 times
xhippo_lite_with_vertex_global_theme.png
xhippo_lite-01 with global theme "vertex"
(122 KiB) Downloaded 333 times
Last edited by torm on Fri 06 Apr 2018, 14:45, edited 1 time in total.

User avatar
technosaurus
Posts: 4853
Joined: Mon 19 May 2008, 01:24
Location: Blue Springs, MO
Contact:

#3 Post by technosaurus »

IIRC, Goingnuts did some work on xhippo, probably in the pupngo thread....most likely for gtk1 though in case you are interested.
Check out my [url=https://github.com/technosaurus]github repositories[/url]. I may eventually get around to updating my [url=http://bashismal.blogspot.com]blogspot[/url].

User avatar
torm
Posts: 186
Joined: Sat 07 Mar 2015, 19:56

#4 Post by torm »

anything with source avalable?
gtk1.? not interested in general,
will have to attend some birthdays now.. so will not post anything aside yt links in coming days.. :D

Edit: already missing some glyphs here & there.. :shock:

wiak
Posts: 2040
Joined: Tue 11 Dec 2007, 05:12
Location: not Bulgaria

#5 Post by wiak »

Looks good. Interested to see what functionality you have removed from the original xhippo code. The original xhippo had a problem with filename paths that had spaces in them - goingnuts fixed that in his gtk1 version (not sure if his fix worked immediately for gtk2 compile - maybe it did).

wiak

User avatar
torm
Posts: 186
Joined: Sat 07 Mar 2015, 19:56

#6 Post by torm »

xhippo_lite should accept drag'and'drop from ROX filemanager.
With spaces, locale-specific filenames and whatnot..
Use setup window checkbox to select if underscores ( if any ) should be
replaced with spaces in playlist, - or not.

There is also "fileselect" method from pop-up menu, as a last resort.
For more exotic filemanagers that don't have d'n'd feature.

___

By the way, does anyone know the actual location of "big icons" on the left edge of
the "fileselect" widget?
I'm starting to suspect built-in xpm-s there :?


___________________________________________________

GTK1.2 is not supported in xhippo_lite.
Themes, widgets, etc. are not compatible, and I would also think of GTK1.2
as ( rare ) external dependency, both buildtime and runtime
in most PuppyLinux versions.
Or just don't have any nostalgia for it.. who knows.

wiak
Posts: 2040
Joined: Tue 11 Dec 2007, 05:12
Location: not Bulgaria

#7 Post by wiak »

torm wrote:xhippo_lite should accept drag'and'drop from ROX filemanager.
With spaces, locale-specific filenames and whatnot..
Use setup window checkbox to select if underscores ( if any ) should be
replaced with spaces in playlist, - or not.
I've attached goingnuts' old patch to fix dnd in xhippo. It's also contained in mcewanw's source code for xhippo-modded (was given permission to use it by goingnuts), which you can find in this link:

http://smokey01.com/saintless/source-co ... ent.tar.gz

wiak
Attachments
01-xhippo-3.5_dnd_url_decode_fix.diff.tar
goingnuts' dnd fix for xhippo - just remove dummy tar
(1.75 KiB) Downloaded 108 times

User avatar
torm
Posts: 186
Joined: Sat 07 Mar 2015, 19:56

#8 Post by torm »

@ wiak..
Thanks for the above links.
Hmm.. turns out I have reinvented some wheels along the way.. :?
Tested, and it appears to do the job.. well, just the same, I think, so.. ?
What is the user-side difference?
And, what does "char to_hex(char code)" do there?

At least where it comes to button icons, I'll stay with the current solution.
It allows theme support and provides a fallback.


_________________

Some notes for the version 02.

fixed: missing sentinel warning..
removed: show PID on statusbar
removed: "playing with.." - from statusbar ( now defaults to current playlist item )
added: middle-mousebutton-click on statusbar reparses/refreshes selected GTK2 theme runtime
added: gettexted setup window, fixed some labels.. Only to see if it works.
Setup window translation is not automated with any setup button.
Moved the translation under "info" tab.
removed: some commandline options that had little to do with commandline
and commandline help on them from xhippo.c ..
- added: xh_lplayer script, based on xhplayer made by mcewanw ( xhippo-3.5mod008-gtk2-i486.pet ) ,
as alternative ogg/mp3 player. Uses lame for mp3, and oggenc for ogg files, plays both with aplay.
Will be listed if lame or oggenc are installed. Are there puppies that don't have aplay?
For now I don't feel like extending xhippo_lite to use mplayer, xine or vlc...
Maybe, if there is a source for "lamip" player someplace? Didn't find it in *buntu repos..


TODO list:
- optional, re-use "mode_write_playing" to start ( continue ) playback from last active item,
if same playlist - and the item available there ( else pick_next )
- treeview dnd needs more intuitive solution, for example if user dnd-s current
playing item to another position, etc..
- keyboard activated item focus
- how to force access gtk_rc_reparse_all(); from commandline option?

- update documentation
_________________


Below is a simple_dark theme pet package. Should work for both xhippo-lite
versions. Uses standard "pixmap" engine, font ( Scada Bold, OFL license ) is included,
and takes up most of the space :wink:
On the other hand, who would care to search for a font, just for some theme, right?
Font dpi is expected to be 96, if it is not, or theme doesn't look as expected - see
gtkrc for notes.
Attachments
simple_dark_theme_screenshot.jpg
screenshot..
(77.29 KiB) Downloaded 173 times
simple_dark_theme_for_xhippo-lite.pet
simple dark theme for xhippo-lite
(56.86 KiB) Downloaded 139 times

wiak
Posts: 2040
Joined: Tue 11 Dec 2007, 05:12
Location: not Bulgaria

#9 Post by wiak »

torm wrote:@ wiak..
Thanks for the above links.
Hmm.. turns out I have reinvented some wheels along the way.. :?
Tested, and it appears to do the job.. well, just the same, I think, so.. ?
What is the user-side difference?
And, what does "char to_hex(char code)" do there?
Hi torm,

Glad any of the code proved useful. Been years since I looked at it so it you find no need for to_hex function best just to forget about it cos I've no idea about it now off the top of my head.

The theming looks good.

xhippo (especially with button icons rather than ugly labels) is a great wee program for handling playlists (way better than just using the likes of gnome-mplayer facilities). Pity it was never adopted in any official pups, as far as I know. Should have been in the sense that it fits great into pup small size but great functionality philosophy, but the pup builders have there own agendas and even the small-size distro release idea has eroded over the years with even Qt libs being added as 'standard' in some pups. Nothing wrong with Qt, but certainly not minimal.

wiak

Post Reply