wallpaper2

Window managers, icon programs, widgets, etc.
Message
Author
simargl

#16 Post by simargl »

.
Last edited by simargl on Sun 01 Sep 2013, 15:27, edited 1 time in total.

User avatar
Nathan F
Posts: 1764
Joined: Wed 08 Jun 2005, 14:45
Location: Wadsworth, OH (occasionally home)
Contact:

#17 Post by Nathan F »

I can institute writing the last wallpaper commandline used somewhere, and then create an option to set the last from the commandline.

Sunburnt expressed some interest in creating an alternate gui if the frontend/backend is reasonably separated (which it is) and even did a mockup Hug gui which looks pretty cool. That got me thinking I'd like to create a commandline-only tool to access the program internals, because it would be rather handy to have the various backends abstracted to use a single syntax. Anyway, it's probably in the pipeline sometime.

As for the current.png file itself, that is intentional behavior, as it's how the gui gives you a preview when you click on another item.

I'll look into your suggestion about the resize behavior as it makes a lot of sense.
Bring on the locusts ...

User avatar
Nathan F
Posts: 1764
Joined: Wed 08 Jun 2005, 14:45
Location: Wadsworth, OH (occasionally home)
Contact:

#18 Post by Nathan F »

@Simargl - I did a small proof of concept commit for you to try out. There's now two programs:
gwp (Graphical WallPaper setter) - the gui interface
cwp (Commandline WallPaper setter) - a new cli interface

The cwp program is just a stub for now, with the only function being to set the previous wallpaper. The gui now saves the current backend, mode, and wallpaper in (userconfigdir)/last when you click Apply. To try it out you will need to re-run the gui and set your wallpaper to create the file. Then add this to .xinitrc (or whatever you run during an X-session startup):

Code: Select all

cwp --last
Bring on the locusts ...

simargl

#19 Post by simargl »

.
Last edited by simargl on Sun 01 Sep 2013, 15:27, edited 1 time in total.

User avatar
Nathan F
Posts: 1764
Joined: Wed 08 Jun 2005, 14:45
Location: Wadsworth, OH (occasionally home)
Contact:

#20 Post by Nathan F »

I just committed a fairly major overhaul. There is now a menubar with options for launching external programs, an "About" dialog, a stub for a future slideshow feature, and a barebones "preferences" dialog. The preferences dialog only currently supports setting the height of the image previews, going from 150px to 500px in several steps.

That's just about as busy as I'd like the main window to ever get, and it was almost painful to do it at that.

The program launchers should pick up a number of common image viewing or editing programs and let you open the currently selected image in the external programs from the "Tools" menu. There are probably a number of programs I've missed adding, so let me know if anything else should be there.

One or two other small tweaks. The window is not resizable now, although it will automatically resize to accomodate different aspect ratios for the preview. Also the image can now be set by doubleclicking an item in the list as well as clicking on "Apply".
Bring on the locusts ...

User avatar
Nathan F
Posts: 1764
Joined: Wed 08 Jun 2005, 14:45
Location: Wadsworth, OH (occasionally home)
Contact:

#21 Post by Nathan F »

There's enough changed to warrant a new alpha release. While I was at it I created a pet package, see top post. Hope I did it right...
Bring on the locusts ...

Jasper

#22 Post by Jasper »

Hi Nathan F,

I converted your pet to an sfs file and it works well with Precise 5.6.

My regards and thanks

simargl

#23 Post by simargl »

.
Last edited by simargl on Sun 01 Sep 2013, 15:33, edited 1 time in total.

User avatar
Nathan F
Posts: 1764
Joined: Wed 08 Jun 2005, 14:45
Location: Wadsworth, OH (occasionally home)
Contact:

#24 Post by Nathan F »

I'll fix it. Think I know what's going on already. Sounds like a gtkdialog bug (quirk?) I just read about.

And now for a quick preview of what -may- be down the pipe. The attached image shows the experimental slideshow editor, which is hidden by default but opens via an entry in the "Tools" menu. This may or may not make it in, haven't decided yet. It's not even committed to mercurial yet. Note that with the slideshow editor closed the program looks substantially like it did before though, with the exception of a couple other little tweaks I've given it like the checkered background in the preview area and the absence of the notebook.
Attachments
slideshow-edit.png
(168.51 KiB) Downloaded 415 times
Bring on the locusts ...

User avatar
Nathan F
Posts: 1764
Joined: Wed 08 Jun 2005, 14:45
Location: Wadsworth, OH (occasionally home)
Contact:

#25 Post by Nathan F »

OK I committed the changes. The slideshow editor is basically functional now but there is of yet no slideshow player, so it's just a proof of concept. But you can create and edit as many playlists as you want.

The tab view is gone for good. In it's place there is an options menu and a small dialog for less common options.

The window no longer resizes itself when you preview an image with a different aspect ratio. Instead, the preview area is fixed in size and you have your choice of four modes for a background behind the preview:
1) none (use system theme)
2) white
3) black
4) a checkerboard patterned background identical to the one in Gimp

You also can incrementally change the size of the preview area from 150px to 500px. The preview size and preview background prefs both require a restart, due to limitations of gtkdialog. Also, the preview background choices are currently gtk2 only, with gtk3 support coming later.

TODO:
* Add the ability to add items by right clicking instead of having to press the "+" button each time
* Drag and drop reordering in the slideshow editor
* Clicking on an item in the slideshow editor opens it in the preview window
* Some way to delete entire playlists
* Move all the gtkdialog code to separate files for speedier execution
* Write a manual
* Write the slideshow player
Bring on the locusts ...

User avatar
Nathan F
Posts: 1764
Joined: Wed 08 Jun 2005, 14:45
Location: Wadsworth, OH (occasionally home)
Contact:

#26 Post by Nathan F »

Forgot to mention, I fixed the bug Simargl mentioned. It was caused because gtkdialog only returns the value of the EXIT variable if you close it via the WindowManager.

Also I may need to add some code to handle the new way of handling options setting on firstrun. I'll have to delete my profile directory and retest.

And one last thing. The Makefile now includes a "petpkg" target, so you can run "make petpkg" and it will automatically create a package for you.
Bring on the locusts ...

simargl

#27 Post by simargl »

.
Last edited by simargl on Sun 01 Sep 2013, 15:33, edited 1 time in total.

User avatar
Nathan F
Posts: 1764
Joined: Wed 08 Jun 2005, 14:45
Location: Wadsworth, OH (occasionally home)
Contact:

#28 Post by Nathan F »

I have mixed feelings about it myself. I was thinking, if that stuff does stay in, then I might disable it all by default and have the user explicitly enable it in the prefs dialog if they want the extra functionality.
Bring on the locusts ...

User avatar
koulaxizis
Posts: 452
Joined: Sun 17 Jul 2011, 18:43
Location: Greece
Contact:

#29 Post by koulaxizis »

This app is just getting better and better! :)
[b]Christos Koulaxizis[/b]
[i]Woof woof from Greece![/i]

[color=darkred][url=https://sourceforge.net/projects/puppystuff/][ Puppy Stuff Repository ][/url][/color]

User avatar
Nathan F
Posts: 1764
Joined: Wed 08 Jun 2005, 14:45
Location: Wadsworth, OH (occasionally home)
Contact:

#30 Post by Nathan F »

I spent a fair amount of time optimizing the bash portions today. Mostly reading and running tests of certain bits while timing the execution. There weren't extensive changes, but a few little things happened that would never have occurred to my brain a few years ago. I managed to get the list creation done with a single call to "find", eliminated 3 calls to "cut" in a loop (which equates to 3 calls for each iteration of the loop, for a total of 48 "cuts" removed) and learned a few nice tricks for bourne shell syntax that I never knew before. It's been a great learning experience in general, mainly because I forced myself to do so.

I think I will split out the slideshow editor and put those portions into a separate file, which will only be loaded if the user explicitly enables it via the prefs. It seems to have slowed up the program loading a tiny bit, and since I've got the bash portions trimmed down as far as I think I can the only explanation is that gtkdialog is causing the slowdown with the extra widgets loading. Not that it's a turtle, but I'd like it usable on the lowest common denominator. Plus, it's good exercise as stated above.

I think I'll call the next "release" a beta, as it's nearly feature complete and mostly just needs polished.
Bring on the locusts ...

Post Reply