Puppy Linux Discussion Forum Forum Index Puppy Linux Discussion Forum
Puppy HOME page : puppylinux.com
"THE" alternative forum : puppylinux.info
 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

The time now is Thu 24 Oct 2019, 01:55
All times are UTC - 4
 Forum index » Off-Topic Area » Programming
YAD - Tips
Post new topic   Reply to topic View previous topic :: View next topic
Page 35 of 50 [749 Posts]   Goto page: Previous 1, 2, 3, ..., 33, 34, 35, 36, 37, ..., 48, 49, 50 Next
Author Message
fredx181


Joined: 11 Dec 2013
Posts: 4125
Location: holland

PostPosted: Thu 13 Sep 2018, 10:34    Post subject:  

Hi Mike,

Quote:
Question, if I may? Is 'awk' actually a separate language used within Bash?

It's separate program with its own binary, not a bash builtin.

Quote:
I see you're using the '*' symbol in the print statement. Am I right in thinking that here it's simply being used as the 'multiplication' symbol, rather than a 'wild card'?

Yes, multiplication.

Quote:
Anyway; just tried it out, and.....it works beautifully, Fred. The whole reason I wanted to do this was because I liked the idea of a straight-forward true 'brightness' control; RedShift has one built-in, as you know, but it's actually manipulating the gamma ramp, and (on my monitor at least) I get slightly odd side-effects from it.

Ok, good to hear it works. The "redshiftgui" btw, has also a 'normal' brightness control (not manipulating the gamma)

https://sourceforge.net/projects/redshiftgui/files/

Quote:
I see why you set 5 as a minimum!

Yes, better for who's afraid of the dark Smile Yes, 10 may be better (in fact it is the same as 0.1 setting for xrandr)

EDIT:
Quote:
I'll probably supply a recent version of YAD for it, too, but I'll do so as a separate package this time, rather than building it in

I agree, always better to keep it separate, in case someone downloads your "brightness slider" .pet who's running a 64-bit OS.
If a 32-bit yad binary would be inside the pet, then yad probably doesn't work anymore on 64-bit (if it's being overwritten).

Fred

_________________
Dog Linux website
Tinylinux blog by wiak
Back to top
View user's profile Send private message 
step

Joined: 04 May 2012
Posts: 1214

PostPosted: Tue 18 Sep 2018, 07:30    Post subject:
Subject description: Remove (yad) unreleased shared memory blocks (Linux)
 

This >gist deals with an issue you may encounter while developing tabbed/paned yad dialogs. Killing the dialog (with kill [options]) may lead to unreleased shared memory. The linked script can assist in reclaiming the shared memory.
_________________
Fatdog64-802|+Packages|Kodi|Findnrun|+forum|gtkmenuplus
Back to top
View user's profile Send private message 
Argolance


Joined: 06 Jan 2008
Posts: 3678
Location: PORT-BRILLET (Mayenne - France)

PostPosted: Sat 13 Oct 2018, 12:05    Post subject: Buttons labels not translated anymore...  

Bonjour,
I recently upgraded yad 0.33 to the latest 0.40 release and, with some small modifications of my scripts using it (especially yad --notification > icon size) all is right. One thing though, the button labels are now in English (close, execute, ok, cancel and so on).
What's wrong?

Thanks.
Cordialement.

_________________

A second life for your PCs...
Back to top
View user's profile Send private message Visit poster's website 
fredx181


Joined: 11 Dec 2013
Posts: 4125
Location: holland

PostPosted: Sun 14 Oct 2018, 11:16    Post subject:  

Discussing Here about display of gif images for gtkdialog-splash.
Always thought display of animated .gif isn't possible with yad, but it is: with the --picture option, e.g:
Code:
yad --picture --size=orig --filename=/usr/share/pixmaps/launch.gif --width=280 --height=190 --center --inc=2 --text="<b>Working...</b>" --no-buttons --undecorated --text-align=center --timeout=13


Fred
try.gif
 Description   Display animated .gif with yad
 Filesize   253.98 KB
 Viewed   808 Time(s)

try.gif


_________________
Dog Linux website
Tinylinux blog by wiak
Back to top
View user's profile Send private message 
step

Joined: 04 May 2012
Posts: 1214

PostPosted: Sun 14 Oct 2018, 18:11    Post subject: Re: Buttons labels not translated anymore...  

Argolance wrote:
Bonjour,
I recently upgraded yad 0.33 to the latest 0.40 release and, with some small modifications of my scripts using it (especially yad --notification > icon size) all is right. One thing though, the button labels are now in English (close, execute, ok, cancel and so on).
What's wrong?

Thanks.
Cordialement.

How did you upgrade, did you compile the project from github source? https://github.com/v1cont/yad
There you will find a folder named po, inside it a file named fr.po, which needs to be compiled into fr.mo with msgfmt -o fr.mo fr.po, and copied to /usr/share/locale/fr/LC_MESSAGES/yad.mo. This is the standard way to add translations for GNU gettext.

_________________
Fatdog64-802|+Packages|Kodi|Findnrun|+forum|gtkmenuplus
Back to top
View user's profile Send private message 
Argolance


Joined: 06 Jan 2008
Posts: 3678
Location: PORT-BRILLET (Mayenne - France)

PostPosted: Mon 15 Oct 2018, 06:37    Post subject: Re: Buttons labels not translated anymore...  

Bonjour,
step wrote:
How did you upgrade, did you compile the project from github source? https://github.com/v1cont/yad
There you will find a folder named po, inside it a file named fr.po, which needs to be compiled into fr.mo with msgfmt -o fr.mo fr.po, and copied to /usr/share/locale/fr/LC_MESSAGES/yad.mo. This is the standard way to add translations for GNU gettext.

Thank you for replying.
I compiled it from github source and the mo files were automatically generated. But it seems that the problem doesn't depend on any translation file but more on an integration of yad to the system. For example, gtkdialog has no translation file but all the main button labels of the gtkdialog GUIs are displayed in the current language.
It seems to me that there is something else to configure, but what and where?

Cordialement.

_________________

A second life for your PCs...
Back to top
View user's profile Send private message Visit poster's website 
Argolance


Joined: 06 Jan 2008
Posts: 3678
Location: PORT-BRILLET (Mayenne - France)

PostPosted: Tue 04 Dec 2018, 18:28    Post subject:  

Bonjour,
Code:
yad --borders=10 --width=400 --undecorated --mouse --skip-taskbar --on-top --fixed --sticky\
       --entry-label="$(gettext 'Command:')" --entry --editable --entry-text list --column="command"\
       --button="$(gettext 'Clear list')!gtk-clear":2 --button="$(gettext 'Run')!gtk-execute":0 --button="$(gettext 'Cancel')!gtk-cancel":1

How could I add such a check box in the window?
Code:
yad --form --field check:chk

Additional question: why do I get this warning message in console:
Code:
(yad:17944): Gtk-WARNING **: Error loading icon from file 'yad':
   Couldn't recognize the image file format for file 'yad'

Thanks.
Cordialement.

_________________

A second life for your PCs...
Back to top
View user's profile Send private message Visit poster's website 
fredx181


Joined: 11 Dec 2013
Posts: 4125
Location: holland

PostPosted: Thu 06 Dec 2018, 04:01    Post subject:  

Hi Argolance, something like this maybe ?

Code:
yad --borders=10 --width=400 --undecorated --mouse --skip-taskbar --on-top --fixed --sticky --form  \
--field "$(gettext 'Command:'): " "list" \
--field check:chk \
--button="$(gettext 'Clear list')!gtk-clear":2 --button="$(gettext 'Run')!gtk-execute":0 --button="$(gettext 'Cancel')!gtk-cancel":1


The first field can also be this (using "txt")
Code:
--field "$(gettext 'Command:'):txt" "list" \

But then the text window will be larger.

In your code you have also --column="command", I don't think it's doing anything, as far as I know it only applies for when using --list.

Quote:
Additional question: why do I get this warning message in console:
Code:
(yad:17944): Gtk-WARNING **: Error loading icon from file 'yad':
Couldn't recognize the image file format for file 'yad'

Could be because you don't have the yad icon in one of the icon paths.

Fred

_________________
Dog Linux website
Tinylinux blog by wiak
Back to top
View user's profile Send private message 
Argolance


Joined: 06 Jan 2008
Posts: 3678
Location: PORT-BRILLET (Mayenne - France)

PostPosted: Sun 09 Dec 2018, 09:55    Post subject:  

Bonjour,
Thanks for replying.
(Sorry, I don't know why, but I do not receive any notification when replies are posted to the messages Confused !)
Your lines work - I already tried this - but the 3 buttons "Clear", "Run" and "Cancel" are not displayed anymore.
fredx181 wrote:
Could be because you don't have the yad icon in one of the icon paths.

The yad icon is in /usr/share/pixmaps. Probably due to the way I compiled yad (--prefix /usr)? Copying the icon to /usr/local/share/pixmaps solves the problem and this may give an answer to my question above about the button labels...

Cordialement.

_________________

A second life for your PCs...
Back to top
View user's profile Send private message Visit poster's website 
Mike Walsh


Joined: 28 Jun 2014
Posts: 5493
Location: King's Lynn, UK.

PostPosted: Sun 09 Dec 2018, 16:10    Post subject:  

@ Argolance:-

You don't necessarily need to worry about placing the icon in one of the *recognized* paths. You could put the icon anywhere you wanted to, as long as you then give the FULL path to its location.

I know folks think I'm odd.....because even though I place icons in the accepted 'paths', I still give the full path-name to make absolutely certain I get it!


Mike. Wink

_________________
MY 'PUPPY' PACKAGES

Back to top
View user's profile Send private message 
Argolance


Joined: 06 Jan 2008
Posts: 3678
Location: PORT-BRILLET (Mayenne - France)

PostPosted: Mon 10 Dec 2018, 06:44    Post subject:  

Bonjour,
Mike Walsh wrote:
I know folks think I'm odd.....because even though I place icons in the accepted 'paths', I still give the full path-name to make absolutely certain I get it!

I'm not of those who think so: I usually do the same! Wink
My script doesn't have any icon except the yad one (that I copied to /usr/local/share/pixmaps but should be ignored because the window is "undecorated") and the gtk stock icons for which the problem of the path does not arise either...
I recompiled yad but the standard button labels (ok, cancel..) are still in English while there were in French running the 0.30 yad version.

Cordialement.

_________________

A second life for your PCs...
Back to top
View user's profile Send private message Visit poster's website 
misko_2083


Joined: 08 Nov 2016
Posts: 87

PostPosted: Sun 23 Dec 2018, 09:26    Post subject:    

Xlunch is one of Fredx181's favourite applications Laughing ,
however yad can also serve a fullscreen launcher.

Here's what happened:

A dev from a distro I never heard of before, with minimalistic goals, asked me:
miyo wrote:

What I'm trying to do is...create a full-screen application launcher that will close AFTER a user clicks on an application. Here is the basic command that I'm working with...

yad --icons --read-dir=/usr/share/applications --fullscreen --sort-by-name --undecorated --single-click --skip-taskbar

If I can figure this out, I will also add...

--no-buttons

...to the command.

I know that you can close yad after clicking on a button, but I can't find a way to close it after clicking on one of the icons in the window.

I've tried xlunch, and it works well. smile

I'm just trying to keep extra packages out if I can...so that there are no packages (or as few packages as possible) not included in the system's repositories. wink

If I can't figure this out, I may use xlunch.


A light bulb flashed over my head , Idea
and told him to get the process id of the yad window and use the strace to watch for SIGCHLD signal.
When the SIGCHLD signal is emited, send SIGURS1 signal to yad.

Code:
#!/bin/bash
yad --icons --read-dir=/usr/share/applications \
--fullscreen --sort-by-name --undecorated \
--single-click --skip-taskbar --no-buttons & ICONS_PID=$!

strace -p $ICONS_PID -e trace=signal -s 32 2>&1 \
| while read -r line; do
        if [[ $line =~ "--- SIGCHLD" ]];then
           kill -s SIGUSR1 $ICONS_PID
           break
         fi
done


Signal SIGUSR1 closes the yad dialog with 0 exit status.

Problem bypassed.
Back to top
View user's profile Send private message 
MochiMoppel


Joined: 26 Jan 2011
Posts: 1921
Location: Japan

PostPosted: Tue 25 Dec 2018, 07:40    Post subject:  

misko_2083 wrote:
A light bulb flashed over my head , Idea
and told him to get the process id of the yad window and use the strace to watch for SIGCHLD signal.

...if he has the strace command installed. My Puppy hasn't.

This is another idea. Works similar to a menu. yad is killed when it loses focus:
Code:
#!/bin/bash
yad --icons --read-dir=/usr/share/applications \
 --fullscreen --sort-by-name --undecorated \
 --single-click --skip-taskbar --no-buttons & ICONS_PID=$!

sleep 1   #allow some time to create yad window
ACTIVEWINDOW=$(xprop -root _NET_ACTIVE_WINDOW)
while : ;do
   sleep 1
   [[ $(xprop -root _NET_ACTIVE_WINDOW) != $ACTIVEWINDOW ]] && kill $ICONS_PID && break
done
Back to top
View user's profile Send private message 
misko_2083


Joined: 08 Nov 2016
Posts: 87

PostPosted: Tue 25 Dec 2018, 14:06    Post subject:  

Spying on the root window's property _NET_ACTIVE_WINDOW is very useful when a new window is added to the window stack.

There is --close-on-unfocus, which closes the yad window when it loses focus. Not sure from which version of yad.

I was thinking about this. Launching applications doesn't nesesary make yad to lose the focus.
Some apps don't have a window or show a window only when the user press a key combo or at certain time (alarm), some may go to tray or to a different workspace, or simply start behind fullscreen yad.

In those cases you wouldn't know if you launched the application and may start it several times. Closing the icons dialog is like a confirmation in this case and more important, it stays out of your way after it's clicked.

If yad icons could write at stout or stderr we would know when the app is launched from it and close it. But it does not.
Back to top
View user's profile Send private message 
misko_2083


Joined: 08 Nov 2016
Posts: 87

PostPosted: Sat 12 Jan 2019, 11:57    Post subject:  

Just playing with html dialog.
Loading/previewing images.

Code:
yad --html --uri=/home/misko/Desktop/test.html





Here's test.html
Code:
 <!DOCTYPE html>
<html>
<body>

    <link rel="stylesheet" media="all" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" />

<style>
  .thumb {
    height: 300px;
    border: 1px solid #000;
    margin: 10px 5px 0 0;
  }
</style>

example 1

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<form id="form1" runat="server">
  <input type='file' id="imgInp" />
  <img id="blah" class="thumb" src="#" alt="your image" />
</form>
<script>
function readURL(input) {

  if (input.files && input.files[0]) {
    var reader = new FileReader();

    reader.onload = function(e) {
      $('#blah').attr('src', e.target.result);
    }

    reader.readAsDataURL(input.files[0]);
  }
}

$("#imgInp").change(function() {
  readURL(this);
});

</script>

<p>example 2</p>



<input type="file" id="files" style="display:none" accept="image/x-png,image/gif,image/jpeg" name="files[]" multiple />
<a href="javascript:;" onclick="getImage()"/>
    <img src="/usr/share/icons/Faenza/actions/32/gtk-open.png"/>
</a>
<output id="list"></output>

<script>
     function getImage(){
       $('#files').click();
     }
</script>

<script>
  function handleFileSelect(evt) {
    var files = evt.target.files; // FileList object

    // Loop through the FileList and render image files as thumbnails.
    for (var i = 0, f; f = files[i]; i++) {

      // Only process image files.
      if (!f.type.match('image.*')) {
        continue;
      }

      var reader = new FileReader();

      // Closure to capture the file information.
      reader.onload = (function(theFile) {
        return function(e) {
          // Render thumbnail.
          var span = document.createElement('span');
          span.innerHTML = ['<img class="thumb" src="', e.target.result,
                            '" title="', escape(theFile.name), '"/>'].join('');
          document.getElementById('list').insertBefore(span, null);
        };
      })(f);

      // Read in the image file as a data URL.
      reader.readAsDataURL(f);
    }
  }

  document.getElementById('files').addEventListener('change', handleFileSelect, false);

</script>
</body>
</html>


OK but how to set the desktop background now? Laughing

Most likely not possible, but something like Yradio-html radio player is probably doable?!
Back to top
View user's profile Send private message 
Display posts from previous:   Sort by:   
Page 35 of 50 [749 Posts]   Goto page: Previous 1, 2, 3, ..., 33, 34, 35, 36, 37, ..., 48, 49, 50 Next
Post new topic   Reply to topic View previous topic :: View next topic
 Forum index » Off-Topic Area » Programming
Jump to:  

You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You can download files in this forum


Powered by phpBB © 2001, 2005 phpBB Group
[ Time: 0.1684s ][ Queries: 13 (0.0989s) ][ GZIP on ]