dchen327 / pingmote

Cross-platform Python global emote picker to quickly insert custom images/gifs

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Why is it called pingmote?

PySimpleGUI opened this issue · comments

This is such a stupid question for me to ask. But, I see it on my launcher and it bugs me that I have a hard time coorelating the name with the activity.

pingmote is located on the far right side of my launcher.

image

I haven't come up with my own name yet either. Why does this drive me crazy?? one my ask......
frust_112

It's because like to name things. I have names for important stuff at home and same with my programs.

Sorry for my ignorance David....... some days..... I'm a moron.... this month seems to be one of those....
palm_112

Hey!

Sorry I haven't been active much this week, hopefully I find some time soon to implement all the great ideas you've proposed!

I named it pingmote, mainly with "ping" coming from the sound Discord makes for notifications, and "mote" coming from emote :)

Also a while back I was using the Python package pynput for keyboard listening, and the "pyn" part kinda sounded like "ping" 😅

Ahhhhhh

Thank you!

BTW, I removed 2 images. Both of these caused errors when running on Python 3.6. I'm really big on making stuff that gathers as large of an audience as possible so I'm willing to sacrifice a couple of emoji's to be able to run on 3.6 systems.

crydeath
757356443878948944

I added the System Tray so that I get an icon on my desktop and I also get this message that appears during the init and slowly fades away:

image

I used a couple of the built-in PySimpleGUI emoji's for the icons.

These 2 lines of code were added to the end of your setup_gui method

        self.system_tray = sg.SystemTray(menu=['_', ['Show', 'Hide', 'Edit Me', 'Settings', 'Exit']], data_base64=sg.EMOJI_BASE64_PONDER)
        self.system_tray.show_message('Ready', 'Window created and hidden', messageicon=sg.EMOJI_BASE64_HAPPY_JOY)

And I ended up making a single click of that icon to show/hide your main window in addition to a double click doing the same.

Not sure if I posted all the code anywhere as I don't recall my previous posts. I'll make a gist or something with it. Trying to get a release out the door tonight.

Those two images are definitely pretty interesting

The system tray looks awesome -- does it work cross-platform, or only on windows?
Thanks for all the contributions!! I've added you to the list of contributors :)

Also how are you starting the program? Are you dropping a shortcut to a .pyw of the file in shell:startup, or is there a better way to launch the program in the background on boot?

I thought I had uploaded my copy, but I didn't. I've just been running it locally.
So I made a repo.

I don't recall everything I did but I do know I got rid of the need for config.py with the intent of using the PySimpleGUI User settings (json basically)
https://github.com/PySimpleGUI/pingmote

The SystemTray APIs are portable between tkinter, Qt and WxPython ports of PySimpleGUI. With Qt and Wx, it actually goes into the system tray. Wx is the least far along. Qt is being reworked but the GitHub version of PySimpleGUIQt.py should be good...Just know that PySimpleGUIQt is an engineering release. It's about feature complete, but a ton of stuff added to tkinter version last year put it a bit behind. Quite a bit of the code will port straight over though.

Anyway... oh, I hard coded my path to something and was gonna fix it with the settings screen. The icon already have a settings item

image

I like the clapping cat the best.

classpingcat

To launch, I launch it with my launcher, that giant square of buttons. All of my desktopwidgets I startup with the "Start all". It uses the Exec APIs in PySimpleGUI. It's how the browser, error messages that open your code to the line of the problem, and a bunch of other stuff works.

This is my startall doce. You could run it from a batch file or put a shortcut to someone in your windows startup folder or ?????
image

Interesting way to start everything! I'm trying to think of the easiest way for cross-platform launch on startup in the background, and I'm not quite sure how to do it. In Windows I have a pingmote.pyw copy, and I drop a shortcut to the file in shell:startup. In Linux, I'm pretty sure I should be able to just add the python command to startup, and I'm not quite sure for Mac. I believe on Mac and Linux, running in terminal with nohup should allow for background process as well.

Focusing on Windows for now, I wonder if there's some sort of script I can use to automate creating a copy of pingmote.py and renaming to pingmote.pyw on each commit/push?

On windows there's a startup forlder

You only need to get 1 thing running, like I do my launcher, and then it can launch whatever you want.

Oh, BTW, if you're using the user_settings APIs, then you can store keys and stuff, and distribute your code without the keys.

It's how the Weather Desktop Widget works and others now too

image