QuickReminder v0.6

Post your working scripts, libraries and tools
User avatar
jballi
Posts: 576
Joined: 29 Sep 2013, 17:34

QuickReminder v0.6

30 Mar 2015, 16:52

Post History
This project was first released on the original AutoHotkey forum. The original post can be found here. New versions of the project, if any, will be posted on this forum.

Introduction
There are a lot of time management programs out there. In the past, I used Microsoft Outlook to manage my general calendar and for general-purpose task management. I currently use a freeware program called Personal Reminder for general-purpose daily, weekly, and monthly reoccurring reminders.

What is missing from my time management arsenal is a tool to quickly set up same-day, one-use-only, reminders. Microsoft Outlook is a resource behemoth and I don't use it anymore. Personal Reminder is OK but it has several idiosyncrasies that make it difficult to tolerate as a short-term reminder program. I created QuickReminder to fill the gap.

QuickReminder
Key features:
  • Quick Add. New reminders can be quickly added by using a global hotkey (the default is Ctrl+Alt+R) or by double-clicking on the tray icon. The dialog was designed for quick keyboard entry and navigation. Reminder time can be entered as a countdown (hours, minutes, seconds) or as a date/time.
  • Friendly alarms. Yes, the alarms do take up screen real estate and they do make a noise, but the alarm windows are relatively small and they don't steal focus when displayed. If desired, the alarm text is spoken when the alarm is raised.
  • Snooze. Reminder alarms can be snoozed to a future time. Select from a list of snooze times or enter a custom snooze time.
  • Reminder List. To help manage pending reminders, a Reminder List window is provided. From this window, reminders can be added, edited, deleted, put on hold, and restarted..
Screenshots
Requirements
Starting with v0.6, this script will only run on AutoHotkey v1.1+. All versions (ANSI, 32-bit Unicode, and 64-bit Unicode) are supported. The script should work on Windows XP and greater but it has only been tested on Windows 7 Professional SP1.

The Code
The pertinent files are as follows:
  • Project: QuickReminder.zip. This archive includes source, executables (ANSI, Unicode, and Unicode x64), icons, sound, and help files.
  • Documentation: Future
Converting to/from Unicode
This section is for converting the QuickReminder configuration file. It's mostly about changes that may be needed to convert from v0.5 to v0.6. However, this information may be useful for future versions as well.

The QuickReminder configuration file, i.e. QuickReminder.ini, contains the text for each Reminder and the text for the Note List. Starting with v0.6, the script can run on a Unicode version of AutoHotkey which can read and write Unicode characters. Whether or not Unicode characters are correctly saved in the configuration file depends on how the file is encoded. Converting an existing configuration file may or may not be needed. Here's what you need to know.
  • New users. If running QuickReminder for the first time or if the configuration file has been deleted, everything is handled automatically. If running the ANSI version of AutoHotkey, the configuration file will be encoded for ANSI. If running a Unicode version of AutoHotkey, the configuration file will be encoded for UTF-16.
  • ANSI users. If using an existing configuration file (v0.5 or earlier), no changes are necessary because the configuration file is already encoding for ANSI.
  • Unicode users. Only uses ANSI characters. If using an existing configuration file (v0.5 or earlier) but if only ANSI characters are used, no changes are necessary. The configuration file is encoded for ANSI so only ANSI characters are read from and written to the file. This might useful if there is need to run both the ANSI and Unicode version of AutoHotkey.
  • Unicode users. If Unicode characters are used or will be used in the future, the current configuration file (v0.5 or earlier) must be encoded for UTF-16. There are many conversion utilities out there but the simplest way to do it is to open the file in Notepad, perform the "Save As" command, change the encoding to "Unicode", and then press the "Save" button to save the file.
  • Converting from Unicode to ANSI. If the configuration file has been converted to UTF-16, converting it back to ANSI is not necessary even if only using the ANSI version of AutoHotkey. Text will converted to/from ANSI as needed. However, the file can be converted to ANSI if desired. Open the file in Notepad, perform the "Save As" command, change the encoding to "ANSI", and then press the "Save" button to save the file.
Usage Notes
There is no formal documentation but here are a few notes...
  • Snooze
    When an alarm window is displayed, the user can enter (or select from a list) a snooze value that will reschedule the reminder to a future date/time. The Snooze field can contain two types of values:
    • Time Period. This is amount of time from the current time. The format is any number optionally followed by the letters "s" (seconds), "m" (minutes), "h" (hours), "d" (days), or "w" (weeks). Spaces and additional characters are ignored. If no letters are included, minutes are assumed. The following are valid snooze time periods:
      • 10s
        90 seconds
        45
        37.5 mins
        23 h
        12.75 hours
        2 days
        6 weeks
    • Clock Time. This is the actual clock time and can be entered in the 12-hour or 24-hour format. The 12-hour format is HH:MM.SS AM|PM and the range is 12:00 AM (midnight) to 11:59.59 PM. The 24-hour format is HH:MM.SS and the range is 00:00 (midnight) to 23:59.59. Many components of the format are flexible/optional. As long as program identifies the snooze value as a clock time and can interpret the value, it can be used. The following are valid snooze clock times:
      • 12:39.23 AM
        15:23.57
        4:11.37 Post Meridian
        2a
        00:7
        10 P.M.
        6:2p
      A few additional "Clock Time" considerations:
      • A clock time is always considered to be a time in the future. If it is currently 4 PM on Monday and snooze is set to 3 PM, the alarm will be set to 3 PM on the following day (Tuesday).
      • The total amount of time that can be set using this option is 24 hours (less 1 second). To snooze to a specific clock time that is more than 24 hours from the current time, edit the reminder by clicking on the "Edit" button.
Issues/Considerations
A few things to know...
  • Compatibility. The script is designed to run on all versions of AutoHotkey v1.1+ and most versions of Windows (Windows XP+) . The reality is that I only have one machine to test this software on. If you experience any problems with your version of AutoHotkey and/or your version of Windows, please let me know. I will try to correct the problem.
  • Portable version only. i.e. not User Account Control (UAC) aware. This program reads and writes to a configuration file in the program's folder. Future versions may be UAC aware or UAC optional.
  • Limited locale support. A few of the program's date/time fields support the user's locale settings but most use a static format. Sorry 'bout that.
  • External functions. This project uses a number of external functions which have been included in a "_Function" folders. Some of the functions are mine and should be clearly marked and documented. Functions written by others should be clearly marked but may contain custom modifications. Thanks to the original authors for sharing their work.
  • Unreleased libraries. This project uses one or more unreleased libraries. The library functions called by this project are working but other functions in these libraries may not be working and/or may not be tested. Do not use these libraries for other projects. You have been warned.
  • Limited documentation. With the exception of the information in this post, documentation/help is currently limited to a few tooltips and Help buttons in the Options window. Be sure to read the release notes for additional documentation/tips.
Release Notes
Last edited by jballi on 04 Jul 2017, 22:51, edited 1 time in total.
User avatar
jballi
Posts: 576
Joined: 29 Sep 2013, 17:34

Re: QuickReminder v0.6

30 Mar 2015, 16:55

v0.6
Port to AutoHotkey v1.1+ with a few new features. See the Release Notes section in the first post for more information. If an existing user, the QuickReminder.ini file from the previous version may need to be converted. See the Converting to/from Unicode section in the first post for more information.
User avatar
empardopo
Posts: 336
Joined: 06 Oct 2013, 12:50
Location: Spain
Contact:

Re: QuickReminder v0.6

31 Mar 2015, 02:09

I like your script.

1.- It could be interesting add a button to see my reminder list.
2.- It could be interesting add another type of alarm like a blinking screen. (In the script of the GeekDude's Binary Clock I have added a blink screen alarm).

Thanks very much for your script.
Everything is possible!
ObiWanKenobi

Re: QuickReminder v0.6

31 Mar 2015, 03:27

I like it, very useful, thank you very much!
Kind Regards
danielo515
Posts: 58
Joined: 18 Feb 2015, 15:06

Re: QuickReminder v0.6

13 Apr 2015, 13:43

I like it very much. Could you please consider including a hotkey option to launch the GUI?
User avatar
jballi
Posts: 576
Joined: 29 Sep 2013, 17:34

Re: QuickReminder v0.6

14 Apr 2015, 13:40

danielo515 wrote:I like it very much. Could you please consider including a hotkey option to launch the GUI?
QuickReminder has the option for 2 global keyboard shortcuts. One to show the Add Reminder window and another to show the Reminder List window. These hotkeys can be set and enabled in the "Windows" tab within the Options window. I hope this helps.
KevShaw
Posts: 11
Joined: 15 May 2015, 08:17

Re: QuickReminder v0.6

15 May 2015, 08:45

This is exactly what I needed! Awesome Sir, ty.
DigiDon
Posts: 178
Joined: 19 May 2014, 04:55
Contact:

Re: QuickReminder v0.6

09 Sep 2015, 09:30

Hi jballi,

Many thanks for this fast and effective quick reminder tool ! ;)

Everything is good to me in the source version, but when running compiled version (.exe) I always run into this error when clicking on the option item in the menu.

Error: 0x80045039 -
Source: (null)
Description: (null)
HelpFile: (null)
HelpContext: 0

Specifically: GetVoices

Line#
---> 11515: Loop,$OptionsGUI_SpVoice.GetVoices.Count

I couldn't figure out what's wrong and why it would work in the .ahk but not in the .exe version ...
It seems that it is not capable of getting the voices from my system anymore.
I tried running as admin with the same issue.
It does not seem to be blocked by my firewall (Comodo)...

Do you have any clue? :shock:

Thanks :)
EverFastAccess : Take Notes on anything the Fast way: Attach notes, Set reminders & Speed up research in 1 gesture - AHK topic
AHK Dynamic Obfuscator L - Protect your AHK code by Obfuscation - AHK topic
QuickModules for Outlook : Sort Outlook emails very quickly to multiple folders - AHK topic
Coding takes lots of time and efforts. If I have helped you or if you enjoy one of my free projects, please consider a small donation :thumbup:
Sorry I am working hard at the moment at a new job and can't commit on delays of answers & updates
User avatar
BGM
Posts: 465
Joined: 20 Nov 2013, 20:56
GitHub: bgmCoder
Contact:

Re: QuickReminder v0.6

09 Sep 2015, 10:37

Hey, this looks neat. I've been looking for a way to set reminders for when my ebay auctions expire. Right now I use a little alarm program for each individual auction, but it would be neat to try this. It would be even neater if it could login to ebay and fetch my bidding list.
User avatar
jballi
Posts: 576
Joined: 29 Sep 2013, 17:34

Re: QuickReminder v0.6

09 Sep 2015, 12:30

DigiDon wrote:[Snip...]
I'll PM you.
ivill
Posts: 112
Joined: 13 May 2016, 02:23

Re: QuickReminder v0.6

10 Oct 2016, 04:50

Hi, there, i know it's an old thread,but this script is quite useful for me, is there a way to click the tab(Note, Status) to range/sort all actived task by expired time/by name/by status ?
ivill
Posts: 112
Joined: 13 May 2016, 02:23

Re: QuickReminder v0.6

10 Oct 2016, 04:55

and a suggestion: in the "Add reminder" window, while typing the expired time, i.e the date time 17:53:12, or [xHour, xMinute,xSecond]. the keyboard cursor may moves to right, it will be more smooth..
User avatar
jballi
Posts: 576
Joined: 29 Sep 2013, 17:34

Re: QuickReminder v0.6

10 Oct 2016, 17:12

ivill, thank you for your interest.
ivill wrote:[Snip] ...is there a way to click the tab(Note, Status) to range/sort all actived task by expired time/by name/by status ?
This has been requested in the past. The following includes information that I published in the past.

This is not an easy change to make. The Status column contains calculated data that is not arranged in a format that is conducive to sorting. Clicking on the column header would have to be programmed to sort the data using an external routine which would have to sort according to status and then expiration date. Just thinking about it makes my head hurt. In addition, the refresh routine would have to be rewritten. Right now, the refresh code does a blind update to the ListView control because all rows are fixed in reminder # order. If sorting were allowed then the routine would have to search for the row to update.

I've updated this item on my list but let me repeat, just thinking about it makes my head hurt.
ivill wrote:and a suggestion: in the "Add reminder" window, while typing the expired time, i.e the date time 17:53:12, or [xHour, xMinute,xSecond]. the keyboard cursor may moves to right, it will be more smooth..
I apologize. I read this several times but I could not figure out what problem you are experiencing or what enhancement you are requesting. Could you clarify (maybe with an example) so that I understand what you are requesting. Thank you for your patience.
ivill
Posts: 112
Joined: 13 May 2016, 02:23

Re: QuickReminder v0.6

27 Nov 2016, 07:38

Hi, it's me again... i found that this become a daily use tool for me, but i just reached it's limit, it's up to 20 reminders totally, is it possible to make a quick update with more reminders(30-50)... thanks very much sir, or can you send me a copy would be nice, ivill66#gmail#com
User avatar
jballi
Posts: 576
Joined: 29 Sep 2013, 17:34

Re: QuickReminder v0.6

27 Nov 2016, 21:48

ivill wrote:Hi, it's me again... i found that this become a daily use tool for me, but i just reached it's limit, it's up to 20 reminders totally, is it possible to make a quick update with more reminders(30-50)... thanks very much sir, or can you send me a copy would be nice, ivill66#gmail#com
Thank you for your interest.

Unfortunately, I've made too many "not ready for prime time" personal changes to the code in the last few months so posting a new version right now is not in the cards. However, if you would like to make the change for your own personal use, please feel free to do so. There are only a few places in the code that need to be changed. I would warn you that the script is not designed for a large number of reminders. Every additional reminder adds a window and a new reminder that must be checked on every iteration (once per second). Bumping the limit to 25 probably wouldn't be very noticeable but bumping the limit to 50 or more could slow down the response considerably. And no, I haven't tried it myself.

I'm sorry I couldn't be more helpful. Good luck!
Tony-Sefina

Re: QuickReminder v0.6

04 Jul 2017, 20:49

Hi,

I want to download QuickReminder.zip, where I can find it.

thanks
User avatar
jballi
Posts: 576
Joined: 29 Sep 2013, 17:34

Re: QuickReminder v0.6

04 Jul 2017, 23:02

Tony-Sefina, Thank you for your interest. The link to the archive file became invalid when DropBox eliminated the "Public Folder" feature earlier this year. I've update the post with a new link to the archive. My apologies for the inconvenience.
Tony_Sefina

Re: QuickReminder v0.6

05 Jul 2017, 07:45

thanks jballi , perfect work.
User avatar
Tomer
Posts: 282
Joined: 21 Aug 2016, 05:11

Re: QuickReminder v0.6

06 Jul 2017, 11:42

Great program. Thanks 4 sharing!
iPhilip
Posts: 422
Joined: 02 Oct 2013, 12:21

Re: QuickReminder v0.6

06 Jul 2017, 12:57

Hi jballi,

Thank you for this application. I downloaded it and started to use it. I am finding it helpful. Thank you. I have a question about the Metadata described on your original post. It doesn't seem to work on this version. For example this note:
Today is {$Date$LongDate}. The time is {$Time$}
doesn't produce a time stamp. Was there a change in functionality or is there an easy way to restore it?

Thank you.
Windows 7 Pro (64 bit) - AutoHotkey v1.1+ (Unicode 32-bit)

Return to “Scripts and Functions”

Who is online

Users browsing this forum: hasantr, marbuendy and 40 guests