topbanner_forum
  *

avatar image

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

Login with username, password and session length
  • Thursday April 25, 2024, 6:08 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

Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - ecaradec [ switch to compact view ]

Pages: prev1 [2] 3 4 5 6 7 ... 17next
26
Ecaradec's Software / Re: Qatapult
« on: April 09, 2012, 05:59 PM »
Oups, I forgot to say that I moved all Qatapult verbs under the Qatapult file : type Qatapult and look at the available verbs

27
Ecaradec's Software / Re: Qatapult
« on: April 09, 2012, 05:18 PM »
I've uploaded a new version. This is the ground for the future settings ui that should be more usable. You can now enable and disable plugins from the UI. There is also a ton of less memory leaks.

There are new functions that you can use by doing a require("lib/clipboard.js") : they are clip and paste. Paste can optionally take a text to paste. You can also do a sendinput but it's currently limited to printable characters only. If you feel like improving it, I'll be happy to take your version and put it in Qatapult.

Both functions are built with direct call to win32 dll from javascript using the dynamic wrapper. Have a look to clipboard.js in lib if you want to see what it looks like.

There is a new jsmath plugin that eval javascript as a way to evaluate mathematical expression. Start a query with = on the first pane to trigger it. It work well but doesn't handle the display exactly the way I would like : The perfect thing ihmo would be to have a custom display on the first pane that display both the expression and the result, then a second pane with the operation. The current thing use 3 panes. I think that it might  be worthwhile that we use some specially named values that skins could detect and handle display for a large number of types instead of handling types individually like we do today : skins could be more versatile that way ihmo.

I've also fixed the collecter things as ewemoa suggested => please use now collector.js for your plugins now.

28
Ecaradec's Software / Re: Qatapult
« on: April 05, 2012, 05:13 PM »
I just spotted that autohotkey has a dll version http://www.autohotke...HotKeyIt/AutoHotkey/

Embedding that would allow to build scripts plugin directly with autohotkey.

29
Ecaradec's Software / Re: Qatapult
« on: April 05, 2012, 06:33 AM »
I don't know about the aesthetics of it, but the following display idea came up:

1. Press comma
2. Current pane extends vertically (like a stack?)
I think, I'll let skins handle that. I was considering doing something similar to QS as a default : putting extra arguments icon under each items. But that's going to be totally customisable in others skins.

History is something you'd need probably more access that you currently have. The history I though was most interesting is an history of rules, I really think that objects are insufficient, you want to repeat an action usually, not get the previous object. However I totally like the idea, and this is going to find its way into Qatapult.

Collecter is a a mistake. Thanks.

30
Ecaradec's Software / Re: Qatapult
« on: March 29, 2012, 06:16 PM »
The comma trick seems good to me. I had a look to integrate that this WE. This is really a core change and there is well over 50 places where I must fix things, so I will really need some quiet time to plug that. I don't know what could make it better, I think that allowing Qatapult to be a drop target might be nice so that we could drop files directly from the explorer into Qatapult. I would certainly use that. If you have some other usage ideas, I'm listening.

As a status update, I'm doing two things right now :
- fix memory leaks (I unplugged my memory leak finder to find a bug and left it unplugged. Leaks are not easier to find in larger quantities ;) )
- implementing a paste using the new DynaWrapper code. I have working clipboard code for text already. I'm also discovering that this is not a very easy environnement to develop into, but may be it will be easier as I write more wrappers.




31
Ecaradec's Software / Re: Qatapult
« on: March 29, 2012, 11:53 AM »
Do you mind if I change the name of setInput to setOutput ? I think it would be more appropriate.

32
Ecaradec's Software / Re: Qatapult
« on: March 29, 2012, 09:56 AM »
Just thinking that one of the common uses for setInput would be when you zip a file, or do something else with a file to reopen Qatapult with the ouput file focused.

33
Ecaradec's Software / Re: Qatapult
« on: March 26, 2012, 02:29 AM »
It seems I wasn't clear, I confirm you that setinput is the way to set the pane arguments. I struggled to find a decent name for the function and as a result I'm not sure that the final choice is a good fit. This might really be a too much thought method name.  :P

I think that it was absolutly necessary that I set type to the results : just setting the input query would have been completly unreliable, as you could have end up with the wrong result like an extra filename on some other person computer.

34
Ecaradec's Software / Re: Qatapult
« on: March 25, 2012, 02:28 PM »
I uploaded a new version again that allows to display an object as a result of a script command. It only works within a script command, you can't use it at any other moment and it can only set the first pane object. You can do something like that :

qatapult.setInput({type:"FILE",text:"c:\\",path:"c:\\"});

or

qatapult.setInput({type:"TEXT",text:"hello"});

35
Ecaradec's Software / Putty plugin for Qatapult
« on: March 25, 2012, 01:43 PM »
The putty plugin add a new method to putty (an ssh client ). It add an extra connect verb to anything that match the putty.exe filename, list the availables configurations and directly connect to the selected one.

[attach=#2][/attach]

It's also a good demonstration plugin if you want to write plugins that add extra verbs to applications in Qatapult.

36
Ecaradec's Software / Re: Qatapult
« on: March 25, 2012, 01:34 PM »
I've uploaded a new version, the main feature is a kind of a filter. Rule arguments can now match some subproperties of object. This is very useful to add extra methods to applications. I've created a putty plugin that add a connect method and that list the server configurations availables in the registry.

The syntax of the argument looks like that :
<arg>
  <type>FILE</type>
  <pred>rfilename=PUTTY.EXE</pred>
</arg>

The pred node is a filter that will make FILE only match if rfilename is putty.exe. The value name is flexible, you can test any value available on the object : path, text, icon, or any other custom value. The match is case insensitive.

There is also a regex predicate that you can enable by typing filename~=xxx . The important difference is the operator '~='. I think that it might be useful to propose custom actions if a text match a url like "http://" or an email or math expression (starting with = with only operator expression ? ). Regex tests are case sensitive too.


37
Ecaradec's Software / Re: Qatapult
« on: March 25, 2012, 07:58 AM »
Is there any way to tweak the scores of the objects added via plugins?
It's possible to specify a bonus field to your results to boost it's score : addObject(type, {bonus:100}); A negative bonus would also works but I'm not sure if that's a good or bad idea.

As a side note, may be it's worth having MessageBoxW
Yes, just wrote it and I'll add it to the library. messagebox or msgbox would be a better name, I'd rather have simplified functions than the direct windows API as it will be easier for everyone.

For notifications, I think we should really offer some flexibility, might be we need a notify function that can have several behavior based on a settings so that the result can be handled by Qatapult, Growl or Windows, or something else.

About reoperating results, I agree with you. That's something I'd like to have several times as using qatapult. I'm wondering if what you want to place on the first pane is a typed result or just a text.

38
Ecaradec's Software / Re: Qatapult
« on: March 22, 2012, 06:32 PM »
Hello,

It has been long but native calls seems to work, at least in the cases I tried. I wrote a few basic functions to read and write from the registry. There is also a function to read a file, but it's meant to do binary reading not text so it's currently not as useful as FileSystemObject is. If you want to add new functions don't forget to get debugview up and running. It makes things easier, and don't forget you're going native so expects crashes as you fine tune your parameters.

Plugins can also require libraries using the keyword require so share your libraries, I'll add them to the lib directory of Qatapult.

Have a look at the Uninstall plugin which use natives functions to read the registry to get started.

And the Qatapult website has a new developer section with rudimentary documentation and an enhanced look : http://emmanuelcaradec.com/qatapult/

39
Ecaradec's Software / Uninstall plugin for Qatapult
« on: March 22, 2012, 06:31 PM »
Uninstall gives a quick access for uninstalling applications. It's a similar plugin to the one that exists on FARR.

[attach=#2][/attach]

It's also a demonstration plugin for the native dll call wrapper of Qatapult.

40
Ecaradec's Software / Re: Qatapult
« on: March 17, 2012, 07:10 PM »
Correct, I can't get GetBSTRAddr to work either. May be that's a javascript issue as the component seems to be made to work with VBScript ? I asked the developer he doesn't mind to share his sources and we will not go really far without the sources.

41
Ecaradec's Software / Re: Qatapult
« on: March 16, 2012, 07:00 PM »
I tried it and it works nicely.

I'm not sure about what you're trying to accomplish, but listing the items in you catalog can be accomplished by adding a extra rule that list objects from your collect source. It could be a rule like : List Notes,LINENOTE. This is the method I would favor as you can customise the icon etc...

When you'll type list notes, Qatapult will query all plugins for LINENOTE object. I'm not sure if this is a good idea or not you can also return TEXT object when rules expect TEXT and LINENOTE when then expect that.

I think there is something that is missing here, it should be possible to return multityped objects or something, because you can't really reuse LINENOTE objects as TEXT because they won't be recognized by rules as such... If you have some thoughts about that let me know.

42
Ecaradec's Software / Re: Qatapult
« on: March 16, 2012, 05:59 PM »
Yes regsvr is required but this is for the short term. If it proves a viable solution I can integrate it inside Qatapult.

43
Ecaradec's Software / Re: Qatapult
« on: March 16, 2012, 04:04 PM »
Also I've tried to read the registry though WMI calls and it was painfully slow... My original idea was that libffi was the solution. The issue was that it would be relatively long to implement.

However I've also found this activex component that might be easier to integrate as it already provide the activescripting binding :

http://www.borncity....aar1/WSHDynaCall.htm

It's a script component that allows to do native call to dll. It's not as clean as libffi but if it works for you I might integrate that into Qatapult. That would make possible to build a javascript library to read files, etc... I've not tried it but as it's a component you should be able to play with it on you computer to evaluate if it's solve your problem.

If that works we could build a set of js libraries to call native functions more easily.

Let me know.

44
Ecaradec's Software / Re: Qatapult
« on: March 16, 2012, 12:19 PM »
I had a look at it. I thought is would be possible to use the stream property, but there seem to be no access to bytes. There seems to be ways to do that with ADODB objects, but using properties of objects that are not made for that purpose is not really nice.

45
Ecaradec's Software / Re: Qatapult
« on: March 11, 2012, 01:15 PM »
I've found a small issue with the latest build and probably a few others. If you invoked a command on a result from the result list that is not the first, the bonus was assigned to the first item instead of the selected one.

46
Ecaradec's Software / Re: Qatapult
« on: March 10, 2012, 03:18 PM »
Here is a new version. What's changed :
- I added support for creating commands in script. Add *.command.js files under the plugin folder, all the methods defined there are loaded into Qatapult and you can call them from the rules using the tag <script>. Define your rule like this :
       <rule>
            <arg>TEXT</arg>
<arg>
<item>
<lbl>Append to file</lbl>
<ico>icons\defaultverb.png</ico>
</item>
</arg>
            <script>appendtofile(qatapult.getArgValue(0,"text"),"plugins\\commands\\test.txt")</script>
</rule>
- The matching method is much improved : it now takes into account if the match is near the start of the word or if the query match characters consecutively and gives appropriate bonuses
- You can now use page up and page down to navigate the results
- You can configure the color of results with ui.resultBgColor, ui.resultFocusColor, and ui.resultScrollbarColor (because there is a scrollbar now ;) )
- You can also configure other like fontfamily, stringTrimming to change the font for various text in the skin. I'll extract a full doc.
- You can also take complete ownership of the rendering of the results and draw them exactly as you want them with a API similar to the one of the args. However the drawResult might be preferable unless you have some very specific idea. Here is an example that can be plugged into the alfred-like skin :
       var nbres=4;
        qatapult.setVisibleResults(nbres);
        for (var i = qatapult.firstResult; i < qatapult.firstResult + nbres; i++) {
            var y=65+(i-qatapult.firstResult) * 40;
            if(qatapult.focusedResult==i)
                ui.fillRectangle(SkinBorder,y,(SkinWidth/2)-SkinBorder,40, 0x88FF0000);

            if(qatapult.getResValue(i,"type")=="TEXT")
                ui.drawText(qatapult.getResValue(i,"text"),SkinBorder, y+2, (SkinWidth/2)-SkinBorder, 38);                
            else {            
                ui.drawResItem(i, SkinBorder, y, 40, 40);
                ui.drawText(qatapult.getResValue(i,"text"),SkinBorder+45,y+10,(SkinWidth/2)-SkinBorder-50,10);
            }
        }

47
Ecaradec's Software / Re: Qatapult
« on: March 09, 2012, 06:46 AM »
Win 7 previews are a very cool idea ! I can enable that for Win 7 for the WINDOW type.

48
Ecaradec's Software / Re: Qatapult
« on: March 08, 2012, 05:36 PM »
I don't think you can pigeonlips. I keep an internal state about the visibility of the results and I'm using it for handling the esc key. There is no way you could fix that on the side, and I'd rather you don't try because that would necessarily be tricky if you found something and that could be an ascendency compatibility issue.

Don't worry, I'll fix it soon.

49
Ecaradec's Software / Re: Qatapult
« on: March 08, 2012, 02:39 PM »
Thinking about something else : Do you think it would be worthwhile that I ask mouser a child board ? This is a little bit of a mess here, would you like to be able to have your own thread of plugins and extensions ?

50
Ecaradec's Software / Re: Qatapult
« on: March 08, 2012, 02:37 PM »
Hi, I'm in the middle of an PC update, I'm not sure I'll get my PC available this evening  :'(. Can't work on Qatapult.

Pages: prev1 [2] 3 4 5 6 7 ... 17next