topbanner_forum
  *

avatar image

Welcome, Guest. Please login or register.
Did you miss your activation email?

Login with username, password and session length
  • Tuesday March 19, 2024, 1:16 am
  • Proudly celebrating 15+ years online.
  • Donate now to become a lifetime supporting member of the site and get a non-expiring license key for all of our programs.
  • donate

Last post Author Topic: Qatapult  (Read 330572 times)

ewemoa

  • Honorary Member
  • Joined in 2008
  • **
  • Posts: 2,922
    • View Profile
    • Donate to Member
Re: Qatapult
« Reply #125 on: February 16, 2012, 06:49 PM »
I've updated the Window (former winpult-mod) plugin -- should be attached to this post.

This update addresses the problem I was having earlier:

after I press right-arrow and subsequently select a window, pressing TAB doesn't appear to do anything -- I expected the second pane to receive focus, but it is blank.

MD5: 8d168c6b6184b6909c865c02cffbfab0

ewemoa

  • Honorary Member
  • Joined in 2008
  • **
  • Posts: 2,922
    • View Profile
    • Donate to Member
Re: Qatapult
« Reply #126 on: February 16, 2012, 06:53 PM »
BTW, for my local version I'm using the AHK plugin and this contains an appropriate Lib directory.  I don't know if it's helpful for this to be in the top level of Qatapult's directory as it seems to be in the current zip file -- perhaps that is now unnecessary?
« Last Edit: February 16, 2012, 07:50 PM by ewemoa »

ewemoa

  • Honorary Member
  • Joined in 2008
  • **
  • Posts: 2,922
    • View Profile
    • Donate to Member
Re: Qatapult
« Reply #127 on: February 16, 2012, 08:32 PM »
another-skin-attempt.7z - 95.4 KB

Was able to test -- looks nice :)

re: uploading.com
I had to train my patience a bit to try this out as I tried to download it to soon after downloading the changetext plugin :)


ewemoa

  • Honorary Member
  • Joined in 2008
  • **
  • Posts: 2,922
    • View Profile
    • Donate to Member
Re: Qatapult
« Reply #128 on: February 18, 2012, 02:41 AM »
Attached should be a very primitive one-off timer plugin.

Usage:

  • Pane 1: A string representing some amount of time in the future (e.g. 10 or 20:05 or 1h5s -- 10 seconds, 20 minutes and 5 seconds, and 1 hour and 5 seconds)
  • Pane 2: Timer
  • Pane 3: Optional text message to display

Using this functionality, I noticed that if I set a timer and then use the Calculate action before the timer has expired, the process for the timer (AutoHotkey.exe) seems to go away so the timer never expires...

MD5: e3c36921d6e7afafa224237b96ba3634

ecaradec

  • Honorary Member
  • Joined in 2006
  • **
  • Posts: 410
    • View Profile
    • Blog & Projects
    • Read more about this member.
    • Donate to Member
Re: Qatapult
« Reply #129 on: February 18, 2012, 03:08 PM »
That timer thing makes me think that a calendar source would be very nice. I could add pseudo-dates like tomorrow, next week, next month, etc...
Blog & Projects : Blog | Qatapult | SwiffOut | FScript

ecaradec

  • Honorary Member
  • Joined in 2006
  • **
  • Posts: 410
    • View Profile
    • Blog & Projects
    • Read more about this member.
    • Donate to Member
Re: Qatapult
« Reply #130 on: February 18, 2012, 03:09 PM »
However I tried it and haven't been able to see any displayed message... Where should it show up ?
Blog & Projects : Blog | Qatapult | SwiffOut | FScript

ewemoa

  • Honorary Member
  • Joined in 2008
  • **
  • Posts: 2,922
    • View Profile
    • Donate to Member
Re: Qatapult
« Reply #131 on: February 18, 2012, 05:31 PM »
It uses code similar to LargeType -- the message is supposed to show up as "lime" green text in an OSD-like manner.

For:
  • Pane 1: 5
  • Pane 2: Timer
  • Pane 3: (Empty)

I get "Time is up!" after around 5 seconds.

Using dbgview.exe, I get the following output:

shellexecute 'plugins\AHK\AutoHotkey.exe' 'plugins\Timer\Timer.ahk "5" ""' ''
Number of arguments passed in: 2
  TimeStr: 5
  MessageStr: Time is up!
Parsed Seconds Value: 5
Period: 5000

Note that the AHK plugin is a dependency.

ewemoa

  • Honorary Member
  • Joined in 2008
  • **
  • Posts: 2,922
    • View Profile
    • Donate to Member
Re: Qatapult
« Reply #132 on: February 19, 2012, 03:51 AM »
FWIW, tested Timer successfully with XP Pro SP3 and 7 Pro 64-bit.

I wonder what's not working...perhaps it's worth changing TimeUp to the following to see if it makes any difference:

Code: Autohotkey [Select]
  1. TimeUp:
  2. {
  3.   MsgBox, % MessageStr
  4.   Return
  5. }

ecaradec

  • Honorary Member
  • Joined in 2006
  • **
  • Posts: 410
    • View Profile
    • Blog & Projects
    • Read more about this member.
    • Donate to Member
Re: Qatapult
« Reply #133 on: February 19, 2012, 07:03 AM »
Just forget about it. I forgot to add the ahk lib to my plugin directory. It works.

It would be very nice to combine that timer plugin with snarl https://sites.google.com/site/snarlapp/ . May be I should handle some sort of notification plugin that would handle everything about notifications so that that could be redirected to any app ?
Blog & Projects : Blog | Qatapult | SwiffOut | FScript

ewemoa

  • Honorary Member
  • Joined in 2008
  • **
  • Posts: 2,922
    • View Profile
    • Donate to Member
Re: Qatapult
« Reply #134 on: February 19, 2012, 07:14 AM »
May be I should handle some sort of notification plugin that would handle everything about notifications so that that could be redirected to any app ?

Sounds like an interesting idea :)

May be you will find the "Handlers" and "Notifications" sections starting on page 32 of the QS manual to be worth investigating.

ewemoa

  • Honorary Member
  • Joined in 2008
  • **
  • Posts: 2,922
    • View Profile
    • Donate to Member
Re: Qatapult
« Reply #135 on: February 19, 2012, 07:36 PM »
Is there currently a way for a plugin to dynamically generate objects for Qatapult and/or provide Catalog objects?

ecaradec

  • Honorary Member
  • Joined in 2006
  • **
  • Posts: 410
    • View Profile
    • Blog & Projects
    • Read more about this member.
    • Donate to Member
Re: Qatapult
« Reply #136 on: February 20, 2012, 07:28 AM »
Not yet. That's definitly on my list, but I'm very careful about it since unlike rules I'll need to add a real extension mecanism with dll, etc... Requesting it might accelerate the whole thing. Sources have to provide the $x.variables and I'm not completly determined on the list of thoses variables.

I've also considered various possible way of extensions, one of them would be to regularly run an executable that would index things and return them as an csv output file.

Do you have an idea of Catalog you'd like to write, or is it just an idea ? Do you know which language you'd like to use ? C,C++ probably would be first as they'd be the most flexible, but I'm not sure if that would be the best option for most peoples.

Blog & Projects : Blog | Qatapult | SwiffOut | FScript

pigeonlips

  • Participant
  • Joined in 2011
  • *
  • Posts: 69
    • View Profile
    • Donate to Member
Re: Qatapult
« Reply #137 on: February 20, 2012, 05:46 PM »
@ewemoa
* If there had been problems, investigation might have been easier than working with a compiled version too as I've found being able to examine and modify source and test the results often helps in such situations.
.....
asdasd

I like the simplicity of the complied version. But i agree with all your points. I'll always include the .ahk file in the plugins folder. asdasd - guess i shouldnt be sticking strings in the script that for testing :) - lol If i wasnt compiling this wouldnt have happened!

I had to train my patience a bit to try this out as I tried to download it to soon after downloading the changetext plugin

sorry - first hit on google. Not sure how to upload an attachment to donationcode. Seems like the best place to put it so i'm glad your changing an re uploading them here. Thanks.


            
primitive one-off timer plugin.

nice thanks. "12:30 > Timer > lunch" :D\
It would be very nice to combine that timer plugin with snarl

:) - i'm a big fan of snarl. It comes with a small app called heysnarl that you can use to quick and easy leverage the api. For the timer app you could play around with this. Not tested yet but i'm sure it will work.

I have used snarl with other scripts i've written a ton of times. Normal approch for me passing in a arg for the "displaytype" and an case statement to run the notification in a msgbox, TrayTip, or Snarl.

If you want to play around with snarl : Add this bit at the top of the script:
notificationtimeout :=30
HeySnarlLocation :=path\to\heysnarl.exe ; change this to the path to hey snarl app exe

then in the TimeUp label use this:

  ; register with snarl
run "%HeySnarlLocation%" "register?app-sig=app/timer&title="Qataplut Timer"
; display definition
run "%HeySnarlLocation%" "notify?app-sig=app/timer&title="Qataplut Timer"&text="%MessageStr%"&timeout="%notificationtimeout%""
; unregister with snarl
run "%HeySnarlLocation%" "unregister?app-sig=app/timer&title="Qataplut Timer"
SoundBeep
Return







@ecaradec
the results pane now won't go further than the right side of Qatapult and center under each position of the cursor

I know its only cosmetic but i think it makes the app look nicer! Thanks.

By the way if you need to get an old version they are all available here : http://emmanuelcaradec.com/qatapult/bin

thanks :D

Do you have an idea of Catalog you'd like to write, or is it just an idea ?

* I'd like to try my hand at a paste bin type cat. IE a cat that has predifend text strings that can be pasted into the currently focused app. Think Email signatures, etc.

* also a plugin to get my bookmarks from my browser and add this to the website

Unfortunately my coding skills in a real languge are none existent. Outside a little autohotkey, vbs, python, i'm usless.

-----------------------------------------
 
is the number under the item in the drop down the weighting for relavence? just curious.

Thanks

ewemoa

  • Honorary Member
  • Joined in 2008
  • **
  • Posts: 2,922
    • View Profile
    • Donate to Member
Re: Qatapult
« Reply #138 on: February 20, 2012, 05:53 PM »
Do you have an idea of Catalog you'd like to write, or is it just an idea ?

Two items I started considering are:

  • OpenWith plugin - a bit like the FARR Akete plugin - show in the third pane candidate applications a user has pre-specified
  • Timers Catalog - this would allow a user to access already-set timers so they might be cancelled or rescheduled

Do you know which language you'd like to use ? C,C++ probably would be first as they'd be the most flexible, but I'm not sure if that would be the best option for most peoples.

I confess that C / C++ / Objective C are languages I have worked hard in the past to avoid -- sometimes writing plugins in C++ / Objective C that enable use of other programming languages instead.

With the popularity of ECMAScript, I think that would be a natural candidate -- not to mention the fact that JScript comes with Windows (so potentially no additional download).  I haven't figured out if it's possible to load a DLL using JScript though.  I'm curious about V8 (and possibly node.js) but I wonder about the potential impact on the size of the host application.
« Last Edit: February 20, 2012, 08:18 PM by ewemoa »

ewemoa

  • Honorary Member
  • Joined in 2008
  • **
  • Posts: 2,922
    • View Profile
    • Donate to Member
Re: Qatapult
« Reply #139 on: February 20, 2012, 08:01 PM »
I like the simplicity of the complied version. But i agree with all your points. I'll always include the .ahk file in the plugins folder.

I also like the simplicity of compiled things.  Perhaps there's some way to get the benefits of both in one download...not sure how though.

Appreciate your sharing the .ahk versions :up:



Not sure how to upload an attachment to donationcode.

May be this will help:

1. Press the Browse button

1. Push Browse Button.pngQatapult

2. Locate an appropriate file via the resulting dialog

3. Verify the path to the file

2. Verify Path.pngQatapult

Note there are restrictions via file extensions and file size but I usually don't find this to be a problem -- these are listed in text below the Browse button.

For other attachment capabilities, may be the following will help:

  new forum feature coded - ability to inline link attachments!

ewemoa

  • Honorary Member
  • Joined in 2008
  • **
  • Posts: 2,922
    • View Profile
    • Donate to Member
Re: Qatapult
« Reply #140 on: February 20, 2012, 08:09 PM »
nice thanks. "12:30 > Timer > lunch" :D\

Just to clarify, the current implementation only works with expressions that represent durations from now -- not actual times, so unless you're planning to start "lunching" 12 minutes and 30 seconds from now... :)



Thanks for the Snarl tips.  I hope to take a look in more detail soon.

ewemoa

  • Honorary Member
  • Joined in 2008
  • **
  • Posts: 2,922
    • View Profile
    • Donate to Member
Re: Qatapult
« Reply #141 on: February 21, 2012, 07:14 PM »
pigeonlips:

Regarding Snarl -- do you know if there are instructions for using it portably?  Or perhaps a portable version?  I haven't had much luck locating anything definite.

pigeonlips

  • Participant
  • Joined in 2011
  • *
  • Posts: 69
    • View Profile
    • Donate to Member
Re: Qatapult
« Reply #142 on: February 21, 2012, 07:53 PM »
Ok big disclaimer. This is very rough.

very very rough.

Its to import bookmarks from chromium.

You'll probably need to change the plugins.xml and also i have only tested on win xp with chromium.

It *should* add a rule to import all your bookmarks from chromium. If your a google chrome user you can possibly change line 13 in the import.vbs


Next steps are to make it work nicly, then to add support for firefox.

Firefox (from what i remember) uses SQLite too so this may be much easier.

all the same - enjoy.

pigeonlips

  • Participant
  • Joined in 2011
  • *
  • Posts: 69
    • View Profile
    • Donate to Member
Re: Qatapult
« Reply #143 on: February 21, 2012, 09:00 PM »
@ewemoa

don't think its portable. Sorry!

ewemoa

  • Honorary Member
  • Joined in 2008
  • **
  • Posts: 2,922
    • View Profile
    • Donate to Member
Re: Qatapult
« Reply #144 on: February 22, 2012, 02:04 AM »
don't think its portable.

Thanks for the clarification.

It's not likely I will use Snarl at this time.  Perhaps there will eventually be a portable version...

ecaradec

  • Honorary Member
  • Joined in 2006
  • **
  • Posts: 410
    • View Profile
    • Blog & Projects
    • Read more about this member.
    • Donate to Member
Re: Qatapult
« Reply #145 on: February 22, 2012, 07:16 AM »
I know its only cosmetic but i think it makes the app look nicer ! Thanks.
Qatapult is a very cosmetic app, so this is a good fix

I agree about the ECMAScript being the probable best choice. It would probably be JScript except if I can find a good reason not to use that if we go javascript. Beyond that it will probably be much faster that way because I've some familiarity with it ;). The annoying thing with JScript is the lack of libraries which means that I'll have to implement everything in the client, or that we'll have to rely on activexobject. I might also bind the libffi probably with a jsctypes taste to access the native api : https://wiki.mozilla.org/JSctypes

Beyond that we'll probably need a native extension mecanism that would allows more things, but as a starting point a script based thing might be powerful enough.

I'm also working on a skin thing these day. I'm a bit strugling making a system that works with various dimensions of input fields : most sources have a unique display (CONTACT looks different from FILE, or TEXT etc... ), which means that they'll need to handle drawing within variable dimensions. I'm approching a good comprise still.
Blog & Projects : Blog | Qatapult | SwiffOut | FScript

ewemoa

  • Honorary Member
  • Joined in 2008
  • **
  • Posts: 2,922
    • View Profile
    • Donate to Member
Re: Qatapult
« Reply #146 on: February 22, 2012, 06:54 PM »
Thanks for the status report :)

The annoying thing with JScript is the lack of libraries which means that I'll have to implement everything in the client, or that we'll have to rely on activexobject. I might also bind the libffi probably with a jsctypes taste to access the native api : https://wiki.mozilla.org/JSctypes

I agree about lack of libraries being a problem. 

Some kind of FFI as you suggest does sound like it might be a good strategic choice.



I hope that whatever choice is made, the app can remain portable.  When working with fscript.dll I often found myself looking for additional functionality -- and one route that seemed technically feasible was to get additional functionality by installing some COM-related bits.  IIRC, that often (always?) entails some kind of non-portable changes to the system via regsvr32 -- and I think that's not portable-friendly.  Do you know if this understanding is correct?

ewemoa

  • Honorary Member
  • Joined in 2008
  • **
  • Posts: 2,922
    • View Profile
    • Donate to Member
Re: Qatapult
« Reply #147 on: February 22, 2012, 07:31 PM »
Its to import bookmarks from chromium.

Is the following close to what it does?

  • Read Chrom(e|ium)'s Bookmarks file collecting URLs and associated names
  • Add the collected info to Qatapult's websites.db using sqlite3.exe

pigeonlips

  • Participant
  • Joined in 2011
  • *
  • Posts: 69
    • View Profile
    • Donate to Member
Re: Qatapult
« Reply #148 on: February 22, 2012, 09:35 PM »
yeah. In a nutshell,

VB script scraps the bookmarks file for Chrom(e|ium) looking for the name and the URL.

it strips out duff charators that cause some problems for SQLite and outputs the results into a text file in the %TEMP% folder that's formated into a sql query.

Then sqlite3.exe (bunddled commandlite tool for SQLite) runs the script and inserts data.

There are some limitations. I'm busy at the mo - but will put out another post (hopefully with some improvments) and a detailed explaination soon.

Much love.


ewemoa

  • Honorary Member
  • Joined in 2008
  • **
  • Posts: 2,922
    • View Profile
    • Donate to Member
Re: Qatapult
« Reply #149 on: February 23, 2012, 02:22 AM »
ecaradec:

I edited settings.xml to try out relative paths for searchFolders (e.g. ..) and it seems like it works :)  I hope this functionality remains as it is nice for portable set-ups where the drive letter can change easily.

I don't see the corresponding entry for .. via the Options dialog and when I edit via the Options dialog, I think the entry for .. get overwritten.