Rated 5 stars at SnapFiles
   Shareware and Freeware



This Month's Donators S. Chlouba "Inspector Fixit" G. Johnston (P. Hoerr - - last month's top donator $50) ... more PayPal

 

Use with caution.
These public beta programs contain new fixes and new features that haven't been fully tested. I need you to tell me if you find any problems with these program or even if the changes listed work as you expect.

joejoe Aug-01-20 4:32 PM EDT

ArsClip Exception when Exiting

The latest Public Beta of ArsClip adds sequence information to the debug log when exiting the program. I'm currently trying to track down an intermittent issue that can cause an exception during shutdown.

Previously, during the finalization of the program, the debug log information would be cleared when the debug window was destroyed. The debug log has been updated that it is the last to be finalized.

EDIT: This issue has been fixed in the next Public Beta upload (Test 17).

joejoe May-24-20 8:17 PM EDT

Text Inspector and JavaScript

I've updated the Text Inspector window with a JavaScript section. This is designed to auto-generate code for the selected control to use in a Permanent Clip/Macro. The current two functions are "clickInWindow" and "focusControlByPath".

The clickInWindow() function is designed to click inside a specific top-level window using coordinates based on the top-left of this window. As long as the control is always located in the same location on the window, the relative coordinates will always click the same location independent of the top-left position of the window. The "ClassName" of the window is used to specify which window to focus. The simulated mouseclick can either set focus on a control or activate a control like a Button.

The focusControlByPath() function uses a relational path to navigate to specific control by ClassName/id instead of a coordinate location. The control is then given "keyboard focus". Windows controls have a designed parent>child relationship, similar to folders on a hard drive. The path string is similar to the full path name of a file.

Both functions may fail for specific programs if the window dynamically changes the location or the parent>child relationship of controls.

The Edit Permanent Clip window has a new [JavaScript > Text Inspector] section. This is mainly used for reference, but a programmer may be able to manually set the parameters of these functions.

joejoe May-18-20 11:13 PM EDT

Text Inspector Update

The current Public Beta of ArsClip adds "Extract" commands to Text Inspector. ListView Headers, ListBoxes, and TreeViews have their own control specific methods for extracting text.

For ListViews Headers, there are options to extract the text from all column headers and an option for an entire column. For example, you can copy the date column from a list of files in Explorer. For Listboxes, there is an option to extract all rows from the control. By default, only the currently selected row is extracted. For TreeViews, there is an option to extract the full path of an item. By default, only the current tree item is extracted. There's plenty of room for growth here.

This feature can sometimes interact with a page in a web browser. When it works, copying the name of a link and/or the target is trivial. When a page formats it's information as a grid or list, Text Inspector can extract individual data from the row and column.

Currently, the only commands for the content window are "Copy", "Copy + Exit", and "Extract". Since this window is mainly a textbox, ArsClip's own macros can already be run on this text. There is an idea to have a Permanent Group dedicated to the Text Inspector and integrate it into the window as a context menu. Such a feature wouldn't likely appear in the first version.

joejoe May-09-20 2:03 PM EDT

ArsClip and the Text Inspector

A new prototype feature has been added to ArsClip call the Text Inspector. This window is semi-transparent so you can click on program controls of other programs and receive information about them. The goal is to have an interactive tool that can extract text from Windows controls, even if you normally cannot copy text from the control. A secondary goal is to be able to use this window to generate JavaScript that can target specific controls in a window (not implemented).

Text Inspector targets Windows Common Controls. This include the Edit, ListBox, ListView (and it's column Header), Button, ComboBox, and TreeView controls. These controls are used in a variety of programs, but are generated and interacted with by Windows itself. Windows uses a messaging system for communication that any program can also use to interact with these controls. Programs with UAC protection (running as Admin) and custom made controls that don't respond to standard message cannot be interacted with.

myimage

In this example, Text Inspector is targeting a Header control and specifically showing the first column. The first textbox in Text Inspector itself shows the type and class name of the control. The second textbox shows the text retrieved from the control using standard Windows Messaging routines. The third textbox shows the parent-child information for the control.

myimage

This example shows the text extracted from the entire row of a ListView control in details mode. The grey and dark grey boxes are generated by ArsClip to show the selected control and the selected item of a control. Note that some "save as" dialogs use a standard ListView control, so Text Inspector can extract filenames and other file text from a selected item. Controls using the "Explorer Shell" to show files are not yet supported, since they are not standard "Common Controls" and are interacted with differently.

The next feature to implement is a context-sensitive interface. A panel of controls can show near the clicked control with routines to execute specific to the type of control selected. For example, the text of a single column of a ListView in "report" mode can be extracted. All items of a ListBox or the dropdown items of a ComboBox can be extracted.

Even though this feature lacks polish, it's important to gather feedback on wanted features. To get to this point, it has take a full week of research and testing. Feedback is needed to proceed in the right direction.

joejoe Apr-25-20 8:53 PM EDT

ArsClip and Rename Master Release Plans

The usual cycle for releases is: new features/refinements release -> fixes release(s) -> repeat. After a feature release, time is given to address major issues and gather feedback for the next set of features/refinements.

The current Public Beta of ArsClip is a fixes release. For example, the Online Code Examples broke last release and this is needed to show some of the newwe JavaScript features for automation. Those currently running the Public Beta can see the two new JavaScript examples. Test 7 is the last planned update before doing final exhaustive testing.

The current Public Beta of Rename Master is a features release. Since Rename Master hasn't had an official release in a long time, the current Public Beta is in feature freeze. While there are more ideas for further changes, a larger audience is required for more feedback. There are about 6 refinements and a complete redesign of the Insert Meta-Variables window to introduce.

joejoe Apr-20-20 8:41 PM EDT

Even more Tweaks for Rename Master

The latest Public Beta upload of Rename Master has some notable features.

A dropdown list of checked files is now available on the File Tags window and the Insert/Edit Meta-variables window. Before, the file list could be clicked to change the files used for data. This was not intuitive and hard to discover.

The Insert/Edit Meta-variables window has been re-designed and re-written. There is now a clear "left to right" order for the work flow. There's now an explicit way to insert multiple variables by using a "keep open" checkbox. By default, a single variable is inserted and the dialog is closed.

The "File Tags" can also be opened using the Insert popup menu on Renaming Steps. This helps improve the flow of working with the Renaming Script, so you don't have to switch focus to the File List for viewing file tag data. The "File Tags" window itself also has some small interface changes.

There's still room for improvement. The Renaming Script header portion has empty space for controls to work with the Renaming Steps. The "More" context menu for Renaming Steps has room for more menu items. The Meta-variables window can add more panels for inserting more variables. For example, the "View Tags" list could also be integrated directed into this window.

joejoe Apr-12-20 3:55 PM EDT

More Tweaks for Rename Master

The current Public Beta upload of RM adds some more minor changes to improve the discovery.

Controls related directly to the Renaming Steps have been made to look integrated into the script. This is a very small change with a significant impact. Also, a new help button has also been added to this area to describe the less obvious features. The Renaming Script has supported drag-and-drop re-ordering for a very long time, but there was no easy way to discover this without a help screen.

Alert dialogs have been integrated into the File List. This area is to communicate information about issues and optional ly show ways to solve them. For example, it will now detect when collisions or illegal characters are in the "New Name" column of the file list and show an option to uncheck these files. Another alert has been added for when there are no files/folders to shown that match the current filter. Before, a blank screen looked more like a program bug that just an empty list.

As always, thanks for your feedback.

joejoe Apr-11-20 6:13 PM EDT

Tweaks Planned for Rename Master

RM hasn't had any significant changes in a very long time. The good news is its function set and how it performs those tasks feels right. There's no need to make changes just for the sake of having a new version to advertise.

That being said, the interface does need some slight adjustments. About a year ago, a users create a very detailed document about how RM presents its features. The main issue for almost all points was how disjointed controls and menus were from the items they interact with. For example, to get a Meta-variable for a JPEG, you have to leave the Renaming Script area and use the file list to view the existing tag data found in the file. Then you have to copy that tag and go back to the Renaming Script step to paste it.

My current goals for the next version of RM are to improve discovery of functions and to logically relate controls to items. How to edit the Renaming script is going to be made easier to learn and use. The flow of working with tag data from files will be made more streamlines. Controls will be moved closer to the items that they interact with.

The current Public Beta addresses a few of the issues. The plain is to to more beta versions with less changes, so it's easier to see what's changed and easier to address user feedback quicker.

Older Items






Got an idea for improvement, a bug to report? Just want to say hello? Send me your feedback.
I can be contacted at jackass.joejoe@gmail.com English only please.