From 25a3242bb2117ab2c3f6e07dd5d18bb97d1d84e9 Mon Sep 17 00:00:00 2001 From: ManiacDC Date: Fri, 10 Oct 2014 12:47:26 -0400 Subject: [PATCH 01/62] Initial Pass using SQLite --- DBA license.txt | 15 + Source/Includes/Wordlist.ahk | 249 +++----- Source/Lib/ADO.ahk | 55 ++ Source/Lib/ArchLogger.ahk | 40 ++ Source/Lib/Base.ahk | 144 +++++ Source/Lib/Collection.ahk | 104 ++++ Source/Lib/DBA.ahk | 37 ++ Source/Lib/DataBaseADO.ahk | 206 +++++++ Source/Lib/DataBaseAbstract.ahk | 312 ++++++++++ Source/Lib/DataBaseFactory.ahk | 36 ++ Source/Lib/DataBaseMySQL.ahk | 249 ++++++++ Source/Lib/DataBaseSQLLite.ahk | 343 +++++++++++ Source/Lib/MemoryBuffer.ahk | 175 ++++++ Source/Lib/RecordSetADO.ahk | 120 ++++ Source/Lib/RecordSetMySQL.ahk | 109 ++++ Source/Lib/RecordSetSqlLite.ahk | 165 +++++ Source/Lib/SQLite_L.ahk | 1016 +++++++++++++++++++++++++++++++ Source/Lib/clean.bat | 1 + Source/Lib/mySQL.ahk | 431 +++++++++++++ Source/Lib/sqlite3.def | 203 ++++++ Source/Lib/sqlite3.dll | Bin 0 -> 595072 bytes Source/Lib/x64/sqlite3.dll | Bin 0 -> 900096 bytes Source/TypingAid.ahk | 53 +- 23 files changed, 3888 insertions(+), 175 deletions(-) create mode 100644 DBA license.txt create mode 100644 Source/Lib/ADO.ahk create mode 100644 Source/Lib/ArchLogger.ahk create mode 100644 Source/Lib/Base.ahk create mode 100644 Source/Lib/Collection.ahk create mode 100644 Source/Lib/DBA.ahk create mode 100644 Source/Lib/DataBaseADO.ahk create mode 100644 Source/Lib/DataBaseAbstract.ahk create mode 100644 Source/Lib/DataBaseFactory.ahk create mode 100644 Source/Lib/DataBaseMySQL.ahk create mode 100644 Source/Lib/DataBaseSQLLite.ahk create mode 100644 Source/Lib/MemoryBuffer.ahk create mode 100644 Source/Lib/RecordSetADO.ahk create mode 100644 Source/Lib/RecordSetMySQL.ahk create mode 100644 Source/Lib/RecordSetSqlLite.ahk create mode 100644 Source/Lib/SQLite_L.ahk create mode 100644 Source/Lib/clean.bat create mode 100644 Source/Lib/mySQL.ahk create mode 100644 Source/Lib/sqlite3.def create mode 100644 Source/Lib/sqlite3.dll create mode 100644 Source/Lib/x64/sqlite3.dll diff --git a/DBA license.txt b/DBA license.txt new file mode 100644 index 0000000..b60e3da --- /dev/null +++ b/DBA license.txt @@ -0,0 +1,15 @@ + AHK DBA - OOP Database Access Framework + Copyright (C) 2012 IsNull and other contributors + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . \ No newline at end of file diff --git a/Source/Includes/Wordlist.ahk b/Source/Includes/Wordlist.ahk index 930aee1..23dc763 100644 --- a/Source/Includes/Wordlist.ahk +++ b/Source/Includes/Wordlist.ahk @@ -5,7 +5,27 @@ ReadWordList() global ;mark the wordlist as not done WordListDone = 0 - + + wDB := DBA.DataBaseFactory.OpenDataBase("SQLite", A_ScriptDir . "\WordlistLearned.db" ) + if !wDB + { + msgbox Problem opening database '%A_ScriptDir%\WordlistLearned.db' - fatal error... + exitapp + } + + IF not wDB.Query("CREATE TEMP TABLE Words (hash TEXT, word TEXT UNIQUE, count INTEGER);") + { + msgbox Cannot Create Table - fatal error... + ExitApp + } + + IF not wDB.Query("CREATE INDEX temp.Hash ON Words (hash);") + { + msgbox Cannot Create Index - fatal error... + ExitApp + } + + wDB.BeginTransaction() ;reads list of words from file FileRead, ParseWords, %A_ScriptDir%\Wordlist.txt Loop, Parse, ParseWords, `n, `r @@ -13,11 +33,12 @@ ReadWordList() AddWordToList(A_LoopField,0) } ParseWords = + wDB.EndTransaction() ;Force LearnedWordsCount to 0 as we are now reading Learned Words from the Learned Words file IfEqual, LearnedWordsCount, LearnedWordsCount=0 - + ;reads list of words from file FileRead, ParseWords, %A_ScriptDir%\WordlistLearned.txt Loop, Parse, ParseWords, `n, `r @@ -42,13 +63,17 @@ ReverseWordNums: ;We don't need to deal with any counters if LearnMode is off IfEqual, LearnMode, Off, Return - + +wDB.BeginTransaction() LearnedWordsCount+=4 Loop,parse,LearnedWords, %DelimiterChar% { - AsciiWord := ConvertWordToAscii(A_LoopField,0) - zCount%AsciiWord% := LearnedWordsCount - zCount%AsciiWord% + StringLeft, baseword, A_LoopField, %wlen% + baseword := ConvertWordToAscii(baseword,1) + WhereQuery := "WHERE word = '" . A_LoopField . "'" + wDB.Query("UPDATE words SET count = (SELECT " . LearnedWordsCount . " - count FROM words " . WhereQuery . ") WHERE " . WhereQuery . ";") } +wDB.EndTransaction() AsciiWord = LearnedWordsCount = @@ -68,6 +93,11 @@ AddWordToList(AddWord,ForceCountNewOnly) Local CountWord Local pos Local LearnModeTemp + Local WhereQuery + Local QueryResult + Local CountValue + Local each + Local row IfEqual, LearnMode, On { @@ -99,7 +129,10 @@ AddWordToList(AddWord,ForceCountNewOnly) { LegacyLearnedWords=1 ; Set Flag that we need to convert wordlist file IfEqual, LearnedWordsCount, + { LearnedWordsCount=0 + wDB.EndTransaction() + } } } } @@ -122,8 +155,9 @@ AddWordToList(AddWord,ForceCountNewOnly) { IfNotEqual,LearnedWordsCount, ;if this is a stored learned word, this will only have a value when LearnedWords are read in from the wordlist { - CountWord := ConvertWordToAscii(addword,0) - IfEqual,zCount%CountWord%, ; if we haven't yet added this word, add it to the count and list + WhereQuery := "WHERE word = '" . addword . "'" + QueryResult := wDB.Query("SELECT * FROM words " . WhereQuery . ";") + IF !QueryResult ; if we haven't yet added this word, add it to the count and list { IfEqual, LearnedWords, ;if we haven't learned any words yet, set the LearnedWords list to the new word { @@ -131,13 +165,14 @@ AddWordToList(AddWord,ForceCountNewOnly) } else { ;otherwise append the learned word to the list LearnedWords .= DelimiterChar . addword } - zCount%CountWord% := LearnedWordsCount++ ;increment the count and store the Weight of the LearnedWord in reverse order (will be inverted later) + wDB.Query("INSERT INTO words VALUES ('" . base . "','" . addword . "','" . LearnedWordsCount++ . "');") } - } - IncrementCounterAndAddWord(Base,AddWord) + } else { + wDB.Query("INSERT INTO words (hash,word) VALUES ('" . base . "','" . addword . "');") + } } else { ; If this is an on-the-fly learned word - AddWordInList := CheckIfWordInList(Base,AddWord) + AddWordInList := wDB.Query("SELECT * FROM words WHERE word = '" . AddWord . "';") IfEqual, AddWordInList, ; if the word is not in the list { @@ -154,38 +189,49 @@ AddWordToList(AddWord,ForceCountNewOnly) Return } - + + IfEqual, ForceCountNewOnly, 1 + { + CountValue = %LearnCount% ;set the count to LearnCount so it gets written to the file + } else { + CountValue = 1 ;set the count to one as it's the first time we typed it + } + IfEqual, LearnMode, On { - CountWord := ConvertWordToAscii(addWord,0) - IfEqual, ForceCountNewOnly, 1 - { - zCount%CountWord% = %LearnCount% ;set the count to LearnCount so it gets written to the file - } else { - zCount%CountWord% = 1 ;set the count to one as it's the first time we typed it - } - } + wDB.Query("INSERT INTO words VALUES ('" . base . "','" . addword . "','" . CountValue . "');") + } else { + wDB.Query("INSERT INTO words (hash,word) VALUES ('" . base . "','" . addword . "');") + } + IfEqual, LearnedWords, ;if we haven't learned any words yet, set the LearnedWords list to the new word { LearnedWords = %addword% } else { ;otherwise append the learned word to the list LearnedWords .= DelimiterChar . addword } - IncrementCounterAndAddWord(Base,AddWord) IfEqual, LearnMode, On { IfEqual, ForceCountNewOnly, 1 - UpdateWordCount(addword,1) ;resort the necessary words if it's a forced added word + UpdateWordCount(addword,1) ;re-sort the necessary words if it's a forced added word } } else { IfEqual, LearnMode, On - { + { IfEqual, ForceCountNewOnly, 1 { - CountWord := ConvertWordToAscii(addWord,0) - IF ( zCount%CountWord% < LearnCount ) - zCount%CountWord% = %LearnCount% + + For each, row in AddWordList.Rows + { + CountValue := row[3] + break + } + + IF ( CountValue < LearnCount ) + { + wDB.QUERY("UPDATE words SET count = ('" . LearnCount . "') WHERE word = '" . addword . "');") + } UpdateWordCount(addWord,1) } else { UpdateWordCount(addword,0) ;Increment the word count if it's already in the list and we aren't forcing it on @@ -240,93 +286,13 @@ DeleteWordFromList(DeleteWord) ; Restore old case sensitive setting StringCaseSense, %OldStringCaseSense% - Base := ConvertWordToAscii(SubStr(DeleteWord,1,wlen),1) - - DeleteWordInList := CheckIfWordInList(Base,DeleteWord) - - IFEqual, DeleteWordInList, ;If the word is not in the list, skip out. - Return - - CountWord := ConvertWordToAscii(DeleteWord,0) - - zCount%CountWord% = - - CurrentNum := zbasenum%base% - - Loop - { - IFEqual, CurrentNum, 0, Break - - IF ( zword%base%%CurrentNum% == DeleteWord ) - { - Loop - { - NextNum := CurrentNum +1 - IF ( NextNum = zbasenum%base% +1 ) - Break - zword%base%%CurrentNum% := zword%base%%NextNum% - CurrentNum ++ - } - zword%base%%CurrentNum% = - zbasenum%base% := zbasenum%base% - 1 - Break - } - CurrentNum-- - Continue - - -; IfEqual, zword%base%%a_index%,, Break -; IF ( zword%base%%a_index% == DeleteWord ) - ; { - ; zword%base%%a_index% = - ; DeletedCount++ - ; } else { - ; IfGreaterOrEqual, DeletedCount, 1 - ;;; { - ; DeletedIndex := a_index - DeletedCount - ; zword%base%%DeletedIndex% := zword%base%%a_index% - ; zword%base%%a_index% = - ; } - ; } - - ;Continue - } + wDB.Query("DELETE FROM words WHERE word = '" . DeleteWord . "';") Return } ;------------------------------------------------------------------------ -IncrementCounterAndAddWord(Base,AddWord) -{ - global - local pos - ; Increment the counter for each hash - zbasenum%Base%++ - pos := zbasenum%Base% - ; Set the hashed value to the word - zword%Base%%pos% = %addword% -} - -CheckIfWordInList(Base,AddWord) -{ - local AddWordInList - - Loop ;Check to see if the word is already in the list, case sensitive - { - IfEqual, zword%base%%a_index%,, Break - if ( zword%base%%a_index% == AddWord ) - { - AddWordInList = 1 - Break - } - Continue - } - Return AddWordInList -} - -;------------------------------------------------------------------------ - UpdateWordCount(word,SortOnly) { global @@ -337,51 +303,27 @@ UpdateWordCount(word,SortOnly) IfEqual, LearnMode, Off Return - ;force words to max of MaxLengthInLearnMode characters - StringLeft, Word, Word, %MaxLengthInLearnMode% + IfEqual, SortOnly, + Return + + Local CountValue + Local Query + Local ValueType + Local Values + Local each + Local row + + Query := wDB.Query("SELECT count FROM words WHERE word = '" . word . "';") - ; If the Count for the word already exists - ie if it's a learned word, increment it, else don't. - local CountWord := ConvertWordToAscii(word,0) - IfNotEqual, zCount%CountWord%, + For each, row in Query.Rows { - IfNotEqual, SortOnly, 1 ;don't increment the count if we only want to sort the words - zCount%CountWord%++ - local WordBase - StringLeft, WordBase, word, %wlen% ;find the pseudohash for the word - WordBase := ConvertWordToAscii(WordBase,1) - Local ConvertWord = - Local LowIndex = - Local WordList = - Loop - { - ifequal, zword%WordBase%%A_Index%, ;Break the loop if no more words to read for the hash - Break - CountWord := zword%WordBase%%A_Index% ;Set CountWord to the current Word position - ConvertWord := ConvertWordToAscii(CountWord,0) ; Find the Ascii equivalent of the word - IfNotEqual, zCount%ConvertWord%, ;If there's no count for this word do nothing - { - IfEqual, LowIndex, - LowIndex = %A_Index% ;If this is the first word we've found with a count set this as our starting position - - WordList .= DelimiterChar . zCount%ConvertWord% . "z" . CountWord ;prefix all words with (zCount"z") - } - } - - ifnotequal, Wordlist, ;If we have no words to process, don't - { - StringTrimLeft, WordList, WordList, 1 - Sort, WordList, N R D%DelimiterChar% ;Sort the wordlist by order of - - LowIndex-- ;A_Index starts at 1 so this value needs to be decremented - Local IndexPos = - Loop, Parse, WordList, %DelimiterChar% - { - IndexPos := LowIndex + A_Index ;Set the current word we are processing to the starting pos plus word position - StringTrimLeft, CountWord, A_LoopField, InStr(A_LoopField,"z") ;Strip (Number,"z") from beginning - zword%WordBase%%IndexPos% = %CountWord% ; update the word in the list - - } - } + CountValue := row[1] + break + } + + IfNotEqual, CountValue, + { + Query := wDB.Query("UPDATE words SET count = ('" . CountValue++ . "') WHERE word = '" . word . "';") } Return } @@ -421,7 +363,8 @@ MaybeUpdateWordlist() local LearnedwordsPos local ParseWords ; Update the Learned Words - IfNotEqual, LearnedWords, + ;IfNotEqual, LearnedWords, + If (!1) { IfEqual, WordlistDone, 1 { @@ -487,4 +430,8 @@ MaybeUpdateWordlist() } } + wDb.Query("DROP INDEX temp.hash ON Words;"), + wDB.Query("DROP TABLE Words;"), + wDB.Close(), + } \ No newline at end of file diff --git a/Source/Lib/ADO.ahk b/Source/Lib/ADO.ahk new file mode 100644 index 0000000..7e126f7 --- /dev/null +++ b/Source/Lib/ADO.ahk @@ -0,0 +1,55 @@ + + + + +/* +* Provides Static ADO Helper classes and Enums +* +*/ +class ADO +{ + class CursorType + { + static adOpenUnspecified := -1 + static adOpenForwardOnly := 0 + static adOpenKeyset := 1 + static adOpenDynamic := 2 + static adOpenStatic := 3 + } + + class LockType + { + static adLockUnspecified := -1 + static adLockReadOnly := 1 + static adLockPessimistic := 2 + static adLockOptimistic := 3 + static adLockBatchOptimistic := 4 + } + + class CommandType + { + static adCmdUnspecified := -1 + static adCmdText := 1 + static adCmdTable := 2 + static adCmdStoredProc := 4 + static adCmdUnknown := 8 + static adCmdFile := 256 + static adCmdTableDirect := 512 + } + + class AffectEnum + { + static adAffectCurrent := 1 + static adAffectGroup := 2 + } + + class ObjectStateEnum + { + static adStateClosed := 0 ; The object is closed + static adStateOpen := 1 ; The object is open + static adStateConnecting := 2 ; The object is connecting + static adStateExecuting := 4 ; The object is executing a command + static adStateFetching := 8 ; The rows of the object are being retrieved + } + +} \ No newline at end of file diff --git a/Source/Lib/ArchLogger.ahk b/Source/Lib/ArchLogger.ahk new file mode 100644 index 0000000..f6f429a --- /dev/null +++ b/Source/Lib/ArchLogger.ahk @@ -0,0 +1,40 @@ +#Include + +class ArchLogger +{ + static Logger := new _ArchLoggerFile() + + SetLogger(newLogger){ + ArchLogger.Logger := newLogger + } + + Log(msg){ + date := A_DD "." A_MM "." A_YYYY + time := A_Hour ":" A_Min + + ArchLogger.Logger.Log("# " date " ( " time " ) " msg) + } +} + +class _ArchLoggerCallBack +{ + callBack := null + + Log(msg){ + this.callBack.( msg ) + } + + __new(callBackFunction){ + this.callBack := callBackFunction + } +} + +class _ArchLoggerFile +{ + logpath := A_ScriptDir "\" A_ScriptName ".log" + + Log(msg){ + + FileAppend, %msg%`n, % this.logpath + } +} \ No newline at end of file diff --git a/Source/Lib/Base.ahk b/Source/Lib/Base.ahk new file mode 100644 index 0000000..5121571 --- /dev/null +++ b/Source/Lib/Base.ahk @@ -0,0 +1,144 @@ +/************************************** + base classes +*************************************** +*/ + +global null := 0 ; for better readability + +/* + Check for same (base) Type +*/ +is(obj, type){ + + ;MsgBox % "is: " typeof(obj) " =? " typeof(type) + + if(IsObject(type)) + type := typeof(type) + + if( type == "" ) + throw Exception("ArgumentException: type is not a valid class/name!`n`tObject: " typeof(obj),-1) + + while(IsObject(obj)){ + if(obj.__Class == type){ + return true + } + obj := obj.base + } + return false +} + +/* +* Returns the type of the given Object +*/ +typeof(obj){ + if(IsObject(obj)){ + cls := obj.__Class + + if(cls != "") + return cls + + while(IsObject(obj)){ + if(obj.__Class != ""){ + return obj.__Class + } + obj := obj.base + } + return "Object" + } + return "NonObject value(" obj ")" +} + +inheritancePath( obj ){ + itree := [] + + if(IsObject(obj)){ + + ipath := "inheritance tree`n`n" + + while(IsObject(obj )){ + itree[A_index] := (Trim(obj.__Class) != "") ? obj.__Class : "{}" + obj := obj.base + } + cnt := itree.MaxIndex() + for i,cls in itree + { + j := cnt - (i - 1) + ipath .= itree[j] + + if(i < cnt) + { + ipath .= "`n" + loop % i + ipath .= " " + ipath .= ">" + } + } + }else + ipath := "NonObject" + + return ipath +} + + +IsObjectMember(obj, memberStr){ + if(IsObject(obj)){ + return ObjHasKey(obj, memberStr) || IsMetaProperty(memberStr) + } +} + +/* +* Checks if the given property Name a reserved meta property name? +*/ +IsMetaProperty(propertyName){ + static metaProps := ["base","__New","__Get","__Set","__Class"] + return Contains(metaProps, propertyName) +} + +/* +* Returns the exception detail as formated string +*/ +ExceptionDetail(e){ + return "Exception Detail:`n" e.What "`n" e.Message "`n`nin:`t" e.File "`nLine:`t" e.Line +} + +Contains(list, value){ + for each, item in list + if(item = value) + return true + return false +} + + + +/** +* Provides some common used Exception Templates +* +*/ +class Exceptions +{ + NotImplemented(name=""){ + return Exception("A not implemented Method was called." (name != "" ? ": " name : "") ,-1) + } + + MustOverride(name=""){ + return Exception("This Method must be overriden" (name != "" ? ": " name : "") ,-1) + } + + ArgumentException(furtherInfo=""){ + return Exception("A wrong Argument has been passed to this Method`n" furtherInfo,-1) + } +} + + +;Base +{ + "".base.__Call := "Default__Warn" + "".base.__Set := "Default__Warn" + "".base.__Get := "Default__Warn" + + Default__Warn(nonobj, p1="", p2="", p3="", p4="") + { + ListLines + MsgBox A non-object value was improperly invoked.`n`nSpecifically: %nonobj% + } +} \ No newline at end of file diff --git a/Source/Lib/Collection.ahk b/Source/Lib/Collection.ahk new file mode 100644 index 0000000..b8c92fd --- /dev/null +++ b/Source/Lib/Collection.ahk @@ -0,0 +1,104 @@ +#Include +/* + Basic Collection implementation +*/ +class Collection +{ + ; Methoden Implementation + /* + Fügt ein Element der Collection hinzu + */ + Add(obj){ + this.Insert(obj) + } + + /* + Fügt eine Auflistung dieser Collection hinzu + */ + AddRange(objs){ + if(IsObject(objs)){ + for each, item in objs + this.Insert(item) + } else + throw Exceptions.ArgumentException("Must submit Array!") + } + + Clear(){ + this.Remove(this.MinIndex(), this.MaxIndex()) + } + + RemoveItem(item){ + for k, e in this + if(e = item) + this.Remove(k) + } + + /* + Returns the count of elements contained in this collection + */ + Count(){ + return this.SetCapacity(0) + } + + /* + * Returns true if this collection is empty + */ + IsEmpty(){ + return this.Count() == 0 + } + + First(){ + return this[this.MinIndex()] + } + + Last(){ + return this[this.MaxIndex()] + } + + + /* + Sortiert die Liste + */ + Sort(comparer=""){ + if(IsFunc(comparer)) + comparer := "F " comparer + + for each, num in this + nums .= num "`n" + Sort, nums, % comparer + this.Clear() + Loop, parse, nums, `, + this.Add(A_LoopField) + } + + ToString(){ + str := "" + for k, v in this + { + valStr := "" + if(IsObject(v)){ + valStr := "{" . typeof(v) . "}" + if(IsFunc(v.ToString)){ + valStr .= " " . v.ToString() + } + }else{ + valStr := "'" v "'" + } + + + str .= k ": " . valStr . "`n" + } + return str + } + + /* + Konstruktor - erstellt eine neue, (leere) Collection + + enum : Element die zubign vorhanden sein sollen + */ + __New(enum = 0){ + if(IsObject(enum)){ + this.AddRange(enum) + } + } +} \ No newline at end of file diff --git a/Source/Lib/DBA.ahk b/Source/Lib/DBA.ahk new file mode 100644 index 0000000..4693022 --- /dev/null +++ b/Source/Lib/DBA.ahk @@ -0,0 +1,37 @@ +/* + DataBase NameSpace Import +*/ + +#Include +#Include +#Include +#Include + +; drivers / header definitions +#Include +#Include +#Include + + +class DBA ; namespace DBA +{ + /* + * All thefollowing included classes will be contained in the DBA namespace + * which is actually just an encapsulating class + * + */ + + ;base classes + #Include + #Include + + + ; Concrete SQL-Provider Implementations + #Include + #Include + #Include + + #Include + #Include + #Include +} \ No newline at end of file diff --git a/Source/Lib/DataBaseADO.ahk b/Source/Lib/DataBaseADO.ahk new file mode 100644 index 0000000..61f34b3 --- /dev/null +++ b/Source/Lib/DataBaseADO.ahk @@ -0,0 +1,206 @@ +;namespace DBA + +/* + Represents a Connection to a ADO Database +*/ +class DataBaseADO extends DBA.DataBase +{ + _connection := null + _connectionData := "" + + __New(connectionString){ + this._connectionData := connectionString + this.Connect() + } + + /* + (Re) Connects to the db with the given creditals + */ + Connect(){ + if(IsObject(this._connection)) + { + this.Close() + } + this._connection := ComObjCreate("ADODB.connection") + + ;connection.Open connectionstring,userID,password,options + this._connection.Open(this._connectionData) + } + + Close(){ + if(this.IsConnected()) + { + this._connection.Close() + this._connection := null + } + } + + /* + * Is this connection open? + */ + IsConnected(){ + static ObjectStateEnum_adStateClosed := 0 + + if(IsObject(this._connection)) + { + return (this._connection.State != ObjectStateEnum_adStateClosed) + } + return false + } + + IsValid(){ + return IsObject(this._connection) + } + + GetLastError(){ + ; todo + } + + GetLastErrorMsg(){ + + errMsg := "" + for objErr in this._connection.Errors + { + errMsg .= objErr.Number " " objErr.Description " Source:" objErr.Source "`n" + } + + return errMsg + } + + SetTimeout(timeout = 1000){ + if(this.IsValid()) + this._connection.ConnectionTimeout := (timeout / 1000) + } + + + + Changes() { + /* + ToDo + */ + } + + + /* + Querys the DB and returns a RecordSet + */ + OpenRecordSet(sql, editable = false){ + return new DBA.RecordSetADO(sql, this._connection, editable) + } + + /* + Querys the DB and returns a ResultTable or true/false + */ + Query(sql){ + ret := false + if(this.IsValid()) + { + ;Execute( commandtext,ra,options) + affectedRows := 0 + rs := this._connection.Execute(sql, affectedRows) + if(IsObject(rs) && rs.State != ADO.ObjectStateEnum.adStateClosed) + { + ret := this.FetchADORecordSet(rs) + rs.Close() + }else{ + ret := affectedRows + } + } + return ret + } + + EscapeString(str){ + return Mysql_escape_string(str) + } + + + BeginTransaction(){ + if(this.IsValid()) + this._connection.BeginTrans() + } + + EndTransaction(){ + if(this.IsValid()) + this._connection.CommitTrans() + } + + Rollback(){ + if(this.IsValid()) + this._connection.RollbackTrans() + } + + FetchADORecordSet(adoRS){ + tbl := null + if(IsObject(adoRS) && !adoRS.EOF) + { + columnNames := new Collection() + myRows := new Collection() + + + for field in adoRS.Fields + columnNames.add(field.Name) + + fetchedArray := adoRS.GetRows() ; returns a COM-SafeArray Wrapper + colSize := fetchedArray.MaxIndex(1) + 1 + rowSize := fetchedArray.MaxIndex(2) + 1 + + loop, % rowSize + { + i := A_index - 1 + datafields := new Collection() + loop, % colSize + { + j := A_index - 1 + datafields.add(fetchedArray[j,i]) + } + myRows.Add(new DBA.Row(columnNames, datafields)) + } + + tbl := new DBA.Table(myRows, columnNames) + } + return tbl + } + + InsertMany(records, tableName){ + + ;objRecordset.Open source,actconn,cursortyp,locktyp,opt + + rs := ComObjCreate("ADODB.Recordset") + /* batch + rs.Open(tableName, this._connection, ADO.CursorType.adOpenKeyset, ADO.LockType.adLockBatchOptimistic, ADO.CommandType.adCmdTable) + + for each, record in records + { + rs.AddNew() + + for column, value in record + { + rs.Fields[column].Value := value + } + } + rs.UpdateBatch() + */ + + rs.Open(tableName, this._connection, ADO.CursorType.adOpenKeyset, ADO.LockType.adLockOptimistic, ADO.CommandType.adCmdTable) + + for each, record in records + { + rs.AddNew() + + for column, value in record + { + rs.Fields[column].Value := value + } + rs.Update() + } + + rs.Close() + } + + Insert(record, tableName){ + records := new Collection() + records.Add(record) + return this.InsertMany(records, tableName) + } + +} diff --git a/Source/Lib/DataBaseAbstract.ahk b/Source/Lib/DataBaseAbstract.ahk new file mode 100644 index 0000000..647207d --- /dev/null +++ b/Source/Lib/DataBaseAbstract.ahk @@ -0,0 +1,312 @@ +; namespace DBA + +/* +##################################################################################### + Abstract Database Classes + Base for all concrete implementations for the supported DataBases. +##################################################################################### +*/ + +/* + data := Row[index] + data := Row["ColumnName"] +*/ + +class Row +{ + _columns := 0 + _fields := new Collection() + + Count(){ + return this._fields.Count() + } + + ToString(){ + return this._fields.ToString() + } + + __Get(param){ + + if(IsObject(param)){ + throw Exception("Expected Index or Column Name!", -1) + } + + if(!IsObjectMember(this, param)){ + if param is Integer + { + ; // assume that an indexed access is desired + ; // return the corresponding ROW + if(this.ContainsIndex(param)) + return this._fields[param] + } else { + ; // assume that an columnname access is desired + ; // find index + + index := 0 + for i, col in this._columns + { + if(col = param){ + index := i + break + } + } + if(this.ContainsIndex(index)){ + return this._fields[index] + } + } + } + } + + ContainsIndex(index){ + return ((index > 0) && (index <= this._fields.Count())) + } + + + ; Creates a New Row. + ; columns : Collection of the Columnames + ; fields: Collection of the Fields (Data) + __New(columns, fields){ + + if(!is(columns, "Collection")){ + throw Exception("columns must be a Collection Object",-1) + } + + if(!is(fields, "Collection")){ + throw Exception("fields must be a Collection Object",-1) + } + + + this._fields := fields + this._columns := columns + } + + __NewEnum() { + return new DBA.Row.Enumerator(this) + } + + class Enumerator { + __new(row) { + this.columnEnum := ObjNewEnum(row.columns) + this.fieldEnum := ObjNewEnum(row.fields) + } + + next(ByRef key, ByRef val) { + return this.columnEnum.next("", key) + && this.fieldEnum.next("",val) + } + } +} + + +/* + row := table[index] +*/ + +class Table +{ + Rows := new Collection() + Columns := new Collection() + + Count(){ + return this.Rows.Count() + } + + ToString(){ + colstr := this.Columns.ToString() + StringReplace, colstr, colstr, `n, | + return "(" this.Rows.Count() ")" . colstr + } + + __Get(param){ + + if(IsObject(param)){ + throw Exception("Expected non-Object Index!",-1) + } + if(!IsObjectMember(this, param)){ + if param is Integer + { + ; // assume that an indexed access is desired + ; // return the corresponding ROW + if((param > 0) && (param < this.Rows.Count()) ) + return this.Rows[param] + } + } + } + + /* + Creates a New Table. + rows: Collection of the Rows (Data) + columns : Collection of the Columnames + */ + __New(rows, columns){ + + if(!is(rows, "Collection")){ + throw Exception("rows must be a Collection Object",-1) + } + + if(!is(columns, "Collection")){ + throw Exception("rows must be a Collection Object",-1) + } + + this.Rows := rows + this.Columns := columns + } + + __NewEnum() { + return ObjNewEnum(this.rows) + } +} + +class DataBase +{ + static NULL := Object() + static TRUE := Object() + static FALSE := Object() + + __delete() { + this.Close() + } + + IsValid(){ + throw Exceptions.MustOverride(this.__Class "." A_ThisFunc) + } + + Query(sql){ + throw Exceptions.MustOverride(this.__Class "." A_ThisFunc) + } + + QueryValue(sQry){ + rs := this.OpenRecordSet(sQry) + value := rs[1] + rs.Close() + return value + } + + QueryRow(sQry){ + rs := this.OpenRecordSet(sQry) + myrow := rs.getCurrentRow() + rs.Close() + return myrow + } + + OpenRecordSet(sql, editable = false){ + throw Exceptions.MustOverride(this.__Class "." A_ThisFunc) + } + + ToSqlLiteral(value) { + if (IsObject(value)) { + if (value == DBA.DataBase.NULL) + return "NULL" + if (value == DBA.DataBase.TRUE) + return "TRUE" + if (value == DBA.DataBase.FALSE) + return "FALSE" + } + return "'" this.EscapeString(value) "'" + } + + EscapeString(string){ + throw Exceptions.MustOverride(this.__Class "." A_ThisFunc) + } + + QuoteIdentifier(identifier){ + throw Exceptions.MustOverride(this.__Class "." A_ThisFunc) + } + + BeginTransaction(){ + throw Exceptions.MustOverride( this.__Class "." A_ThisFunc) + } + + EndTransaction(){ + throw Exceptions.MustOverride(this.__Class "." A_ThisFunc) + } + + Rollback(){ + throw Exceptions.MustOverride(this.__Class "." A_ThisFunc) + } + + Insert(record, tableName){ + throw Exceptions.MustOverride(this.__Class "." A_ThisFunc) + } + + InsertMany(records, tableName){ + throw Exceptions.MustOverride(this.__Class "." A_ThisFunc) + } + + Update(fields, constraints, tableName, safe = True){ + throw Exceptions.MustOverride(this.__Class "." A_ThisFunc) + } + + Close(){ + throw Exceptions.MustOverride(this.__Class "." A_ThisFunc) + } +} + +class RecordSet +{ + _currentRow := null ; Row + + __delete() { + this.Close() + } + + TestRecordSet(){ + return "I'm a RecordSet, for sure." + } + + AddNew(){ + throw Exceptions.MustOverride(this.__Class "." A_ThisFunc) + } + + MoveNext(){ + throw Exceptions.MustOverride(this.__Class "." A_ThisFunc) + } + + Delete(){ + throw Exceptions.MustOverride(this.__Class "." A_ThisFunc) + } + + Update(){ + throw Exceptions.MustOverride(this.__Class "." A_ThisFunc) + } + + Close(){ + throw Exceptions.MustOverride(this.__Class "." A_ThisFunc) + } + + getEOF(){ + throw Exceptions.MustOverride(this.__Class "." A_ThisFunc) + } + + IsValid(){ + throw Exceptions.MustOverride(this.__Class "." A_ThisFunc) + } + + getColumnNames(){ + throw Exceptions.MustOverride(this.__Class "." A_ThisFunc) + } + + getCurrentRow(){ + return this._currentRow + } + + __Get(param){ + + if(IsObject(param)){ + throw Exception("Expected Index or Column Name!",-1) + } + + if(param = "EOF") + return this.getEOF() + + + if(!IsObjectMember(this, param) && param != "_currentRow"){ + + if(!is(this._currentRow, DBA.Row)) + return "" + + ;// assume memberaccess are the column names/indexes + return this._currentRow[param] + } + } +} \ No newline at end of file diff --git a/Source/Lib/DataBaseFactory.ahk b/Source/Lib/DataBaseFactory.ahk new file mode 100644 index 0000000..08d9752 --- /dev/null +++ b/Source/Lib/DataBaseFactory.ahk @@ -0,0 +1,36 @@ +class DataBaseFactory +{ + static AvaiableTypes := ["SQLite", "MySQL", "ADO"] + + /* + This static Method returns an Instance of an DataBase derived Object + */ + OpenDataBase(dbType, connectionString){ + if(dbType = "SQLite") + { + OutputDebug, Open Database of known type [%dbType%] + SQLite_Startup() + ;//parse connection string. for now assume its a path to the requested DB + handle := SQLite_OpenDB(connectionString) + + if(handle == 0) + throw Exception("SQLite: The connection to the the given Datebase could not be etablished. Is the following SQLite connection string valid?`n`n" connectionString,-1) + return new DBA.DataBaseSQLLite(handle) + + } if(dbType = "MySQL") { + OutputDebug, Open Database of known type [%dbType%] + MySQL_StartUp() + conData := MySQL_CreateConnectionData(connectionString) + return new DBA.DataBaseMySQL(conData) + } if(dbType = "ADO") { + OutputDebug, Open Database of known type [%dbType%] + return new DBA.DataBaseADO(connectionString) + } else { + throw Exception("The given Database Type is unknown! [" . dbType "]",-1) + } + } + + __New(){ + throw Exception("This is a static class, dont instante it!",-1) + } +} \ No newline at end of file diff --git a/Source/Lib/DataBaseMySQL.ahk b/Source/Lib/DataBaseMySQL.ahk new file mode 100644 index 0000000..6c03320 --- /dev/null +++ b/Source/Lib/DataBaseMySQL.ahk @@ -0,0 +1,249 @@ +;namespace DBA + +/* + Represents a Connection to a SQLite Database +*/ +class DataBaseMySQL extends DBA.DataBase +{ + _handleDB := 0 + _connectionData := [] + + __New(connectionData){ + if(!IsObject(connectionData)) + throw Exception("Expected connectionData Array!") + this._connectionData := connectionData + + this.Connect() + } + + /* + (Re) Connects to the db with the given creditals + */ + Connect(){ + connectionData := this._connectionData + + if(!connectionData.Port){ + dbHandle := MySQL_Connect(connectionData.Server, connectionData.Uid, connectionData.Pwd, connectionData.Database) + } else { + dbHandle := MySQL_Connect(connectionData.Server, connectionData.Uid, connectionData.Pwd, connectionData.Database, connectionData.Port) + } + this._handleDB := dbHandle + } + + Close(){ + /* + ToDo! + */ + } + + IsValid(){ + return (this._handleDB != 0) + } + + GetLastError(){ + return MySQL_GetLastErrorNo(this._handleDB) + } + + GetLastErrorMsg(){ + return MySQL_GetLastErrorMsg(this._handleDB) + } + + SetTimeout(timeout = 1000){ + /* + todo + */ + } + + + ErrMsg() { + return DllCall("libmySQL.dll\mysql_error", "UInt", this._handleDB, "AStr") + } + + ErrCode() { + return DllCall("libmySQL.dll\mysql_errno", "UInt", this._handleDB) ; "Cdecl UInt" + } + + Changes() { + /* + ToDo + */ + } + + + /* + Querys the DB and returns a RecordSet + */ + OpenRecordSet(sql, editable = false){ + + result := MySQL_Query(this._handleDB, sql) + + if (result != 0) { + errCode := this.ErrCode() + if(errCode == 2003 || errCode == 2006 || errCode == 0){ ;// we've lost the connection + ;// try reconnect + this.Connect() + result := MySQL_Query(this._handleDB, sql) + if (result != 0) + throw new Exception(BuildMySQLErrorStr(this._handleDB, "Query failed because of lost connection. Reconnect failed too." errCode, sql), -1) + } else { + throw new Exception(BuildMySQLErrorStr(this._handleDB, "Query Failed Error " errCode, sql), -1) + } + } + + requestResult := MySQL_Use_Result(this._handleDB) + if(!requestResult) + return false + + return new DBA.RecordSetMySQL(this._handleDB, requestResult) + } + + /* + Querys the DB and returns a ResultTable or true/false + */ + Query(sql){ + return this._GetTableObj(sql) + } + + EscapeString(str){ + return Mysql_escape_string(str) + } + + QuoteIdentifier(identifier) { + ; ` characters are actually valid. Technically everthing but a literal null U+0000. + ; Everything else is fair game: http://dev.mysql.com/doc/refman/5.0/en/identifiers.html + StringReplace, identifier, identifier, ``, ````, All + return "``" identifier "``" + } + + BeginTransaction(){ + this.Query("START TRANSACTION;") + } + + EndTransaction(){ + this.Query("COMMIT;") + } + + Rollback(){ + this.Query("ROLLBACK;") + } + + InsertMany(records, tableName){ + + if(!is(records, Collection) || records.IsEmpty()) + return false + + sql := "INSERT INTO " tableName "`n" + colString := "" + + for column, value in records.First() + { + colstring .= this.QuoteIdentifier(column) "," + } + StringTrimRight, colstring, colstring, 1 + sql .= "(" colstring ")`nVALUES`n" + + for each, record in records + { + valString := "" + for column, value in record + { + valString .= this.ToSqlLiteral(value) "," + } + StringTrimRight, valString, valString, 1 + sql .= "(" valString "),`n" + } + StringTrimRight, colstring, colstring, 1 + sql := Trim(sql," `t`r`n,") ";" + + ;FileAppend,`n---------`n%sql%`n, dba_sql.log + return this.Query(sql) + } + + + Insert(record, tableName){ + records := new Collection() + records.Add(record) + return this.InsertMany(records, tableName) + } + + Update(fields, constraints, tableName, safe = True) { + if (safe) ;limitation: information_schema doesn't work with temp tables + for k, row in this.Query("SELECT COLUMN_NAME FROM INFORMATION_SCHEMA.COLUMNS WHERE COLUMN_KEY = 'PRI' AND TABLE_NAME = " this.ToSqlLiteral(tableName)).Rows + if (!constraints.HasKey(row[1])) + return -1 ; error handling.... + + WHERE := "" + for col, val in constraints + WHERE .= ", " this.QuoteIdentifier(col) " = " this.ToSqlLiteral(val) + WHERE := SubStr(WHERE, 3) + + SET := "" + for col, val in fields + SET .= "AND " this.QuoteIdentifier(col) " = " this.EscapeString(val) + SET := SubStr(SET, 5) + + query := "UPDATE " this.QuoteIdentifier(tableName) " SET " SET " WHERE " WHERE + return db.Query(query) + } + + _GetTableObj(sql, maxResult = -1) { + + result := MySQL_Query(this._handleDB, sql) + + /* + * Instant reconnect attempt + */ + if (result != 0) { + errCode := this.ErrCode() + if(errCode == 2003 || errCode == 2006 || errCode == 0){ ;// we've lost the connection + ;// try reconnect + this.Connect() + result := MySQL_Query(this._handleDB, sql) + if (result != 0) + throw new Exception(BuildMySQLErrorStr(this._handleDB, "Query failed because of lost connection. Reconnect failed too." errCode, sql), -1) + } else { + throw new Exception(BuildMySQLErrorStr(this._handleDB, "Query Failed Error " errCode, sql), -1) + } + } + + + requestResult := MySql_Store_Result(this._handleDB) + + if (!requestResult) ; the query was a non {SELECT, SHOW, DESCRIBE, EXPLAIN or CHECK TABLE} statement which doesn't yield any resultset + return + + mysqlFields := MySQL_fetch_fields(requestResult) + colNames := new Collection() + columnCount := 0 + for each, mysqlField in mysqlFields + { + colNames.Add(mysqlField.Name()) + columnCount++ + } + + rowptr := 0 + myRows := new Collection() + while((rowptr := MySQL_fetch_row(requestResult))) + { + rowIndex := A_Index + datafields := new Collection() + + lengths := MySQL_fetch_lengths(requestResult) + Loop, % columnCount + { + length := GetUIntAtAddress(lengths, A_Index - 1) + fieldPointer := GetPtrAtAddress(rowptr, A_Index - 1) + if (fieldPointer != 0) ; "NULL values in the row are indicated by NULL pointers." See http://dev.mysql.com/doc/refman/5.0/en/mysql-fetch-row.html + fieldValue := StrGet(fieldPointer, length, "CP0") + else + fieldValue := "" ; Should use DBA.DataBase.NULL from database-types branch? + datafields.Add(fieldValue) + } + myRows.Add(new DBA.Row(colNames, datafields)) + } + MySQL_free_result(requestResult) + + tbl := new DBA.Table(myRows, colNames) + return tbl + } +} diff --git a/Source/Lib/DataBaseSQLLite.ahk b/Source/Lib/DataBaseSQLLite.ahk new file mode 100644 index 0000000..28ca052 --- /dev/null +++ b/Source/Lib/DataBaseSQLLite.ahk @@ -0,0 +1,343 @@ +; namespace DBA + +class SQLite +{ + GetVersion(){ + return SQLite_LibVersion() + } + + SQLiteExe(dbFile, commands, ByRef output){ + return SQLite_SQLiteExe(dbFile, commands, output) + } + + __New(){ + throw Exception("This is a static Class. Don't create Instances from it!",-1) + } +} + +/* + Represents a Connection to a SQLite Database +*/ +class DataBaseSQLLite extends DBA.DataBase +{ + _handleDB := 0 + + __New(handleDB){ + this._handleDB := handleDB + if(!this.IsValid()) + { + throw Exception("Can not create a DataBaseSQLLite instance, because the connection handle is not valid!") + } + ArchLogger.Log("New DataBaseSQLLite: Handle @" handleDB) + } + + + Close(){ + ;ArchLogger.Log("DataBaseSQLLite: Close DB Handle @" handleDB) + return SQLite_CloseDB(this._handleDB) + } + + IsValid(){ + return (this._handleDB != 0) + } + + GetLastError(){ + code := 0 + SQLite_ErrCode(this._handleDB, code) + return code + } + + GetLastErrorMsg(){ + msg := "" + SQLite_ErrMsg(this._handleDB, msg) + return msg + } + + SetTimeout(timeout = 1000){ + return SQLite_SetTimeout(this._handleDB, timeout) + } + + + ErrMsg() { + if (RC := DllCall("SQLite3\sqlite3_errmsg", "UInt", this._handleDB, "Cdecl UInt")) + return StrGet(RC, "UTF-8") + return "" + } + + ErrCode() { + return DllCall("SQLite3\sqlite3_errcode", "UInt", this._handleDB, "Cdecl UInt") + } + + Changes() { + return DllCall("SQLite3\sqlite3_changes", "UInt", this._handleDB, "Cdecl UInt") + } + + + /* + Querys the DB and returns a RecordSet + */ + OpenRecordSet(sql, editable = false){ + + if( this.IsValid() ) + { + rs := new DBA.RecordSetSqlLite(this, SQlite_Query(this._handleDB, sql)) + ;myliters := new DBA.RecordSetSqlLite + ;myrs := new DBA.RecordSet + + ;MsgBox % "DBA.RecordSetSqlLite params:`t" rs.TestRecordSet() + ;MsgBox % "DBA.RecordSetSqlLite:`t"myliters.TestRecordSet() + ;MsgBox % "DBA.RecordSet:`t" myrs.TestRecordSet() + + return rs + }else + throw Exception("NotSupportedException: There is no valid DB Connection, OpenRecordSet requires a valid connection.",-1) + } + + /* + Querys the DB and returns a ResultTable or true/false + */ + Query(sql){ + + ret := null + + if (RegExMatch(sql, "i)^\s*SELECT\s")){ ; check if this is a selection query + + try + { + ret := this._GetTableObj(sql) + } catch e + throw Exception("Select Query failed.`n`n" sql "`n`nChild Exception:`n" e.What "`n" e.Message "`n" e.File "@" e.Line, -1) + } else { + + try + { + ret := SQLite_Exec(this._handleDB, sql) + } catch e + throw Exception("Non Selection Query failed.`n`n" sql "`n`nChild Exception:`n" e.What " `n" e.Message, -1) + } + + return ret + } + + EscapeString(str){ + StringReplace, str, str, ', '', All ; replace all single quotes with double single-quotes. pascal escape' + return str + } + + QuoteIdentifier(identifier) { + ; ` characters are actually valid. Technically everthing but a literal null U+0000. + ; Everything else is fair game: http://dev.mysql.com/doc/refman/5.0/en/identifiers.html + StringReplace, identifier, identifier, ``, ````, All + return "``" identifier "``" + } + + + BeginTransaction(){ + this.Query("BEGIN TRANSACTION;") + } + + EndTransaction(){ + this.Query("COMMIT TRANSACTION;") + } + + Rollback(){ + this.Query("ROLLBACK TRANSACTION;") + } + + InsertMany(records, tableName){ + if(!is(records, Collection) || records.IsEmpty()) + return false + + colString := "" + valString := "" + columns := {} + + for column, value in records.First() + { + colString .= "," this.QuoteIdentifier(column) + valString .= ",?" + columns[column] := A_Index + } + sql := "INSERT INTO " this.QuoteIdentifier(tableName) "`n(" SubStr(colstring, 2) ")`nVALUES`n(" SubStr(valString, 2) ")" + + + types := [] + for i,row in this._GetTableObj("PRAGMA table_info(" this.QuoteIdentifier(tableName) ")").Rows + { + if (columns.HasKey(row.name)){ + ;MsgBox,0,Error, % "row name found: " row.name "`nTypes: " row.type ; #DEBUG + types[columns[row.name]] := row.types + } + } + + + this.BeginTransaction() + + query := SQLite_Query(this._handleDB, sql) ;prepare the query + if ErrorLevel + msgbox % errorlevel + + try + { + for i, record in records + { + for col, val in record + { + if (!columns.HasKey(col)) + throw Exception("Irregular params: Column not found: [" col "] in`nTable Columns:" this.printKeys(columns)) + fieldType := "auto" + if(types.HasKey(columns[col])) + fieldType := types[columns[col]] + + ret := SQLite_bind(query, columns[col], val, fieldType) + ;MsgBox % " bind returned " ret + } + SQLite_Step(query) + SQLite_Reset(query) + } + } + catch e + { + this.Rollback() + throw Exception("InsertMany failed.`n`nChild Exception:`n" e.What " `n" e.Message, -1) + } + SQLite_QueryFinalize(query) + this.EndTransaction() + return True + } + + printKeys(arr){ + str := "" + for key, val in arr + { + str .= key "," + } + return str + } + + Insert(record, tableName){ + col := new Collection() + col.Add(record) + return this.InsertMany(col, tableName) + } + + /* + deprecated + */ + _GetTableObj(sql, maxResult = -1) { + + err := 0, rc := 0, GetRows := 0 + i := 0 + rows := cols := 0 + names := new Collection() + dbh := this._handleDB + + SQLite_LastError(" ") + + if(!_SQLite_CheckDB(dbh)) { + SQLite_LastError("ERROR: Invalid database handle " . dbh) + ErrorLevel := _SQLite_ReturnCode("SQLITE_ERROR") + return False + } + + if (maxResult < -1) + maxResult := -1 + mytable := "" + Err := 0 + + _SQLite_StrToUTF8(SQL, UTF8) + RC := DllCall("SQlite3\sqlite3_get_table", "Ptr", dbh, "Ptr", &UTF8, "Ptr*", mytable + , "Ptr*", rows, "Ptr*", cols, "Ptr*", err, "Cdecl Int") + + If (ErrorLevel) { + SQLite_LastError("ERROR: DLLCall sqlite3_get_table failed!") + Return False + } + If (rc) { + SQLite_LastError(StrGet(err, "UTF-8")) + DllCall("SQLite3\sqlite3_free", "Ptr", err, "cdecl") + ErrorLevel := rc + return false + } + + + + if (maxResult = 0) { + DllCall("SQLite3\sqlite3_free_table", "Ptr", mytable, "Cdecl") + If (ErrorLevel) { + SQLite_LastError("ERROR: DLLCall sqlite3_close failed!") + Return False + } + Return True + } + + if (maxResult = 1) + GetRows := 0 + else if (maxResult > 1) && (maxResult < rows) + GetRows := MaxResult + else + GetRows := rows + Offset := 0 + + Loop, % cols + { + names.Add(StrGet(NumGet(mytable+0, Offset), "UTF-8")) + Offset += A_PtrSize + } + + myRows := new Collection() + Loop, %GetRows% { + i := A_Index + fields := new Collection() + Loop, % Cols + { + fields.Add(StrGet(NumGet(mytable+0, Offset), "UTF-8")) + Offset += A_PtrSize + } + myRows.Add(new DBA.Row(Names, fields)) + } + tbl := new DBA.Table(myRows, Names) + + ; Free Results Memory + DllCall("SQLite3\sqlite3_free_table", "Ptr", mytable, "Cdecl") + if (ErrorLevel) { + SQLite_LastError("ERROR: DLLCall sqlite3_close failed!") + return false + } + return tbl + } + + + ReturnCode(RC) { + static RCODE := {SQLITE_OK: 0 ; Successful result + , SQLITE_ERROR: 1 ; SQL error or missing database + , SQLITE_INTERNAL: 2 ; NOT USED. Internal logic error in SQLite + , SQLITE_PERM: 3 ; Access permission denied + , SQLITE_ABORT: 4 ; Callback routine requested an abort + , SQLITE_BUSY: 5 ; The database file is locked + , SQLITE_LOCKED: 6 ; A table in the database is locked + , SQLITE_NOMEM: 7 ; A malloc() failed + , SQLITE_READONLY: 8 ; Attempt to write a readonly database + , SQLITE_INTERRUPT: 9 ; Operation terminated by sqlite3_interrupt() + , SQLITE_IOERR: 10 ; Some kind of disk I/O error occurred + , SQLITE_CORRUPT: 11 ; The database disk image is malformed + , SQLITE_NOTFOUND: 12 ; NOT USED. Table or record not found + , SQLITE_FULL: 13 ; Insertion failed because database is full + , SQLITE_CANTOPEN: 14 ; Unable to open the database file + , SQLITE_PROTOCOL: 15 ; NOT USED. Database lock protocol error + , SQLITE_EMPTY: 16 ; Database is empty + , SQLITE_SCHEMA: 17 ; The database schema changed + , SQLITE_TOOBIG: 18 ; String or BLOB exceeds size limit + , SQLITE_CONSTRAINT: 19 ; Abort due to constraint violation + , SQLITE_MISMATCH: 20 ; Data type mismatch + , SQLITE_MISUSE: 21 ; Library used incorrectly + , SQLITE_NOLFS: 22 ; Uses OS features not supported on host + , SQLITE_AUTH: 23 ; Authorization denied + , SQLITE_FORMAT: 24 ; Auxiliary database format error + , SQLITE_RANGE: 25 ; 2nd parameter to sqlite3_bind out of range + , SQLITE_NOTADB: 26 ; File opened that is not a database file + , SQLITE_ROW: 100 ; sqlite3_step() has another row ready + , SQLITE_DONE: 101} ; sqlite3_step() has finished executing + return RCODE.HasKey(RC) ? RCODE[RC] : "" + } +} diff --git a/Source/Lib/MemoryBuffer.ahk b/Source/Lib/MemoryBuffer.ahk new file mode 100644 index 0000000..bbd15c8 --- /dev/null +++ b/Source/Lib/MemoryBuffer.ahk @@ -0,0 +1,175 @@ +/* +* Abstraction of basic memory buffer handling +* +*/ +class MemoryBuffer +{ + static HEAP_NO_SERIALIZE := 0x00000001 + static HEAP_GENERATE_EXCEPTIONS := 0x00000004 + static HEAP_ZERO_MEMORY := 0x00000008 + static HEAP_CREATE_ENABLE_EXECUTE := 0x00040000 + + static Heap := 0 ; Heap handle + Address := 0 ; lp to our buffer + Size := 0 ; size of the buffer + + + /* + * Creates a new MemoryBuffer from the existing buffer + * + * srcPtr pointer to the source + * size size of the source + */ + Create(srcPtr, size) + { + buf := new MemoryBuffer() + buf.AllocMemory( size ) + buf.memcpy( buf.Address, srcPtr, size ) + + return buf + } + + /* + * Creates a new MemoryBuffer from the given file + */ + CreateFromFile(filePath){ + + buf := new MemoryBuffer() + + if(!FileExist(filePath)) + throw Exception("File must exist and be readable!") + + binFile := FileOpen(filePath, "r") + buf.AllocMemory(binFile.Length) + buf.Size := binFile.RawRead(buf.Address+0, binFile.Length) + + binFile.Close() + + return buf + } + + /* + * Create a new MemoryBuffer from the given base64 encoded data string + */ + CreateFromBase64(base64str){ + static CryptStringToBinary := "Crypt32.dll\CryptStringToBinary" (A_IsUnicode ? "W" : "A") + static CRYPT_STRING_BASE64 := 0x00000001 + + buf := new MemoryBuffer() + + len := StrLen(base64str) + DllCall(CryptStringToBinary, "ptr",&base64str, "uint", len, "uint", CRYPT_STRING_BASE64, "ptr",0, "uint*",cp, "ptr",0,"ptr",0) ; get size + buf.AllocMemory(cp) + DllCall(CryptStringToBinary, "ptr",&base64str, "uint", len, "uint", CRYPT_STRING_BASE64, "ptr", buf.Address, "uint*",cp, "ptr",0,"ptr",0) + + return buf + } + + GetPtr(){ + return this.Address + } + + /* + * Write the binary buffer to a file + * + * returns true on succes, otherwise false + */ + WriteToFile(filePath){ + binFile := FileOpen(filePath, "rw") + bytesWritten := binFile.RawWrite(this.Address+0, this.Size) + binFile.Close() + return (bytesWritten == this.Size) ; we expect that all bytes were written down + } + + + + + /* + * Free this Buffer, releases the reserved memory + */ + Free(){ + if(this.IsValid()) + { + DllCall("HeapFree" + , Ptr, this.Heap + , Ptr, 0 + , Ptr, this.Address) + + this.Address := 0 + this.Size := 0 + } + } + + /* + * Is this Buffer a valid allocation of memory? + */ + IsValid(){ + return (this.Heap != 0 && this.Address != 0) + } + + /* + * Returns a base64 encoded string of this buffer + */ + ToBase64(){ + static CryptBinaryToString := "Crypt32.dll\CryptBinaryToString" (A_IsUnicode ? "W" : "A") + static CRYPT_STRING_BASE64 := 0x00000001 + + DllCall(CryptBinaryToString, "ptr",this.Address, "uint",this.Size, "uint",CRYPT_STRING_BASE64, "ptr",0, "uint*",cp) ; get size + VarSetCapacity(str, cp*(A_IsUnicode ? 2:1)) + DllCall(CryptBinaryToString, "ptr",this.Address, "uint",this.Size, "uint",CRYPT_STRING_BASE64, "str",str, "uint*",cp) + + return str + } + + + + /* + * Destructor + */ + __Delete() + { + this.Free() + } + + + ToString(){ + return "MemoryBuffer: @ " this.GetPtr() " size: " this.Size " bytes" + } + + + memcpy(dst, src, cnt) { + return DllCall("MSVCRT\memcpy" + , Ptr, dst + , Ptr, src + , Ptr, cnt) + } + + + /* + * Allocates the requested size of memory + * returns the base adress of the new reserved memory + */ + AllocMemory(size){ + + if(!MemoryBuffer.Heap) + { + ;MemoryBuffer.Heap := DllCall("GetProcessHeap", Ptr) + + MemoryBuffer.Heap := DllCall("HeapCreate" + , UInt, 0 ; heap options + , Ptr, 0 ; initital size: 0 = 1 page + , Ptr, 0, Ptr) ; max size: 0 = no limit + } + + if(!this.Address) + this.Free() + + this.Address := DllCall("HeapAlloc" + , Ptr, MemoryBuffer.Heap + , UInt, MemoryBuffer.HEAP_ZERO_MEMORY + , Ptr, size, Ptr) + this.Size := size + ;MsgBox % "allocated " size " bytes memory @" this.Address + } + +} \ No newline at end of file diff --git a/Source/Lib/RecordSetADO.ahk b/Source/Lib/RecordSetADO.ahk new file mode 100644 index 0000000..ce5e02f --- /dev/null +++ b/Source/Lib/RecordSetADO.ahk @@ -0,0 +1,120 @@ +;namespace DBA + +/* + Represents a result set of ADO + http://www.w3schools.com/ado/ado_ref_recordset.asp +*/ +class RecordSetADO extends DBA.RecordSet +{ + _adoRS := 0 ; ado recordset + + __New(sql, adoConnection, editable = false){ + this._adoRS := ComObjCreate("ADODB.Recordset") + + if(editable) + this._adoRS.Open(sql, adoConnection, ADO.CursorType.adOpenKeyset, ADO.LockType.adLockOptimistic, ADO.CommandType.adCmdTable) + else + this._adoRS.Open(sql, adoConnection) + } + + /* + Is this RecordSet valid? + */ + IsValid(){ + return (IsObject(this._adoRS)) + } + + /* + Returns an Array with all Column Names + */ + getColumnNames(){ + + colNames := new Collection() + + for adoField in this._adoRS.Fields + colNames.add(adoField.Name) + + return colNames + } + + getEOF(){ + return this._adoRS.EOF + } + + AddNew(){ + if(this.IsValid()) + { + this._adoRS.AddNew() + } + } + + MoveNext() { + if(this.IsValid()) + { + this._adoRS.MoveNext() + } + } + + Delete(){ + if(this.IsValid() && !this.getEOF()) + { + this._adoRS.Delete(ADO.AffectEnum.adAffectCurrent) + } + } + + Update(){ + if(this.IsValid() && !this.getEOF()) + { + this._adoRS.Update() + } + } + + Reset() { + if(this.IsValid()){ + this._adoRS.MoveFirst() + } + } + + Count(){ + cnt := 0 + if(this.IsValid()) + cnt := this._adoRS.RecordCount + return cnt + } + + + Close() { + if(this.IsValid()) + { + this._adoRS.Close() + this._adoRS := null + } + } + + + __Get(propertyName){ + + if(IsObject(propertyName)){ + throw Exception("Expected Index or Column Name!",-1) + } + + if(propertyName = "EOF") + return this.getEOF() + + if(!IsObjectMember(this, propertyName) && propertyName != "_currentRow"){ + if(this.IsValid()) + { + /* + * Param can either be the column index + * Or the column name + */ + if propertyName is Integer + propertyName-- ; ado zero based indexes + + df := this._adoRS.Fields[propertyName] ; ADO uses zero based indexes + return df.Value + } + } + } +} + diff --git a/Source/Lib/RecordSetMySQL.ahk b/Source/Lib/RecordSetMySQL.ahk new file mode 100644 index 0000000..9a829b9 --- /dev/null +++ b/Source/Lib/RecordSetMySQL.ahk @@ -0,0 +1,109 @@ +;namespace DBA + +/* + Represents a result set of an MySQL Query +*/ +class RecordSetMySQL extends DBA.RecordSet +{ + _colNames := 0 ; Collection + _colCount := 0 + _query := 0 ; ptr to Resultset/Query + _db := 0 ; ptr to DataBase + _eof := false ; bool + CurrentRow := 0 ; int - row number + + + __New(db, requestResult){ + this._db := db + this._query := requestResult + + if(this._query != 0){ + this._colNames := this.getColumnNames() + this.MoveNext() + } + } + + + /* + Is this RecordSet valid? + */ + IsValid(){ + return (this._query != 0) + } + + /* + Returns an Array with all Column Names + */ + getColumnNames(){ + mysqlFields := MySQL_fetch_fields(this._query) + colNames := new Collection() + i := 0 + for each, mysqlField in mysqlFields + { + colNames.Add(mysqlField.Name()) + i++ + } + this._colCount := i + return colNames + } + + getEOF(){ + return this._eof + } + + + MoveNext() { + static EOR := -1 + this.ErrorMsg := "" + this.ErrorCode := 0 + this._currentRow := 0 + + if (!this._query) { + this.ErrorMsg := "Invalid query handle!" + this._eof := true + return false + } + + rowptr := MySQL_fetch_row(this._query) + if (!rowptr){ + ; // we reached eof + this.ErrorMsg := "RecordSet is empty! (eof)" + this.ErrorCode := 1 + this._eof := true + return false + } + + lengths := MySQL_fetch_lengths(this._query) + datafields := new Collection() + Loop % this._colCount + { + length := GetUIntAtAddress(lengths, A_Index - 1) + fieldPointer := GetPtrAtAddress(rowptr, A_Index - 1) + fieldValue := StrGet(fieldPointer, length, "CP0") + datafields.Add(fieldValue) + } + this._currentRow := new DBA.Row(this._colNames, datafields) + this.CurrentRow++ + return true + } + + + + Reset() { + throw Exception("Not Supported!",-1) + } + + + Close() { + this.ErrorMsg := "" + this.ErrorCode := 0 + if(this._query == 0) + return true + + MySQL_free_result(this._query) + + this._query := 0 + return true + } +} + diff --git a/Source/Lib/RecordSetSqlLite.ahk b/Source/Lib/RecordSetSqlLite.ahk new file mode 100644 index 0000000..26542e9 --- /dev/null +++ b/Source/Lib/RecordSetSqlLite.ahk @@ -0,0 +1,165 @@ +;namespace DBA + +/* + Represents a result set of an SQLite Query +*/ +class RecordSetSqlLite extends DBA.RecordSet +{ + _currentRow := 0 ; Row + _colNames := 0 ; Collection + _query := 0 ; int Handle to the Query + _db := 0 ; SQLiteDataBase + _eof := false ; bool + + + + __New(db, query){ + + if(!is(db, DBA.DataBaseSQLLite)){ + throw Exception("ArgumentException: db must be a DataBaseSQLLite Object",-1) + } + this._db := db + this._query := query + + if(query != 0){ + + SQLite_FetchNames(this._query, names) + this._colNames := new Collection(names) + + this.MoveNext() ; move to the first record + } + } + + Test(){ + return "I'm a RecordSetSqlLite instance. For sure." + } + + + /* + Is this RecordSet valid? + */ + IsValid(){ + return (this._query != 0) + } + + /* + Returns an Array with all Column Names + */ + getColumnNames(){ + return this._colNames + } + + getEOF(){ + return this._eof + } + + + MoveNext() { + static EOR := -1 + + this.ErrorMsg := "" + this.ErrorCode := 0 + this._currentRow := 0 + + if (!this._query) { + this.ErrorMsg := "Invalid query handle!" + this._eof := true + return false + } + rc := DllCall("SQlite3\sqlite3_step", "UInt", this._query, "Cdecl Int") + + if (rc != this._db.ReturnCode("SQLITE_ROW")) { + if (rc = this._db.ReturnCode("SQLITE_DONE")) { + this.ErrorMsg := "EOR" + this.ErrorCode := rc + this._eof := true + return EOR + } + this.ErrorMessage := this._db.ErrMsg() + this.ErrorCode := rc + this._eof := true + return false + } + rc := DllCall("SQlite3\sqlite3_data_count", UInt, this._query, "Cdecl Int") + + if (rc < 1) { + this.ErrorMsg := "RecordSet is empty!" + this.ErrorCode := this._db.ReturnCode("SQLITE_EMPTY") + this._eof := true + return false + } + + ; fill the internal row structure + ;_currentRow := new Row() + fields := new Collection() + Loop, %rc% { + ctype := DllCall("SQlite3\sqlite3_column_type", UInt, this._query, Int, A_Index - 1, "Cdecl Int") + + if (ctype == SQLiteDataType.SQLITE_NULL) { + + fields[A_Index] := DBA.DataBase.NULL ;"" + + }else if(ctype == SQLiteDataType.SQLITE_BLOB){ + + blobSize := DllCall("SQlite3\sqlite3_column_bytes", UInt, this._query, Int, A_Index -1, "Cdecl UInt") + blobPtr := DllCall("SQlite3\sqlite3_column_blob", UInt, this._query, Int, A_Index - 1, "Cdecl Ptr") + + if ( blobPtr ) + { + fields[A_Index] := MemoryBuffer.Create( blobPtr, blobSize ) + }else{ + fields[A_Index] := DBA.DataBase.NULL + } + } else { + strPtr := DllCall("SQlite3\sqlite3_column_text", UInt, this._query, Int, A_Index - 1, "Cdecl UInt") + fields[A_Index] := StrGet(strPtr, "UTF-8") + } + } + this._currentRow := new DBA.Row(this.getColumnNames(), fields) + this.CurrentRow++ + return true + } + + + + Reset() { + this.ErrorMsg := "" + this.ErrorCode := 0 + + if (!this._query) { + this.ErrorMsg := "Invalid query handle!" + return false + } + rc := DllCall("SQlite3\sqlite3_reset", UInt, this._query, "Cdecl Int") + + if (rc) { + this.ErrorMsg := This._db.ErrMsg() + this.ErrorCode := rc + return false + } + this.CurrentRow := 0 + this.MoveNext() + return true + } + + + Close() { + this.ErrorMsg := "" + this.ErrorCode := 0 + if(this._query == 0) + return true + + rc := DllCall("SQlite3\sqlite3_finalize", "UInt", this._query, "Cdecl Int") + + if (rc) { + this.ErrorMsg := this._db.ErrMsg() + this.ErrorCode := rc + return false + } + this._query := 0 + return true + } + + +} + diff --git a/Source/Lib/SQLite_L.ahk b/Source/Lib/SQLite_L.ahk new file mode 100644 index 0000000..6533378 --- /dev/null +++ b/Source/Lib/SQLite_L.ahk @@ -0,0 +1,1016 @@ +/* +;======================================================================================================================= +; Function: Wrapper functions for the SQLite.dll to work with SQLite DBs. +; AHK version: L 1.1.00.00 (U 32) +; Language: English +; Tested on: Win XPSP3, Win VistaSP2 (32 Bit) +; Version: 1.0.00.00/2011-05-01/ich_L +; Remarks: Encoding of SQLite DBs is assumed to be UTF-8 +;======================================================================================================================= +; Many of these functions are transcripted from the AutoIt3-UDF SQLite.au3 +; THX piccaso (Fida Florian) +;======================================================================================================================= +; This software is provided 'as-is', without any express or +; implied warranty. In no event will the authors be held liable for any +; damages arising from the use of this software. +;======================================================================================================================= +; List of Functions: +;======================================================================================================================= +; - Load SQLite3.dll +; SQLite_Startup() +; - Unload SQLite3.dll +; SQLite_Shutdown() +; - Open DB connection +; SQLite_OpenDB(DBFile) +; - Close DB connection +; SQLite_CloseDB(DB) +; - Get full result for SQL query (SELECT) +; SQLite_GetTable(DB, SQL, ByRef Rows, ByRef Cols, ByRef Names, ByRef Result, MaxResult = -1) +; - Execute non query SQL statements +; SQLite_Exec(DB, SQL) +; - Prepare SQL query +; SQlite_Query(DB, SQL) +; - Get column names from prepared query +; SQLite_FetchNames(Query, ByRef Names) +; - Get next row of data from prepared query +; SQLite_FetchData(Query, ByRef Row) +; - Free prepared query +; SQLite_QueryFinalize(Query) +; - Reset prepared query for reuse +; SQLite_QueryReset(Query) +; - Execute SQLite3.exe with given commands +; SQLite_SQLiteExe(DBFile, Commands, ByRef Output) +; - Get SQLite3.dll version number +; SQLite_LibVersion() +; - Get the ROWID of the last inserted row +; SQLite_LastInsertRowID(DB, ByRef RowID) +; - Get number of changes caused by last SQL statement +; SQLite_Changes(DB, ByRef Rows) +; - Get number of changes since connecting to database +; SQLite_TotalChanges(DB, ByRef Rows) +; - Get the SQLite error message caused by last SQL statement +; SQLite_ErrMsg(DB, ByRef Msg) +; - Get the SQLite error code caused by last SQL statement +; SQLite_ErrCode(DB, ByRef Code) +; - Set SQLite's busy timer's timeout +; SQLite_SetTimeout(DB, Timeout = 1000) +; - Get description for last error +; SQLite_LastError(Error = "") +; - Set/get path for SQLite3.dll +; SQLite_DLLPath(Path = "") +; - Set/get path for SQLite.exe +; SQLite_EXEPath(Path = "") +; * Internal functions ***************************************************************************** +; _SQLite_StrToUTF8(Str, UTF8) +; _SQLite_UTF8ToStr(UTF8, Str) +; _SQLite_ModuleHandle(Handle = "") +; _SQLite_CurrentDB(DB = "") +; _SQLite_CheckDB(hDB, Action = "") +; _SQLite_CurrentQuery(Query = "") +; _SQLite_CheckQuery(Query, DB = "") +; _SQLite_ReturnCode(RC) +;======================================================================================================================= +; SQLite Returncodes +;======================================================================================================================= +; see _SQLite_ReturnCode() +;======================================================================================================================= +; Function Name: SQLite_StartUP() +; Description: Loads SQLite3.dll +; Requirements: Valid path to SQLite3.dll stored in SQLite_DLLPath(). +; Default: A_ScriptDir . "\SQLite3.dll" +; Parameter(s): None +; Return Value(s): On Success - True +; On Failure - False +;======================================================================================================================= +*/ +#Include +#Include + +class SQLiteDataType +{ + static SQLITE_INTEGER := 1 + static SQLITE_FLOAT := 2 + static SQLITE_BLOB := 4 + static SQLITE_NULL := 5 + static SQLITE_TEXT := 3 +} + + +SQLite_Startup() { + Static MinVersion := "35" + + sqliteDllPath := SQLite_DLLPath() + + if(FileExist(sqliteDllPath)) + { + DLL := DllCall("LoadLibrary", "Str", sqliteDllPath) + if(!DLL) + throw Exception("Can't load " . sqliteDllPath . "!", -1) + + ver := SQLite_LibVersion() + + if(SubStr(RegExReplace(ver, "\."), 1, 2) < MinVersion) + throw Exception("SQLite ERROR: Version " . ver . " of SQLite3.dll is not supported!", -1) + + _SQLite_ModuleHandle(DLL) + } else + throw Exception("SQLite Dll not found:`n" . sqliteDllPath, -1) + + Return true +} +;======================================================================================================================= +; Function Name: SQLite_Shutdown() +; Description: Unloads SQLite3.dll +; Parameter(s): None +; Return Value(s): On Success - True +; On Failure - False, check ErrorLevel for details +;======================================================================================================================= +SQLite_Shutdown() { + DllCall("FreeLibrary", "UInt", _SQLite_ModuleHandle()) + Return (ErrorLevel ? false : true) +} +;======================================================================================================================= +; Function Name: SQLite_OpenDB() +; Description: Opens a database. +; Parameter(s): DBFile - Filepath of the DB +; Return Value(s): On Success - DB handle +; On Failure - False, check ErrorLevel for details +; For additional error message call SQLite_LastError() +;======================================================================================================================= +SQLite_OpenDB(DBFile) { + Static SQLITE_OPEN_READONLY := 0x01 ; Database opened as read-only + Static SQLITE_OPEN_READWRITE := 0x02 ; Database opened as read-write + Static SQLITE_OPEN_CREATE := 0x04 ; Database will be created if not exists + + flags := SQLITE_OPEN_READWRITE | SQLITE_OPEN_CREATE + SQLite_LastError(" ") + + if (_SQLite_ModuleHandle() = "") { + if !(SQLite_Startup()) + throw Exception("ERROR: Could not find the SQLite3.dll!",-1) + } + + if (DBFile = "") + DBFile := ":memory:" + else if (!SQLite_IsFilePathValid(DBFile)) + throw Exception("Filepath to the SQLite DB seems to be invalid.",-1,DBFile) + + _SQLite_StrToUTF8(DBFile, UTF8) + DB := 0 + RC := DllCall("SQlite3\sqlite3_open_v2", "Ptr", &UTF8, "Ptr*", DB, "UInt", flags, "Ptr", 0, "Cdecl Int") + + if (ErrorLevel) { + throw Exception("ERROR: DLLCall sqlite3_open_v2 failed!",-1) + } + if (RC) { + if SQLite_ErrMsg(DB, Msg) + SQLite_LastError(Msg) + ErrorLevel := RC + Return False + } + _SQLite_CheckDB(DB, "Store") + _SQLite_CurrentDB(DB) + Return DB +} + +SQLite_IsFilePathValid(path) { + if FileExist(path) + return true + if IsObject(FileOpen(path, "a")) + { + FileDelete, %path% + return true + } + return false +} + +;======================================================================================================================= +; Function Name: SQLite_CloseDB() +; Description: Closes an open database. +; Waits until SQLite <> _SQLITE_BUSY until 'Timeout' has elapsed +; Parameter(s): DB - DB handle, -1 for last opened DB +; Return Value(s): On Success - True +; On Failure - False, check ErrorLevel for details +; For additional error message call SQLite_LastError() +;======================================================================================================================= +SQLite_CloseDB(DB) { + SQLite_LastError(" ") + if (DB = -1) + DB := _SQLite_CurrentDB() + if !_SQLite_CheckDB(DB) + Return True + RC := DllCall("SQlite3\sqlite3_close", "Ptr", DB, "Cdecl Int") + if (ErrorLevel) { + SQLite_LastError("ERROR: DLLCall sqlite3_close failed!") + Return False + } + if (RC) { + if SQLite_ErrMsg(DB, Msg) + SQLite_LastError(Msg) + ErrorLevel := RC + Return False + } + _SQLite_CheckDB(DB, "Free") + Return True +} +;======================================================================================================================= +; Function Name: SQLite_GetTable() +; Description: Provides the number of rows, the number of columns, the +; column names and the column values for a given query. +; Names are returned as an array. Result is an array of arrays +; containing the column values for each row. +; Parameter(s): DB - DB handle, -1 for last opened DB +; SQL - SQL statement to be executed +; ByRef Rows - Passes out the number of 'Data' rows +; ByRef Cols - Passes out the number of columns +; ByRef Names - Passes out an array containing the column names +; ByRef Result - Passes out an array of arrays containing the column values. +; Optional MaxResult - Number of rows to be returned +; Default = -1 : All rows +; Specify 0 to get only the number of rows and columns +; Specify 1 to get column names also +; Return Value(s): On Success - True +; On Failure - False, check ErrorLevel for details +; For additional error message call SQLite_LastError() +;======================================================================================================================= +SQLite_GetTable(DB, SQL, ByRef Rows, ByRef Cols, ByRef Names, ByRef Result, MaxResult = -1) { + Table := "", Err := 0, RC := 0, GetRows := 0 + I := 0 + SQLite_LastError(" ") + Result := "" + Rows := Cols := 0 + Names := "" + if (DB = -1) + DB := _SQLite_CurrentDB() + if !_SQLite_CheckDB(DB) { + SQLite_LastError("ERROR: Invalid database handle " . DB) + ErrorLevel := _SQLite_ReturnCode("SQLITE_ERROR") + Return False + } + if MaxResult Is Not Integer + MaxResult := -1 + if (MaxResult < -1) + MaxResult := -1 + if (MaxResult < -1) + MaxResult := -1 + Table := "" + Err := 0 + _SQLite_StrToUTF8(SQL, UTF8) + RC := DllCall("SQlite3\sqlite3_get_table", "Ptr", DB, "Ptr", &UTF8, "Ptr*", Table + , "Ptr*", Rows, "Ptr*", Cols, "Ptr*", Err, "Cdecl Int") + if (ErrorLevel) { + SQLite_LastError("ERROR: DLLCall sqlite3_get_table failed!") + Return False + } + if (RC) { + SQLite_LastError(StrGet(Err, "UTF-8")) + DllCall("SQLite3\sqlite3_free", "Ptr", Err, "cdecl") + ErrorLevel := RC + Return False + } + Result := Array() + if (MaxResult = 0) { + DllCall("SQLite3\sqlite3_free_table", "Ptr", Table, "Cdecl") + if (ErrorLevel) { + SQLite_LastError("ERROR: DLLCall sqlite3_close failed!") + Return False + } + Return True + } + if (MaxResult = 1) + GetRows := 0 + Else if (MaxResult > 1) && (MaxResult < Rows) + GetRows := MaxResult + Else + GetRows := Rows + Offset := 0 + Names := Array() + Loop, %Cols% { + Names[A_Index] := StrGet(NumGet(Table+0, Offset), "UTF-8") + Offset += A_PtrSize + } + Loop, %GetRows% { + I := A_Index + Result[I] := Array() + Loop, %Cols% { + Result[I][A_Index] := StrGet(NumGet(Table+0, Offset), "UTF-8") + Offset += A_PtrSize + } + } + ; Free Results Memory + DllCall("SQLite3\sqlite3_free_table", "Ptr", Table, "Cdecl") + if (ErrorLevel) { + SQLite_LastError("ERROR: DLLCall sqlite3_close failed!") + Return False + } + Return True +} + +SQLite_Bind(query, idx, val, type = "auto") { + if(type = "" || type = "auto") + { + if val is integer + type := "int" + else if val is float + type := "double" + else if (val == DBA.Database.NULL) + type := "null" + else if (is(val, MemoryBuffer)) + type := "blob" + else if (IsObject(val)){ + ; Probably support here any kind of serialisation support + ; e.g. serialize the object with yaml/json + ; for now, just try to turn it into a default string + val := val.ToString() + type := "text" + } + else + type := "text" + } + + ArchLogger.Log(A_ThisFunc ": Binding value as: " type) + + + if (type = "int" || type = "Integer") + return SQLite_bind_int(query, idx, val) + if (type = "double") + return SQLite_bind_double(query, idx, val) + if (type = "text") + return SQLite_bind_text(query, idx, val) + if (type = "blob"){ + if(is(val, MemoryBuffer)){ + ;MsgBox % "binding blob, adr: " val.GetPtr() " size: " val.Size + return SQLite_Bind_blob(query, idx, val.GetPtr(), val.Size) ; val is a MemoryBuffer + }else + throw Exception("You can only store MemorBuffers as BLOB.") + } + if (type = "null") + return SQLite_bind_null(query, idx) + + return -1 +} + +SQLite_Bind_blob(query, idx, addr, bytes) { + return DllCall("SQLite3\sqlite3_bind_blob", Ptr, Query, "int", idx, Ptr, addr, int, bytes, Ptr, -1, "CDecl int") ; SQLITE_TRANSIENT = -1 +} + +SQLite_Bind_text(query, idx, text) { + static fn := "SQLite3\sqlite3_bind_text" (A_IsUnicode ? "16" : "") + return DllCall(fn, "ptr", Query, "int", idx, "ptr", &text, "int", StrLen(text) * (A_IsUnicode+1), "ptr", -1, "CDecl int") ; SQLITE_TRANSIENT = -1 +} + +SQLite_bind_double(query, idx, double) { + return DllCall("SQLite3\sqlite3_bind_double", "ptr", query, "int", idx, "double", double, "CDecl int") +} + +SQLite_bind_int(query, idx, int) { + return DllCall("SQLite3\sqlite3_bind_int64", "ptr", query, "int", idx, "int64", int, "CDecl int") +} + +SQLite_bind_null(query, idx) { + return DllCall("SQLite3\sqlite3_bind_null", "ptr", query, "int", idx, "CDecl int") +} + +SQLite_Step(query) { + return DllCall("SQLite3\sqlite3_step", "ptr", query, "CDecl int") +} + +SQLite_Reset(query) { + return DllCall("SQLite3\sqlite3_reset", "ptr", query, "CDecl int") +} + +;======================================================================================================================= +; Function Name: SQLite_Exec() +; Description: Executes a 'non query' SQLite statement, does not handle results. +; Parameter(s): DB - DB handle, -1 for last opened DB +; SQL - SQL statement to be executed +; Return Value(s): On Success - True +; On Failure - False, check ErrorLevel for details +; For additional error message call SQLite_LastError() +;======================================================================================================================= +SQLite_Exec(DB, SQL) { + + ret := false + try + { + SQLite_LastError(" ") + + if(DB = -1) + DB := _SQLite_CurrentDB() + + if(!_SQLite_CheckDB(DB)){ + throw Exception("ERROR: Invalid database handle " DB "`nReturn Code: " _SQLite_ReturnCode("SQLITE_ERROR"),-1) + } else { + _SQLite_StrToUTF8(SQL, UTF8) + Err := 0 + RC := DllCall("SQlite3\sqlite3_exec", "Ptr", DB, "Ptr", &UTF8, "Ptr", 0, "Ptr", 0, "Ptr*", Err, "Cdecl Int") + if (ErrorLevel) { + throw Exception("DLLCall sqlite3_exec failed!",-1) + } else { + if (RC) { + + SQLite_LastError(StrGet(Err, "UTF-8")) + + try + { + DllCall("SQLite3\sqlite3_free", "Ptr", Err, "cdecl") + ErrorLevel := RC + } catch e + { + ;throw Exception("sqlite3_free failed.`n`nErr:" Err "`n`nChild Exception:`n" e.What " `n" e.Message, -1) + ; just igonre for now + } + + } else + ret := true + } + } + } catch e + throw Exception("SQLite_Exec failed.`n`n" sql "`n`nChild Exception:`n" e.What " `n" e.Message, -1) + + return ret +} +;======================================================================================================================= +; Function Name: SQlite_Query() +; Description: Prepares a single statement SQLite query, +; Parameter(s): DB - DB handle, -1 for last opened DB +; SQL - SQL statement to be executed +; Return Value(s): On Success - Query handle +; On Failure - False, check ErrorLevel for details +; For additional error message call SQLite_LastError() +;======================================================================================================================= +SQlite_Query(DB, SQL) { + SQLite_LastError(" ") + if (DB = -1) + DB := _SQLite_CurrentDB() + if !_SQLite_CheckDB(DB) { + SQLite_LastError("ERROR: Invalid database handle " . DB) + ErrorLevel := _SQLite_ReturnCode("SQLITE_ERROR") + Return False + } + Query := pSQL := 0 + Len := _SQLite_StrToUTF8(SQL, UTF8) + RC := DllCall("SQlite3\sqlite3_prepare", "Ptr", DB, "Ptr", &UTF8, "Int", Len + , "Ptr*", Query, "Ptr*", pSQL, "Cdecl Int") + if (ErrorLeveL) { + SQLite_LastError("ERROR: DLLCall sqlite3_prepare failed!") + Return False + } + if (RC) { + if SQLite_ErrMsg(DB, Msg) + SQLite_LastError(Msg) + ErrorLevel := RC + Return False + } + _SQLite_CheckQuery(Query, DB) + _SQLite_CurrentQuery(Query) + Return Query +} +;======================================================================================================================= +; Function Name: SQLite_FetchNames() +; Description: Provides the column names of a SQLite_Query() based query +; Parameter(s): Query - Query handle, -1 for last prepared query +; ByRef Names - Passes out an array containing the column names +; Return Value(s): On Success - True +; On Failure - False, check ErrorLevel for details +; For additional error message call SQLite_LastError() +;======================================================================================================================= +SQLite_FetchNames(Query, ByRef Names) { + SQLite_LastError(" ") + Names := Array() + if (Query = -1) + Query := _SQLite_CurrentQuery() + if !(DB := _SQLite_CheckQuery(Query)) { + SQLite_LastError("ERROR: Invalid query handle " . Query) + ErrorLevel := _SQLite_ReturnCode("SQLITE_ERROR") + Return False + } + RC := DllCall("SQlite3\sqlite3_column_count", "Ptr", Query, "Cdecl Int") + if (ErrorLevel) { + SQLite_LastError("ERROR: DLLCall sqlite3_column_count failed!") + Return False + } + if (RC < 1) { + SQLite_LastError("ERROR: Query result is empty!") + ErrorLevel := _SQLite_ReturnCode("SQLITE_EMPTY") + Return False + } + Loop, %RC% { + StrPtr := DllCall("SQlite3\sqlite3_column_name", "Ptr", Query, "Int", A_Index - 1, "Cdecl Ptr") + if (ErrorLevel) { + SQLite_LastError("ERROR: DLLCall sqlite3_column_name failed!") + Return False + } + Names[A_Index] := StrGet(StrPtr, "UTF-8") + } + Return True +} + +;======================================================================================================================= +; Function Name: SQLite_QueryFinalize() +; Description: Finalizes SQLite_Query() based query, +; Query handle will be not valid any more +; Parameter(s): Query - Query handle, -1 for last prepared query +; Return Value(s): On Success - True +; On Failure - False, check ErrorLevel for details +; For additional error message call SQLite_LastError() +;======================================================================================================================= +SQLite_QueryFinalize(Query) { + SQLite_LastError(" ") + if (Query = -1) + Query := _SQLite_CurrentQuery() + if !(DB := _SQLite_CheckQuery(Query)) { + SQLite_LastError("ERROR: Invalid query handle " . Query) + ErrorLevel := _SQLite_ReturnCode("SQLITE_ERROR") + Return False + } + RC := DllCall("SQlite3\sqlite3_finalize", "Ptr", Query, "Cdecl Int") + if (ErrorLevel) { + SQLite_LastError("ERROR: DLLCall sqlite3_finalize failed!") + Return False + } + if (RC) { + if SQLite_ErrMsg(DB, Msg) + SQLite_LastError(Msg) + ErrorLevel := RC + Return False + } + _SQLite_CheckQuery(Query, 0) + Return True +} +;======================================================================================================================= +; Function Name: SQLite_QueryReset() +; Description: Resets SQLite_Query() based query for reuse +; Parameter(s): Query - Query handle, -1 for last prepared query +; Return Value(s): On Success - True +; On Failure - False, check ErrorLevel for details +; For additional error message call SQLite_LastError() +;======================================================================================================================= +SQLite_QueryReset(Query) { + SQLite_LastError(" ") + if (Query = -1) + Query := _SQLite_CurrentQuery() + if !(DB := _SQLite_CheckQuery(Query)) { + SQLite_LastError("ERROR: Invalid query handle " . Query) + ErrorLevel := _SQLite_ReturnCode("SQLITE_ERROR") + Return False + } + RC := DllCall("SQlite3\sqlite3_reset", "Ptr", Query, "Cdecl Int") + if (ErrorLevel) { + SQLite_LastError("ERROR: DLLCall sqlite3_finalize failed!") + Return False + } + if (RC) { + if SQLite_ErrMsg(DB, Msg) + SQLite_LastError(Msg) + ErrorLevel := RC + Return False + } + Return True +} +;======================================================================================================================= +; Function Name: SQLite_SQLiteExe() +; Description: Executes commands with SQLite3.exe +; Requirements: Valid path for SQLite3.exe stored in SQLite_EXEPath(). +; Default: A_ScriptDir . "\SQLite3.EXE" +; Parameter(s): DBFile - DB filename +; Commands - Commands for SQLite3.exe +; ByRef Output - Raw output from SQLite3.exe +; Return Value(s): On Success - True +; On Failure - False, check ErrorLevel for details +; For additional error message call SQLite_LastError() +;======================================================================================================================= +SQLite_SQLiteExe(DBFile, Commands, ByRef Output) { + Static InputFile := "~SQLINP.TXT" + Static OutputFile := "~SQLOUT.TXT" + SQLite_LastError(" ") + Output := "" + SQLiteExe := SQLite_EXEPath() + if !FileExist(SQLiteExe) { + SQLite_LastError("ERROR: Unable to find " . SQLiteExe . "!") + ErrorLevel := _SQLite_ReturnCode("SQLITE_ERROR") + Return False + } + if FileExist(InputFile) { + FileDelete, %InputFile% + if (ErrorLevel) { + SQLite_LastError("ERROR: Unable to delete " . InputFile . "!") + Return False + } + } + if FileExist(OutputFile) { + FileDelete, %OutputFile% + if (ErrorLevel) { + SQLite_LastError("ERROR: Unable to delete " . OutputFile . "!") + Return False + } + } + if !InStr(Commands, ".output stdout") + Commands := ".output stdout`n" . Commands + FileAppend, %Commands%, %InputFile%, UTF-8-RAW + if (ErrorLevel) { + SQLite_LastError("ERROR: Unable to create " . InputFile . "!") + Return False + } + Cmd = ""%SQLiteExe%" "%DBFile%" < "%InputFile%" > "%OutputFile%"" ;" + + RunWait %comspec% /c %Cmd%, , Hide UseErrorLevel + if (Errorlevel) { + SQLite_LastError("ERROR: Error occured running " . SQLiteExe . "!") + Return False + } + FileRead, Output, %OutputFile% + if (ErrorLevel) { + SQLite_LastError("ERROR: Unable to read " . OutputFile . "!") + Return False + } + if InStr(Output, "SQL error:") || InStr(Output, "Incomplete SQL:") { + SQLite_LastError("ERROR: " . SQLiteExe . " reported an Error!") + ErrorLevel := _SQLite_ReturnCode("SQLITE_ERROR") + Return False + } + Return True +} +;======================================================================================================================= +; Function Name: SQLite_LibVersion() +; Description: Returns the version number of the SQLite3.dll +; Parameter(s): None +; Return Value(s): On Success - Version number +; On Failure - False, check ErrorLevel for details +; For additional error message call SQLite_LastError() +;======================================================================================================================= +SQLite_LibVersion() { + SQLite_LastError(" ") + StrPtr := DllCall("SQlite3\sqlite3_libversion", "Cdecl Ptr") + if (ErrorLevel) { + SQLite_LastError("ERROR: DLLCall sqlite3_libversion failed!") + Return False + } + Return StrGet(StrPtr, "UTF-8") +} +;======================================================================================================================= +; Function Name: SQLite_LastInsertRowID() +; Description: Returns the ROWID of the most recent INSERT in the DB +; Parameter(s): DB - DB handle, -1 for last opened DB +; ByRef RowID - passes out ROWID +; Return Value(s): On Success - True +; On Failure - False, check ErrorLevel for details +; For additional error message call SQLite_LastError() +;======================================================================================================================= +SQLite_LastInsertRowID(DB, ByRef rowId) { + SQLite_LastError(" ") + RowID := 0 + if (DB = -1) + DB := _SQLite_CurrentDB() + if !_SQLite_CheckDB(DB) { + SQLite_LastError("ERROR: Invalid DB Handle " . DB . "!") + Return False + } + rowId := DllCall("SQLite3\sqlite3_last_insert_rowid", "Ptr", DB, "Cdecl Int64") ; Each entry in an SQLite table has a unique 64-bit signed integer key called the "rowid". + if (ErrorLevel) { + SQLite_LastError("ERROR: DLLCall sqlite3_last_insert_rowid failed!") + Return False + } + Return True +} +;======================================================================================================================= +; Function Name: SQLite_Changes() +; Description: Returns the number of DB rows that were changed +; by the most recently completed query +; Parameter(s): DB - DB handle, -1 for last opened DB +; ByRef Rows - Passes out number of changes +; Return Value(s): On Success - True +; On Failure - False, check ErrorLevel for details +; For additional error message call SQLite_LastError() +;======================================================================================================================= +SQLite_Changes(DB, ByRef Rows) { + SQLite_LastError(" ") + Rows := 0 + if (DB = -1) + DB := _SQLite_CurrentDB() + if !_SQLite_CheckDB(DB) { + SQLite_LastError("ERROR: Invalid DB Handle " . DB . "!") + Return False + } + RC := DllCall("SQLite3\sqlite3_changes", "Ptr", DB, "Cdecl Ptr") + if (ErrorLevel) { + SQLite_LastError("ERROR: DLLCall sqlite3_changes failed!") + Return False + } + Rows := RC + Return True +} +;======================================================================================================================= +; Function Name: SQLite_TotalChanges() +; Description: Returns the total number of DB rows that have been +; modified, inserted, or deleted since the DB connection +; was created +; Parameter(s): DB - DB handle, -1 for last opened DB +; ByRef Rows - Passes out the number of changes +; Return Value(s): On Success - True +; On Failure - False, check ErrorLevel for details +; For additional error message call SQLite_LastError() +;======================================================================================================================= +SQLite_TotalChanges(DB, ByRef Rows) { + SQLite_LastError(" ") + Rows := 0 + if (DB = -1) + DB := _SQLite_CurrentDB() + if !_SQLite_CheckDB(DB) { + SQLite_LastError("ERROR: Invalid DB Handle " . DB . "!") + Return False + } + RC := DllCall("SQLite3\sqlite3_total_changes", "Ptr", DB, "Cdecl Ptr") + if (ErrorLevel) { + SQLite_LastError("ERROR: DLLCall sqlite3_total_changes failed!") + Return False + } + Rows := RC + Return True +} +;======================================================================================================================= +; Function Name: SQLite_ErrMsg() +; Description: Returns the error message for the most recent sqlite3_* API call as string +; Parameter(s): DB - DB handle, -1 for last opened DB +; ByRef Msg - Passes out the error message +; Return Value(s): On Success - True +; On Failure - False, check ErrorLevel for details +; For additional error message call SQLite_LastError() +;======================================================================================================================= +SQLite_ErrMsg(DB, ByRef Msg) { + SQLite_LastError(" ") + Msg := "" + if (DB = -1) + DB := _SQLite_CurrentDB() + if !_SQLite_CheckDB(DB) { + SQLite_LastError("ERROR: Invalid DB Handle " . DB . "!") + Return False + } + messagePtr := DllCall("SQLite3\sqlite3_errmsg", "Ptr", DB, "Cdecl Ptr") + if (ErrorLevel) { + SQLite_LastError("ERROR: DLLCall sqlite3_errmsg failed!") + Return False + } + Msg := StrGet(messagePtr, "UTF-8") + Return True +} +;======================================================================================================================= +; Function Name: SQLite_ErrCode() +; Description: Returns the error code for the most recent sqlite3_* API call as string. +; Parameter(s): DB - DB handle, -1 for last opened DB +; ByRef Code - Passes out the error code +; Return Value(s): On Success - True +; On Failure - False, check ErrorLevel for details +; For additional error message call SQLite_LastError() +;======================================================================================================================= +SQLite_ErrCode(DB, ByRef Code) +{ + SQLite_LastError(" ") + Code := "" + if (DB = -1) + DB := _SQLite_CurrentDB() + if !_SQLite_CheckDB(DB) { + SQLite_LastError("ERROR: Invalid DB Handle " . DB . "!") + Return False + } + RC := DllCall("SQLite3\sqlite3_errcode", "Ptr", DB, "Cdecl Ptr") + if (ErrorLevel) { + SQLite_LastError("ERROR: DLLCall sqlite3_errcode failed!") + Return False + } + Code := RC + Return True +} +;======================================================================================================================= +; Function Name: SQLite_SetTimeout() +; Description: Sets timeout for DB's "busy handler" +; Parameter(s): hDB - DB handle, -1 for last opened DB +; Optional Timeout - Timeout [msec] +; Return Value(s): On Success - True +; On Failure - False, check ErrorLevel for details +; For additional error message call SQLite_LastError() +;======================================================================================================================= +SQLite_SetTimeout(DB, Timeout = 1000) { + SQLite_LastError(" ") + Msg := "" + if (DB = -1) + DB := _SQLite_CurrentDB() + if !_SQLite_CheckDB(DB) { + SQLite_LastError("ERROR: Invalid DB Handle " . DB . "!") + Return False + } + if Timeout Is Not Integer + Timeout := 1000 + RC := DllCall("SQLite3\sqlite3_busy_timeout", "Ptr", DB, "Cdecl Int") + if (ErrorLevel) { + SQLite_LastError("ERROR: DLLCall sqlite3_busy_timeout failed!") + Return False + } + if (RC) { + if SQLite_ErrMsg(DB, Msg) + SQLite_LastError(Msg) + ErrorLevel := RC + Return False + } + Return True +} +;======================================================================================================================= +; Function Name: SQLite_LastError() +; Description: Provides additional error description for the last error +; Parameter(s): Optional Error - for internal use only!!! +; Return Value(s): Error description or "" +;======================================================================================================================= +SQLite_LastError(Error = "") { + Static LastError := "" + if (Error != "") + LastError := Error + Return LastError +} +;======================================================================================================================= +; Function Name: SQLite_DLLPath() +; Description: Stores/provides the path for SQLite3.dll +; SQLite DLL is assumed to be in the scripts directory, if not +; you have to call the function with the valid path before any +; other function calls! +; Parameter(s): Optional Path - Path for SQLite3.dll +; Return Value: Path to SQLite DLL +;======================================================================================================================= + +SQLite_DLLPath(forcedPath = "") { + static DLLPath := "" + static dllname := "SQLite3.dll" + + if(DLLPath == ""){ + ; search the dll + prefix := (A_PtrSize == 8) ? "x64\" : "" + dllpath := prefix . dllname + + if (FileExist(A_ScriptDir . "\" . dllpath)) + DLLPath := A_ScriptDir . "\" . dllpath + else + DLLPath := A_ScriptDir . "\Lib\" . dllpath + } + + if (forcedPath != "") + DLLPath := forcedPath + + return DLLPath +} + + +;======================================================================================================================= +; Function Name: SQLite_EXEPath() +; Description: Stores/provides the path for SQLite3.exe +; SQLite EXE is assumed to be in the scripts directory, if not +; you have to call the function with the valid path before any +; calls on SQLite_SQLite_Exe()! +; Parameter(s): Optional Path - Path for SQLite3.exe +; Return Value: Path to SQLite DLL +;======================================================================================================================= +SQLite_EXEPath(forcedPath = "") { + static EXEPath := "" + + if (EXEPath == ""){ + if (FileExist(A_ScriptDir . "\SQLite3.exe")) + EXEPath := A_ScriptDir . "\SQLite3.exe" + else if (FileExist(A_ScriptDir . "\Lib\SQLite3.exe")) + EXEPath := A_ScriptDir . "\Lib\SQLite3.exe" + } + if (forcedPath != "") + EXEPath := forcedPath + Return EXEPath +} +;======================================================================================================================= +; !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +; !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +; !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +; !!! Following functions and classes are for internal use only !!! +; !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +; !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +; !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +;======================================================================================================================= +; Function Name: _SQLite_StrToUTF8() +; Description: Converts Str to UTF-8 +;======================================================================================================================= +_SQLite_StrToUTF8(Str, ByRef UTF8) { + VarSetCapacity(UTF8, StrPut(Str, "UTF-8"), 0) + Return StrPut(Str, &UTF8, "UTF-8") +} +;======================================================================================================================= +; Function Name: _SQLite_UTF8ToStr() +; Description: Converts UTF-8 to Str +;======================================================================================================================= +_SQLite_UTF8ToStr(UTF8, ByRef Str) { + Str := StrGet(&UTF8, "UTF-8") + Return StrLen(Str) +} +;======================================================================================================================= +; Function Name: _SQLite_ModuleHandle() +; Description: Stores/provides DLL's module handle +;======================================================================================================================= +_SQLite_ModuleHandle(Handle = "") { + Static ModuleHandle := "" + if (Handle != "") + ModuleHandle := Handle + Return ModuleHandle +} +;======================================================================================================================= +; Function Name: _SQLite_CurrentDB() +; Description: Stores\provides the current (last opened) DB handle +;======================================================================================================================= +_SQLite_CurrentDB(DB = "") { + Static CurrentDB := 0 + if (DB != "") + CurrentDB := DB + Return CurrentDB +} +;======================================================================================================================= +; Function Name: _SQLite_CheckDB() +; Description: Stores\frees\validates the given DB handle +;======================================================================================================================= +_SQLite_CheckDB(DB, Action = "") { + Static ValidHandles := {} + DB += 0 + if DB Is Not Integer + Return False + if (DB = 0) + Return False + if (Action = "Store") { + ValidHandles[DB] := True + Return True + } + if (Action = "Free") { + if ValidHandles.HasKey(DB) + ValidHandles.Remove(DB, "") + Return True + } + Return ValidHandles.HasKey(DB) +} +;======================================================================================================================= +; Function Name: _SQLite_CurrentQuery() +; Description: Stores\provides the current (last prepared) query handle +;======================================================================================================================= +_SQLite_CurrentQuery(Query = "") { + Static CurrentQuery := 0 + if (Query != "") + CurrentQuery := Query + Return CurrentQuery +} +;======================================================================================================================= +; Function Name: _SQLite_CheckQuery() +; Description: Stores\frees\validates the given query handle +;======================================================================================================================= +_SQLite_CheckQuery(Query, DB = "") { + Static ValidQueries := {} + Query += 0 + if Query Is Not Integer + Return False + if (Query = 0) + Return False + if (DB = 0) { + if ValidQueries.HasKey(Query) + ValidQueries.Remove(Query, "") + Return True + } + if (DB != "") { + ValidQueries[Query] := DB + Return True + } + Return ValidQueries.HasKey(Query) ? ValidQueries[Query] : False +} +;======================================================================================================================= +; Function Name: _SQLite_ReturnCode(RC) +; Description: Returns numeric RC for literal RC +;======================================================================================================================= +_SQLite_ReturnCode(RC) { + Static RCTXT :={ SQLITE_OK: 0 ; Successful result + , SQLITE_ERROR: 1 ; SQL error or missing database + , SQLITE_INTERNAL: 2 ; NOT USED. Internal logic error in SQLite + , SQLITE_PERM: 3 ; Access permission denied + , SQLITE_ABORT: 4 ; Callback routine requested an abort + , SQLITE_BUSY: 5 ; The database file is locked + , SQLITE_LOCKED: 6 ; A table in the database is locked + , SQLITE_NOMEM: 7 ; A malloc() failed + , SQLITE_READONLY: 8 ; Attempt to write a readonly database + , SQLITE_INTERRUPT: 9 ; Operation terminated by sqlite3_interrupt() + , SQLITE_IOERR: 10 ; Some kind of disk I/O error occurred + , SQLITE_CORRUPT: 11 ; The database disk image is malformed + , SQLITE_NOTFOUND: 12 ; NOT USED. Table or record not found + , SQLITE_FULL: 13 ; Insertion failed because database is full + , SQLITE_CANTOPEN: 14 ; Unable to open the database file + , SQLITE_PROTOCOL: 15 ; NOT USED. Database lock protocol error + , SQLITE_EMPTY: 16 ; Database is empty + , SQLITE_SCHEMA: 17 ; The database schema changed + , SQLITE_TOOBIG: 18 ; String or BLOB exceeds size limit + , SQLITE_CONSTRAINT: 19 ; Abort due to constraint violation + , SQLITE_MISMATCH: 20 ; Data type mismatch + , SQLITE_MISUSE: 21 ; Library used incorrectly + , SQLITE_NOLFS: 22 ; Uses OS features not supported on host + , SQLITE_AUTH: 23 ; Authorization denied + , SQLITE_FORMAT: 24 ; Auxiliary database format error + , SQLITE_RANGE: 25 ; 2nd parameter to sqlite3_bind out of range + , SQLITE_NOTADB: 26 ; File opened that is not a database file + , SQLITE_ROW: 100 ; sqlite3_step() has another row ready + , SQLITE_DONE: 101} ; sqlite3_step() has finished executing + Return RCTXT.HasKey(RC) ? RCTXT[RC] : "" +} diff --git a/Source/Lib/clean.bat b/Source/Lib/clean.bat new file mode 100644 index 0000000..90bddf2 --- /dev/null +++ b/Source/Lib/clean.bat @@ -0,0 +1 @@ +del *.bak \ No newline at end of file diff --git a/Source/Lib/mySQL.ahk b/Source/Lib/mySQL.ahk new file mode 100644 index 0000000..5fa8016 --- /dev/null +++ b/Source/Lib/mySQL.ahk @@ -0,0 +1,431 @@ +/*============================================================ +mysql.ahk +Provides a set of functions to connect and query a mysql database + +Based upon the published lib of panofish +http://www.autohotkey.com/forum/topic67280.html + + +Offical Documentation of the C-API +http://dev.mysql.com/doc/refman/5.0/en/c.html +============================================================ +*/ + + +/* + Parses the given Connectionstring to a ConnectionData + + An typical Connectionstring looks like: + Server=myServerAddress;Port=1234;Database=myDataBase;Uid=myUsername;Pwd=myPassword; + + Further Info: http://www.connectionstrings.com/mysql +*/ +MySQL_CreateConnectionData(connectionString){ + connectionData := {} + StringSplit, connstr, connectionString, `; + Loop, % connstr0 + { + StringSplit, segment, connstr%a_index%, = + connectionData[segment1] := segment2 + } + return connectionData +} + + + +MySQL_StartUp(){ + global MySQL_ExternDir + MySQL_ExternDir := A_WorkingDir + + libDllpath := MySQL_DLLPath() + + if(!FileExist(libDllpath)) + { + msg := "MySQL Libaray not found!`n" libDllpath " (file missing)" + OutputDebug, %msg% + throw Exception(msg,-1) + } + + + hModule := DllCall("LoadLibrary", "Str", libDllpath) + + if (hModule == 0) + { + msg := "LoadLibrary failed, can't load module:`n" libDllpath + OutputDebug, %msg% + throw Exception(msg, -1) + }else + return hModule +} + +MySQL_DLLPath(forcedPath = "") { + static DLLPath := "" + static dllname := "libmySQL.dll" + + if(DLLPath == ""){ + ; search the dll + prefix := (A_PtrSize == 8) ? "x64\" : "" + dllpath := prefix . dllname + + if (FileExist(A_ScriptDir . "\" . dllpath)) + DLLPath := A_ScriptDir . "\" . dllpath + else + DLLPath := A_ScriptDir . "\Lib\" . dllpath + } + + if (forcedPath != "") + DLLPath := forcedPath + + return DLLPath +} + + +/***************************************************************** + Connect to mysql database and return db handle + + host: + user: + password: + database: + port: 3306(default) +****************************************************************** +*/ +MySQL_Connect(host, user, password, database, port = 3306){ + + + db := DllCall("libmySQL.dll\mysql_init", "ptr", 0) + + if (db = 0) + throw Exception("MySQL Error 445, Not enough memory to connect to MySQL", -1) + + connection := DllCall("libmySQL.dll\mysql_real_connect" + , "ptr", db + , "AStr", host ; host name + , "AStr", user ; user name + , "AStr", password ; password + , "AStr", database ; database name + , "UInt", port ; port + , "UInt", 0 ; unix_socket + , "UInt", 0) ; client_flag + + If (connection == 0) + throw Exception(BuildMySQLErrorStr(db, "Cannot connect to database"), -1) + + ;debugging only: + ;MsgBox % "Ping database: " . MySQL_Ping(db) . "`nServer version: " . MySQL_GetVersion(db) + + return db +} + +MySQL_Close(db){ + DllCall("libmySQL.dll\mysql_close", "ptr", db) +} + + + +MySQL_GetVersion(db){ + serverVersion := DllCall("libmySQL.dll\mysql_get_server_info", "ptr", db, "AStr") + return serverVersion +} +MySQL_Ping(db){ + return DllCall("libmySQL.dll\mysql_ping", "ptr", db) +} + +MySQL_GetLastErrorNo(db){ + return DllCall("libmySQL.dll\mysql_errno", "ptr", db) +} + +MySQL_GetLastErrorMsg(db){ + return DllCall("libmySQL.dll\mysql_error", "ptr", db, "AStr") +} + +/* +Retrieves a complete result set to the client. +*/ +MySQL_Store_Result(db) { + return DllCall("libmySQL.dll\mysql_store_result", "ptr", db) +} + +/* +Retrieves the resultset row-by-row +*/ +MySQL_Use_Result(db) { + return DllCall("libmySQL.dll\mysql_use_result", "ptr", db) +} + +/* +Returns a requestResult for the given query +*/ +MySQL_Query(db, query){ + return DllCall("libmySQL.dll\mysql_query", "ptr", db , "AStr", query) +} + +MySQL_free_result(requestResult){ + return DllCall("libmySQL.dll\mysql_free_result", "ptr", requestResult) +} + +/* +Returns the number of columns in a result set. +*/ +MySQL_num_fields(requestResult) { + Return DllCall("libmySQL.dll\mysql_num_fields", "ptr", requestResult) +} + +/* +Returns the lengths of all columns in the current row. +*/ +MySQL_fetch_lengths(requestResult) { + Return , DllCall("libmySQL.dll\mysql_fetch_lengths", "ptr", requestResult) +} + + +/* +Fetches the next row from the result set. +*/ +MySQL_fetch_row(requestResult) { + Return , DllCall("libmySQL.dll\mysql_fetch_row", "ptr", requestResult) +} + + +/* +Fetches given Field +*/ +Mysql_fetch_field_direct(requestResult, fieldnum) { + return DllCall("libmySQL.dll\mysql_fetch_field_direct", "ptr", requestResult, "Uint", fieldnum) +} + +/* +Fetches the next field from the result set. +*/ +Mysql_fetch_field(requestResult) { + return DllCall("libmySQL.dll\mysql_fetch_field", "ptr", requestResult) +} + +/* +Fetches all fields of the resultSet +*/ +MySQL_fetch_fields(requestResult){ + global MySQL_Field + + fields := [] + fieldCount := MySQL_num_fields(requestResult) + + Loop, % fieldCount + { + fptr := Mysql_fetch_field(requestResult) + fields[A_index] := new MySQL_Field(fptr) + } + return fields +} + + +/* +; mysql error handling +*/ +BuildMySQLErrorStr(db, message, query="") { + errorCode := DllCall("libmySQL.dll\mysql_errno", "UInt", db) + errorStr := DllCall("libmySQL.dll\mysql_error", "UInt", db, "AStr") + Return, "MySQL Error: " message "Error " errorCode ": " errorStr "`n`n" query +} + + + + + +;============================================================ +; mysql get address +;============================================================ + + +GetUIntAtAddress(_addr, _offset) +{ + return NumGet(_addr+0,_offset * 4, "uint") +} + +GetPtrAtAddress(_addr, _offset) +{ + return NumGet(_addr+0,_offset * A_PtrSize, "ptr") +} + + +;============================================================ +; internal: dump resultset from given Query to string +;============================================================ +__MySQL_Query_Dump(_db, _query) +{ + local resultString, result, requestResult, fieldCount + local row, lengths, length, fieldPointer, field + + + result := DllCall("libmySQL.dll\mysql_query", "UInt", _db , "AStr", _query) + + If (result != 0) + throw new Exception(BuildMySQLErrorStr(_db, "dbQuery Fail", RegExReplace(_query , "\t", " ")), -1) + + + requestResult := MySql_Store_Result(_db) + + if (requestResult = 0) { ; call must have been an insert or delete ... a select would return results to pass back + return + } + + fieldCount := MySQL_num_fields(requestResult) + + + myfields := MySQL_fetch_fields(requestResult) + for each, fifi in myfields + { + MsgBox % "name: " fifi.Name() "`n org name: " fifi.OrgName() "`ntable: " fifi.Table() "`norg table: " fifi.OrgTable() + } + + Loop + { + row := MySQL_fetch_row(requestResult) + if (!row) + break + + ; Get a pointer on a table of lengths (unsigned long) + lengths := MySQL_fetch_lengths(requestResult) + + Loop %fieldCount% + { + length := GetUIntAtAddress(lengths, A_Index - 1) + fieldPointer := GetPtrAtAddress(row, A_Index - 1) + field := StrGet(fieldPointer, length, "CP0") + resultString := resultString . field + if (A_Index < fieldCount) + resultString := resultString . "|" ; seperator for fields + } + resultString := resultString . "`n" ; seperator for records + } + MySQL_free_result(requestResult) + resultString := RegExReplace(resultString , "`n$", "") + + return resultString +} + + + + ;============================================================ + ; Escape mysql special characters + ; This must be done to sql insert columns where the characters might contain special characters, such as user input fields + ; + ; Escape Sequence Character Represented by Sequence + ; \' A single quote (“'”) character. + ; \" A double quote (“"”) character. + ; \n A newline (linefeed) character. + ; \r A carriage return character. + ; \t A tab character. + ; \\ A backslash (“\”) character. + ; \% A “%” character. Usually indicates a wildcard character + ; \_ A “_” character. Usually indicates a wildcard character + ; \b A backspace character. + ; + ; these 2 have not yet been included yet + ; \Z ASCII 26 (Control+Z). Stands for END-OF-FILE on Windows + ; \0 An ASCII NUL (0x00) character. + ; + ; example call: + ; description := mysql_escape_string(description) + ;============================================================ + + Mysql_escape_string(unescaped_string) + { + escaped_string := RegExReplace(unescaped_string, "\\", "\\") ; \ + escaped_string := RegExReplace(escaped_string, "'", "\'") ; ' + + escaped_string := RegExReplace(escaped_string, "`t", "\t") ; \t + escaped_string := RegExReplace(escaped_string, "`n", "\n") ; \n + escaped_string := RegExReplace(escaped_string, "`r", "\r") ; \r + escaped_string := RegExReplace(escaped_string, "`b", "\b") ; \b + + ; these characters appear to insert fine in mysql + ;escaped_string := RegExReplace(escaped_string, "%", "\%") ; % + ;escaped_string := RegExReplace(escaped_string, "_", "\_") ; _ + ;escaped_string := RegExReplace(escaped_string, """", "\""") ; " + + return escaped_string + } + + +/* +typedef struct st_mysql_field { + char *name; /* Name of column */ + char *org_name; /* Original column name, if an alias */ + char *table; /* Table of column if column was a field */ + char *org_table; /* Org table name, if table was an alias */ + char *db; /* Database for table */ + char *catalog; /* Catalog for table */ + char *def; /* Default value (set by mysql_list_fields) */ + unsigned long length; /* Width of column (create length) */ + unsigned long max_length; /* Max width for selected set */ + unsigned int name_length; + unsigned int org_name_length; + unsigned int table_length; + unsigned int org_table_length; + unsigned int db_length; + unsigned int catalog_length; + unsigned int def_length; + unsigned int flags; /* Div flags */ + unsigned int decimals; /* Number of decimals in field */ + unsigned int charsetnr; /* Character set */ + enum enum_field_types type; /* Type of field. See mysql_com.h for types */ + void *extension; +} MYSQL_FIELD; +*/ + +/* +'mysql_port is a long +'mysql_unix port is a long (pointer) +'sizeof(MYSQL_FIELD)=32 +Public Type API_MYSQL_FIELD + name As Long + table As Long + def As Long + type As API_enum_field_types + length As Long + max_length As Long + flags As Long + decimals As Long +End Type +*/ +class MySQL_Field +{ + ptr := 0 + + __new(ptr){ + this.ptr := ptr + } + + Name(){ + adr := GetPtrAtAddress(this.ptr, 0) + return StrGet(adr, 255, "CP0") + } + + OrgName(){ + adr := GetPtrAtAddress(this.ptr, 4) + return StrGet(adr, 255, "CP0") + } + + Table(){ + adr := GetPtrAtAddress(this.ptr, 8) + return StrGet(adr, 255, "CP0") + } + + OrgTable(){ + adr := GetPtrAtAddress(this.ptr, 12) + return StrGet(adr, 255, "CP0") + } + +} + + + + + + + + + + + diff --git a/Source/Lib/sqlite3.def b/Source/Lib/sqlite3.def new file mode 100644 index 0000000..58e4dff --- /dev/null +++ b/Source/Lib/sqlite3.def @@ -0,0 +1,203 @@ +EXPORTS +sqlite3_aggregate_context +sqlite3_aggregate_count +sqlite3_auto_extension +sqlite3_backup_finish +sqlite3_backup_init +sqlite3_backup_pagecount +sqlite3_backup_remaining +sqlite3_backup_step +sqlite3_bind_blob +sqlite3_bind_double +sqlite3_bind_int +sqlite3_bind_int64 +sqlite3_bind_null +sqlite3_bind_parameter_count +sqlite3_bind_parameter_index +sqlite3_bind_parameter_name +sqlite3_bind_text +sqlite3_bind_text16 +sqlite3_bind_value +sqlite3_bind_zeroblob +sqlite3_blob_bytes +sqlite3_blob_close +sqlite3_blob_open +sqlite3_blob_read +sqlite3_blob_reopen +sqlite3_blob_write +sqlite3_busy_handler +sqlite3_busy_timeout +sqlite3_changes +sqlite3_clear_bindings +sqlite3_close +sqlite3_collation_needed +sqlite3_collation_needed16 +sqlite3_column_blob +sqlite3_column_bytes +sqlite3_column_bytes16 +sqlite3_column_count +sqlite3_column_database_name +sqlite3_column_database_name16 +sqlite3_column_decltype +sqlite3_column_decltype16 +sqlite3_column_double +sqlite3_column_int +sqlite3_column_int64 +sqlite3_column_name +sqlite3_column_name16 +sqlite3_column_origin_name +sqlite3_column_origin_name16 +sqlite3_column_table_name +sqlite3_column_table_name16 +sqlite3_column_text +sqlite3_column_text16 +sqlite3_column_type +sqlite3_column_value +sqlite3_commit_hook +sqlite3_compileoption_get +sqlite3_compileoption_used +sqlite3_complete +sqlite3_complete16 +sqlite3_config +sqlite3_context_db_handle +sqlite3_create_collation +sqlite3_create_collation16 +sqlite3_create_collation_v2 +sqlite3_create_function +sqlite3_create_function16 +sqlite3_create_function_v2 +sqlite3_create_module +sqlite3_create_module_v2 +sqlite3_data_count +sqlite3_db_config +sqlite3_db_filename +sqlite3_db_handle +sqlite3_db_mutex +sqlite3_db_readonly +sqlite3_db_release_memory +sqlite3_db_status +sqlite3_declare_vtab +sqlite3_enable_load_extension +sqlite3_enable_shared_cache +sqlite3_errcode +sqlite3_errmsg +sqlite3_errmsg16 +sqlite3_exec +sqlite3_expired +sqlite3_extended_errcode +sqlite3_extended_result_codes +sqlite3_file_control +sqlite3_finalize +sqlite3_free +sqlite3_free_table +sqlite3_get_autocommit +sqlite3_get_auxdata +sqlite3_get_table +sqlite3_global_recover +sqlite3_initialize +sqlite3_interrupt +sqlite3_last_insert_rowid +sqlite3_libversion +sqlite3_libversion_number +sqlite3_limit +sqlite3_load_extension +sqlite3_log +sqlite3_malloc +sqlite3_memory_alarm +sqlite3_memory_highwater +sqlite3_memory_used +sqlite3_mprintf +sqlite3_mutex_alloc +sqlite3_mutex_enter +sqlite3_mutex_free +sqlite3_mutex_leave +sqlite3_mutex_try +sqlite3_next_stmt +sqlite3_open +sqlite3_open16 +sqlite3_open_v2 +sqlite3_os_end +sqlite3_os_init +sqlite3_overload_function +sqlite3_prepare +sqlite3_prepare16 +sqlite3_prepare16_v2 +sqlite3_prepare_v2 +sqlite3_profile +sqlite3_progress_handler +sqlite3_randomness +sqlite3_realloc +sqlite3_release_memory +sqlite3_reset +sqlite3_reset_auto_extension +sqlite3_result_blob +sqlite3_result_double +sqlite3_result_error +sqlite3_result_error16 +sqlite3_result_error_code +sqlite3_result_error_nomem +sqlite3_result_error_toobig +sqlite3_result_int +sqlite3_result_int64 +sqlite3_result_null +sqlite3_result_text +sqlite3_result_text16 +sqlite3_result_text16be +sqlite3_result_text16le +sqlite3_result_value +sqlite3_result_zeroblob +sqlite3_rollback_hook +sqlite3_rtree_geometry_callback +sqlite3_set_authorizer +sqlite3_set_auxdata +sqlite3_shutdown +sqlite3_sleep +sqlite3_snprintf +sqlite3_soft_heap_limit +sqlite3_soft_heap_limit64 +sqlite3_sourceid +sqlite3_sql +sqlite3_status +sqlite3_step +sqlite3_stmt_busy +sqlite3_stmt_readonly +sqlite3_stmt_status +sqlite3_stricmp +sqlite3_strnicmp +sqlite3_table_column_metadata +sqlite3_test_control +sqlite3_thread_cleanup +sqlite3_threadsafe +sqlite3_total_changes +sqlite3_trace +sqlite3_transfer_bindings +sqlite3_update_hook +sqlite3_uri_boolean +sqlite3_uri_int64 +sqlite3_uri_parameter +sqlite3_user_data +sqlite3_value_blob +sqlite3_value_bytes +sqlite3_value_bytes16 +sqlite3_value_double +sqlite3_value_int +sqlite3_value_int64 +sqlite3_value_numeric_type +sqlite3_value_text +sqlite3_value_text16 +sqlite3_value_text16be +sqlite3_value_text16le +sqlite3_value_type +sqlite3_vfs_find +sqlite3_vfs_register +sqlite3_vfs_unregister +sqlite3_vmprintf +sqlite3_vsnprintf +sqlite3_vtab_config +sqlite3_vtab_on_conflict +sqlite3_wal_autocheckpoint +sqlite3_wal_checkpoint +sqlite3_wal_checkpoint_v2 +sqlite3_wal_hook +sqlite3_win32_mbcs_to_utf8 +sqlite3_win32_utf8_to_mbcs diff --git a/Source/Lib/sqlite3.dll b/Source/Lib/sqlite3.dll new file mode 100644 index 0000000000000000000000000000000000000000..981efa18a438612d4331c6bb721fbc323ac20776 GIT binary patch literal 595072 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%0Da0f_E-%xfA8cmu_MwlnEE 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 z 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

^u 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 literal 0 HcmV?d00001 diff --git a/Source/Lib/x64/sqlite3.dll b/Source/Lib/x64/sqlite3.dll new file mode 100644 index 0000000000000000000000000000000000000000..4b2fffd242028b85b2b1d4fa85d6e2909024a5c0 GIT binary patch literal 900096 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%0AE{`V6D`_N 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 |wItN`^JYijFP}yMl61VEs?-xm?Tk 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 From 5ff36b9261ca519e9590d909facaaf1de9a617ba Mon Sep 17 00:00:00 2001 From: ManiacDC Date: Fri, 10 Oct 2014 14:44:50 -0400 Subject: [PATCH 02/62] Fixed a few bugs --- Source/Includes/Wordlist.ahk | 25 ++++++++----------------- Source/TypingAid.ahk | 2 +- 2 files changed, 9 insertions(+), 18 deletions(-) diff --git a/Source/Includes/Wordlist.ahk b/Source/Includes/Wordlist.ahk index 23dc763..25e6ebf 100644 --- a/Source/Includes/Wordlist.ahk +++ b/Source/Includes/Wordlist.ahk @@ -14,12 +14,14 @@ ReadWordList() } IF not wDB.Query("CREATE TEMP TABLE Words (hash TEXT, word TEXT UNIQUE, count INTEGER);") + ;IF not wDB.Query("CREATE TABLE Words (hash TEXT, word TEXT UNIQUE, count INTEGER);") { msgbox Cannot Create Table - fatal error... ExitApp } IF not wDB.Query("CREATE INDEX temp.Hash ON Words (hash);") + ;IF not wDB.Query("CREATE INDEX Hash ON Words (hash);") { msgbox Cannot Create Index - fatal error... ExitApp @@ -156,8 +158,8 @@ AddWordToList(AddWord,ForceCountNewOnly) IfNotEqual,LearnedWordsCount, ;if this is a stored learned word, this will only have a value when LearnedWords are read in from the wordlist { WhereQuery := "WHERE word = '" . addword . "'" - QueryResult := wDB.Query("SELECT * FROM words " . WhereQuery . ";") - IF !QueryResult ; if we haven't yet added this word, add it to the count and list + QueryResult := wDB.QueryValue("SELECT COUNT(*) FROM words " . WhereQuery . ";") + IfEqual, QueryResult, 0 ; if we haven't yet added this word, add it to the count and list { IfEqual, LearnedWords, ;if we haven't learned any words yet, set the LearnedWords list to the new word { @@ -174,7 +176,7 @@ AddWordToList(AddWord,ForceCountNewOnly) } else { ; If this is an on-the-fly learned word AddWordInList := wDB.Query("SELECT * FROM words WHERE word = '" . AddWord . "';") - IfEqual, AddWordInList, ; if the word is not in the list + IF !( AddWordInList.Count() ) ; if the word is not in the list { IfNotEqual, ForceCountNewOnly, 1 @@ -222,7 +224,7 @@ AddWordToList(AddWord,ForceCountNewOnly) IfEqual, ForceCountNewOnly, 1 { - For each, row in AddWordList.Rows + For each, row in AddWordInList.Rows { CountValue := row[3] break @@ -307,23 +309,12 @@ UpdateWordCount(word,SortOnly) Return Local CountValue - Local Query - Local ValueType - Local Values - Local each - Local row - - Query := wDB.Query("SELECT count FROM words WHERE word = '" . word . "';") - For each, row in Query.Rows - { - CountValue := row[1] - break - } + CountValue := wDB.QueryValue("SELECT count FROM words WHERE word = '" . word . "';") IfNotEqual, CountValue, { - Query := wDB.Query("UPDATE words SET count = ('" . CountValue++ . "') WHERE word = '" . word . "';") + wDB.Query("UPDATE words SET count = ('" . CountValue++ . "') WHERE word = '" . word . "';") } Return } diff --git a/Source/TypingAid.ahk b/Source/TypingAid.ahk index 22fb637..4791add 100644 --- a/Source/TypingAid.ahk +++ b/Source/TypingAid.ahk @@ -309,7 +309,7 @@ RecomputeMatches() } } - Matches := wDB.Query("SELECT word FROM Words WHERE hash = '" . baseword . "' AND word LIKE '" . Word . "%'" . SuppressMatchingWordQuery . " ORDER BY CASE WHEN count IS NULL then 0 else 1 end, count, Word;") + Matches := wDB.Query("SELECT word FROM Words WHERE hash = '" . baseword . "' AND word LIKE '" . Word . "%'" . SuppressMatchingWordQuery . " ORDER BY CASE WHEN count IS NULL then ROWID else 'z' end, count, Word;") for each, row in Matches.Rows { From c1e74be83dfa6cb3a58addcc1b5deeb7ee059b60 Mon Sep 17 00:00:00 2001 From: ManiacDC Date: Mon, 20 Oct 2014 11:55:14 -0400 Subject: [PATCH 03/62] Fixed a bunch of bugs, file to wordlist, performance improvements, etc --- Source/Includes/Wordlist.ahk | 292 +++++++++++++++-------------------- Source/TypingAid.ahk | 13 +- 2 files changed, 127 insertions(+), 178 deletions(-) diff --git a/Source/Includes/Wordlist.ahk b/Source/Includes/Wordlist.ahk index 25e6ebf..a94d60a 100644 --- a/Source/Includes/Wordlist.ahk +++ b/Source/Includes/Wordlist.ahk @@ -6,6 +6,12 @@ ReadWordList() ;mark the wordlist as not done WordListDone = 0 + Local ParseWords + Local LearnedWordsTable + Local TempAddToLearned + Local each + Local row + wDB := DBA.DataBaseFactory.OpenDataBase("SQLite", A_ScriptDir . "\WordlistLearned.db" ) if !wDB { @@ -13,41 +19,75 @@ ReadWordList() exitapp } - IF not wDB.Query("CREATE TEMP TABLE Words (hash TEXT, word TEXT UNIQUE, count INTEGER);") - ;IF not wDB.Query("CREATE TABLE Words (hash TEXT, word TEXT UNIQUE, count INTEGER);") + IF not wDB.Query("CREATE TEMP TABLE Words (wordindexed TEXT, word TEXT UNIQUE, count INTEGER);") + ;IF not wDB.Query("CREATE TABLE Words (wordindexed TEXT, word TEXT UNIQUE, count INTEGER);") { msgbox Cannot Create Table - fatal error... ExitApp } - IF not wDB.Query("CREATE INDEX temp.Hash ON Words (hash);") - ;IF not wDB.Query("CREATE INDEX Hash ON Words (hash);") + IF not wDB.Query("CREATE INDEX temp.WordIndex ON Words (wordindexed);") + ;IF not wDB.Query("CREATE INDEX WordIndex ON Words (wordindexed);") { msgbox Cannot Create Index - fatal error... ExitApp } + IF not wDB.Query("CREATE TEMP TABLE LearnedWords (learnedword TEXT UNIQUE);") + ;IF not wDB.Query("CREATE TABLE LearnedWords (learnedword TEXT UNIQUE);") + { + MsgBox Cannot Create Table - fatal error... + ExitApp + } + wDB.BeginTransaction() ;reads list of words from file FileRead, ParseWords, %A_ScriptDir%\Wordlist.txt Loop, Parse, ParseWords, `n, `r { - AddWordToList(A_LoopField,0) + IfEqual, TempAddToLearned, 1 + { + IF CheckValid(A_LoopField) + { + wDB.Query("INSERT INTO Learnedwords VALUES ('" . A_LoopField . "')") + } + } else IfEqual, A_LoopField, `;LEARNEDWORDS`; + { + IfEqual, LearnMode, On + { + TempAddToLearned=1 + LegacyLearnedWords=1 ; Set Flag that we need to convert wordlist file + } + } else { + AddWordToList(A_LoopField,0) + } } ParseWords = wDB.EndTransaction() - - ;Force LearnedWordsCount to 0 as we are now reading Learned Words from the Learned Words file - IfEqual, LearnedWordsCount, - LearnedWordsCount=0 - + + wDB.BeginTransaction() ;reads list of words from file FileRead, ParseWords, %A_ScriptDir%\WordlistLearned.txt Loop, Parse, ParseWords, `n, `r { - AddWordToList(A_LoopField,0) + IF CheckValid(A_LoopField) + { + wDB.Query("INSERT INTO Learnedwords VALUES ('" . A_LoopField . "')") + } } ParseWords = + wDB.EndTransaction() + + ;Force LearnedWordsCount to 0 as we are now processing Learned Words + LearnedWordsCount=0 + + LearnedWordsTable := wDB.Query("SELECT learnedword FROM LearnedWords;") + + For each, row in LearnedWordsTable.Rows + { + AddWordToList(row[1],0) + } + LearnedWordsTable = ;reverse the numbers of the word counts in memory GoSub, ReverseWordNums @@ -66,18 +106,21 @@ ReverseWordNums: IfEqual, LearnMode, Off, Return -wDB.BeginTransaction() LearnedWordsCount+=4 -Loop,parse,LearnedWords, %DelimiterChar% + +LearnedWordsTable := wDB.Query("SELECT learnedWord FROM LearnedWords;") + +wDB.BeginTransaction() +For each, row in LearnedWordsTable.Rows { - StringLeft, baseword, A_LoopField, %wlen% - baseword := ConvertWordToAscii(baseword,1) - WhereQuery := "WHERE word = '" . A_LoopField . "'" - wDB.Query("UPDATE words SET count = (SELECT " . LearnedWordsCount . " - count FROM words " . WhereQuery . ") WHERE " . WhereQuery . ";") + WhereQuery := "WHERE word = '" . row[1] . "'" + wDB.Query("UPDATE words SET count = (SELECT " . LearnedWordsCount . " - count FROM words " . WhereQuery . ") " . WhereQuery . ";") } wDB.EndTransaction() -AsciiWord = +each= +row= +LearnedWordsTable = LearnedWordsCount = Return @@ -90,7 +133,6 @@ AddWordToList(AddWord,ForceCountNewOnly) ;ForceCountNewOnly = force this word to be permanently learned even if learnmode is off global Local CharTerminateList - Local Base Local AddWordInList Local CountWord Local pos @@ -100,51 +142,20 @@ AddWordToList(AddWord,ForceCountNewOnly) Local CountValue Local each Local row + Local AddWordIndex + + StringUpper, AddWordIndex, AddWord IfEqual, LearnMode, On { LearnModeTemp = 1 - ;force words to max of MaxLengthInLearnMode characters - StringLeft, AddWord, AddWord, %MaxLengthInLearnMode% } else { IfEqual, ForceCountNewOnly, 1 LearnModeTemp = 1 } - - Ifequal, Addword, ;If we have no word to add, skip out. - Return - - if addword is space ;If addword is only whitespace, skip out. - Return - - ;if addword does not contain at least one alpha character, skip out. - if ( RegExMatch(addword, "S)[a-zA-Z]") = 0 ) - Return - - if ( Substr(addword,1,1) = ";" ) ;If first char is ";", clear word and skip out. - { - IfEqual, LearnMode, On ;Check LearnMode here as we only do this if the wordlist is not done - { - IfEqual, wordlistdone, 0 ;If we are still reading the wordlist file and we come across ;LEARNEDWORDS; set the LearnedWordsCount flag - { - IfEqual, AddWord, `;LEARNEDWORDS`; - { - LegacyLearnedWords=1 ; Set Flag that we need to convert wordlist file - IfEqual, LearnedWordsCount, - { - LearnedWordsCount=0 - wDB.EndTransaction() - } - } - } - } - Return - } - - IF ( StrLen(addword) <= wlen ) ; don't add the word if it's not longer than the minimum length - { - Return - } + + if !(CheckValid(AddWord)) + return ifequal, wordlistdone, 1 { @@ -152,25 +163,13 @@ AddWordToList(AddWord,ForceCountNewOnly) Return } - Base := ConvertWordToAscii(SubStr(addword,1,wlen),1) IfEqual, WordListDone, 0 ;if this is read from the wordlist { IfNotEqual,LearnedWordsCount, ;if this is a stored learned word, this will only have a value when LearnedWords are read in from the wordlist { - WhereQuery := "WHERE word = '" . addword . "'" - QueryResult := wDB.QueryValue("SELECT COUNT(*) FROM words " . WhereQuery . ";") - IfEqual, QueryResult, 0 ; if we haven't yet added this word, add it to the count and list - { - IfEqual, LearnedWords, ;if we haven't learned any words yet, set the LearnedWords list to the new word - { - LearnedWords = %addword% - } else { ;otherwise append the learned word to the list - LearnedWords .= DelimiterChar . addword - } - wDB.Query("INSERT INTO words VALUES ('" . base . "','" . addword . "','" . LearnedWordsCount++ . "');") - } + wDB.Query("INSERT INTO words VALUES ('" . AddWordIndex . "','" . addword . "','" . LearnedWordsCount++ . "');") } else { - wDB.Query("INSERT INTO words (hash,word) VALUES ('" . base . "','" . addword . "');") + wDB.Query("INSERT INTO words (wordindexed,word) VALUES ('" . AddWordIndex . "','" . addword . "');") } } else { ; If this is an on-the-fly learned word @@ -201,23 +200,11 @@ AddWordToList(AddWord,ForceCountNewOnly) IfEqual, LearnMode, On { - wDB.Query("INSERT INTO words VALUES ('" . base . "','" . addword . "','" . CountValue . "');") + wDB.Query("INSERT INTO words VALUES ('" . AddWordIndex . "','" . addword . "','" . CountValue . "');") + wDB.Query("INSERT INTO LearnedWords VALUES ('" . addword . "');") } else { - wDB.Query("INSERT INTO words (hash,word) VALUES ('" . base . "','" . addword . "');") - } - - IfEqual, LearnedWords, ;if we haven't learned any words yet, set the LearnedWords list to the new word - { - LearnedWords = %addword% - } else { ;otherwise append the learned word to the list - LearnedWords .= DelimiterChar . addword + wDB.Query("INSERT INTO words (wordindexed,word) VALUES ('" . AddWordIndex . "','" . addword . "');") } - - IfEqual, LearnMode, On - { - IfEqual, ForceCountNewOnly, 1 - UpdateWordCount(addword,1) ;re-sort the necessary words if it's a forced added word - } } else { IfEqual, LearnMode, On { @@ -234,7 +221,6 @@ AddWordToList(AddWord,ForceCountNewOnly) { wDB.QUERY("UPDATE words SET count = ('" . LearnCount . "') WHERE word = '" . addword . "');") } - UpdateWordCount(addWord,1) } else { UpdateWordCount(addword,0) ;Increment the word count if it's already in the list and we aren't forcing it on } @@ -245,20 +231,36 @@ AddWordToList(AddWord,ForceCountNewOnly) Return } +CheckValid(Word) +{ + + Ifequal, Word, ;If we have no word to add, skip out. + Return + + if Word is space ;If Word is only whitespace, skip out. + Return + + ;if Word does not contain at least one alpha character, skip out. + if ( RegExMatch(Word, "S)[a-zA-Z]") = 0 ) + Return + + if ( Substr(Word,1,1) = ";" ) ;If first char is ";", clear word and skip out. + { + Return + } + + IF ( StrLen(Word) <= wlen ) ; don't add the word if it's not longer than the minimum length + { + Return + } + + Return, 1 +} + DeleteWordFromList(DeleteWord) { global - Local Base - Local DeleteWordInList - Local CountWord - Local Pos - Local OldStringCaseSense - Local SearchableLearnedWords - Local SearchDeleteWord - Local CurrentNum - Local NextNum - Ifequal, DeleteWord, ;If we have no word to delete, skip out. Return @@ -268,26 +270,7 @@ DeleteWordFromList(DeleteWord) IfNotEqual, LearnMode, On Return - ; add surrounding delimiter chars - SearchableLearnedWords = %DelimiterChar%%LearnedWords%%DelimiterChar% - SearchDeleteWord = %DelimiterChar%%DeleteWord%%DelimiterChar% - WordInLearnedWords := InStr(SearchableLearnedWords,SearchDeleteWord,CaseSensitive) - - IFEqual, WordInLearnedWords, - Return - - ; Set Case Sensitive - OldStringCaseSense := A_StringCaseSense - StringCaseSense, On - ;Remove word from LearnedWords if present - ; remove DeleteWord - StringReplace, LearnedWords, SearchableLearnedWords, %DelimiterChar%%DeleteWord%%DelimiterChar%, %DelimiterChar%, All - ; remove surrounding delimiter chars - StringTrimLeft, LearnedWords, LearnedWords, 1 - StringTrimRight, LearnedWords, LearnedWords, 1 - ; Restore old case sensitive setting - StringCaseSense, %OldStringCaseSense% - + wDB.Query("DELETE FROM LearnedWords WHERE learnedword = '" . DeleteWord . "';") wDB.Query("DELETE FROM words WHERE word = '" . DeleteWord . "';") Return @@ -308,14 +291,9 @@ UpdateWordCount(word,SortOnly) IfEqual, SortOnly, Return - Local CountValue - - CountValue := wDB.QueryValue("SELECT count FROM words WHERE word = '" . word . "';") + WhereQuery := "WHERE word = '" . word . "'" + wDB.Query("UPDATE words SET count = (SELECT count + 1 FROM words " . WhereQuery . ") " . WhereQuery . ";") - IfNotEqual, CountValue, - { - wDB.Query("UPDATE words SET count = ('" . CountValue++ . "') WHERE word = '" . word . "';") - } Return } @@ -350,60 +328,33 @@ MaybeUpdateWordlist() local TempWordList local SortWordList - local AppendWord local LearnedwordsPos local ParseWords + Local each + Local row ; Update the Learned Words - ;IfNotEqual, LearnedWords, - If (!1) + IfEqual, WordListDone, 1 { - IfEqual, WordlistDone, 1 + IfEqual, LearnMode, Off { - ; Parse the learned words and store them in a new list by count if their total count is greater than LearnCount. - ; Prefix the word with the count and "z" for sorting + SortWordList := wDB.Query("SELECT LearnedWord FROM LearnedWords;") + } else { + SortWordList := wDB.Query("SELECT LearnedWord FROM LearnedWords LEFT JOIN Words ON LearnedWords.LearnedWord = Words.Word WHERE Words.count NOT NULL ORDER BY Words.count DESC;") + } - IfEqual, LearnMode, Off - { - SortWordList := LearnedWords - } else { - - Loop, Parse, LearnedWords, %DelimiterChar% - { - SortWord := ConvertWordToAscii(A_LoopField,0) - - IfGreaterOrEqual, zCount%SortWord%, %LearnCount% - { - SortWordList .= DelimiterChar . zCount%SortWord% . "z" . A_LoopField - } - } + for each, row in SortWordList.Rows + { + TempWordList .= row[1] . "`r`n" + } - StringTrimLeft, SortWordList, SortWordList, 1 ;remove extra starting ASCII 2 - - Sort, SortWordList, N R D%DelimiterChar% ; Sort numerically, comma delimiter - } - - IfNotEqual, SortWordList, ; If SortWordList exists write to the file, otherwise don't. - { - - Loop, Parse, SortWordList, %DelimiterChar% - { - IfEqual, LearnMode, On - { - StringTrimLeft, AppendWord, A_LoopField, InStr(A_LoopField,"z") ;Strip (Number,"z") from beginning - } else { - AppendWord := A_LoopField - } - - TempWordList .= AppendWord . "`r`n" - } - - StringTrimRight, TempWordList, TempWordList, 2 + IfNotEqual, TempWordList, + { + StringTrimRight, TempWordList, TempWordList, 2 - FileDelete, %A_ScriptDir%\Temp_WordlistLearned.txt - FileAppendDispatch(TempWordList, A_ScriptDir . "\Temp_WordlistLearned.txt") - FileCopy, %A_ScriptDir%\Temp_WordlistLearned.txt, %A_ScriptDir%\WordlistLearned.txt, 1 - FileDelete, %A_ScriptDir%\Temp_WordlistLearned.txt - } + FileDelete, %A_ScriptDir%\Temp_WordlistLearned.txt + FileAppendDispatch(TempWordList, A_ScriptDir . "\Temp_WordlistLearned.txt") + FileCopy, %A_ScriptDir%\Temp_WordlistLearned.txt, %A_ScriptDir%\WordlistLearned.txt, 1 + FileDelete, %A_ScriptDir%\Temp_WordlistLearned.txt ; Convert the Old Wordlist file to not have ;LEARNEDWORDS; IfEqual, LegacyLearnedWords, 1 @@ -421,8 +372,9 @@ MaybeUpdateWordlist() } } - wDb.Query("DROP INDEX temp.hash ON Words;"), wDB.Query("DROP TABLE Words;"), + wDB.Query("DROP TABLE LearnedWords;"), + wDB.Query("DROP INDEX temp.WordIndex;"), wDB.Close(), } \ No newline at end of file diff --git a/Source/TypingAid.ahk b/Source/TypingAid.ahk index 4791add..9581be7 100644 --- a/Source/TypingAid.ahk +++ b/Source/TypingAid.ahk @@ -56,14 +56,10 @@ BlockInput, Send IfEqual, A_IsUnicode, 1 { - ; MaxLengthInLearnMode = (253 (max len of var name) - zcount)/ 4 rounded down - MaxLengthInLearnMode = 61 ; Need 4 characters in Unicode mode AsciiPrefix = 000 AsciiTrimLength = -3 } else { - ; MaxLengthInLearnMode = (253 (max len of var name) - zcount)/ 2 rounded down - MaxLengthInLearnMode = 123 ; Need 2 characters in Ascii mode AsciiPrefix = 0 AsciiTrimLength = -1 @@ -283,14 +279,13 @@ RecomputeMatches() Local row Local ValueType Local Values + Local WordMatch SavePriorMatchPosition() ;Match part-word with command Num = number = 0 - StringLeft, baseword, Word, %wlen% - baseword := ConvertWordToAscii(baseword,1) IfEqual, ArrowKeyMethod, Off { @@ -299,17 +294,19 @@ RecomputeMatches() else LimitTotalMatches = 10 } + StringUpper, WordMatch, Word + IfEqual, SuppressMatchingWord, On { IfEqual, NoBackSpace, Off { SuppressMatchingWordQuery := " AND word <> '" . Word . "'" } else { - SuppressMatchingWordQuery := " AND word NOT LIKE '" . Word . "'" + SuppressMatchingWordQuery := " AND wordindexed <> '" . WordMatch . "'" } } - Matches := wDB.Query("SELECT word FROM Words WHERE hash = '" . baseword . "' AND word LIKE '" . Word . "%'" . SuppressMatchingWordQuery . " ORDER BY CASE WHEN count IS NULL then ROWID else 'z' end, count, Word;") + Matches := wDB.Query("SELECT word FROM Words WHERE wordindexed GLOB '" . WordMatch . "*' " . SuppressMatchingWordQuery . " ORDER BY CASE WHEN count IS NULL then ROWID else 'z' end, count DESC, Word LIMIT 200;") for each, row in Matches.Rows { From 8e58fc496d925ef922378476ec928a823b1edf54 Mon Sep 17 00:00:00 2001 From: ManiacDC Date: Thu, 30 Oct 2014 08:59:51 -0400 Subject: [PATCH 04/62] Updated to include latest changes from Master release. Cleaned up some code. --- Source/Includes/Helper.ahk | 10 -------- Source/Includes/Preferences File.ahk | 2 -- Source/Includes/Window.ahk | 6 ----- Source/Includes/Wordlist.ahk | 34 ++++++++-------------------- Source/TypingAid.ahk | 1 - 5 files changed, 10 insertions(+), 43 deletions(-) diff --git a/Source/Includes/Helper.ahk b/Source/Includes/Helper.ahk index dbf77de..d793810 100644 --- a/Source/Includes/Helper.ahk +++ b/Source/Includes/Helper.ahk @@ -65,10 +65,6 @@ CheckHelperWindowAuto(ActiveProcess,ActiveTitle) MaybeOpenOrCloseHelperWindowManual() { ;Called when we hit Ctrl-Shift-H - - ;make sure we are in decimal format in case ConvertWordToAscii was interrupted - IfEqual, A_FormatInteger, H - SetFormat,Integer,D global Helper_id global HelperManual @@ -113,9 +109,6 @@ MaybeCreateHelperWindow() IfNotEqual, Helper_id, Return - ;make sure we are in decimal format in case ConvertWordToAscii was interrupted - IfEqual, A_FormatInteger, H - SetFormat,Integer,D Global XY Gui, %HelperGui%:+Owner -MinimizeBox -MaximizeBox +AlwaysOnTop Gui, %HelperGui%:+LabelHelper_ @@ -140,9 +133,6 @@ Return HelperWindowClosed() { - ;make sure we are in decimal format in case ConvertWordToAscii was interrupted - IfEqual, A_FormatInteger, H - SetFormat,Integer,D global Helper_id global HelperManual IfNotEqual, Helper_id, diff --git a/Source/Includes/Preferences File.ahk b/Source/Includes/Preferences File.ahk index ddeb791..109b2aa 100644 --- a/Source/Includes/Preferences File.ahk +++ b/Source/Includes/Preferences File.ahk @@ -112,8 +112,6 @@ NumPresses=1 ; ; ;LearnMode defines whether or not the script should learn new words as you type them, either On or Off. -;Entries in the wordlist are limited to a length of 123 characters in ANSI version -;or 61 characters in Unicode version if LearnMode is On. LearnMode=On ; ; diff --git a/Source/Includes/Window.ahk b/Source/Includes/Window.ahk index a39fef8..ad66894 100644 --- a/Source/Includes/Window.ahk +++ b/Source/Includes/Window.ahk @@ -3,9 +3,6 @@ ; Timed function to detect change of focus (and remove ListBox when changing active window) Winchanged: - ;make sure we are in decimal format in case ConvertWordToAscii was interrupted - IfEqual, A_FormatInteger, H - SetFormat,Integer,D IF ( ReturnWinActive() ) { @@ -29,9 +26,6 @@ Winchanged: GetIncludedActiveWindow() { - ;make sure we are in decimal format in case ConvertWordToAscii was interrupted - IfEqual, A_FormatInteger, H - SetFormat,Integer,D global Helper_id global A_id global A_Title diff --git a/Source/Includes/Wordlist.ahk b/Source/Includes/Wordlist.ahk index 028e9f5..8de7ca8 100644 --- a/Source/Includes/Wordlist.ahk +++ b/Source/Includes/Wordlist.ahk @@ -241,8 +241,16 @@ CheckValid(Word) Return ;if Word does not contain at least one alpha character, skip out. - if ( RegExMatch(Word, "S)[a-zA-Z]") = 0 ) + IfEqual, A_IsUnicode, 1 + { + if ( RegExMatch(Word, "S)\pL") = 0 ) + { + return + } + } else if ( RegExMatch(Word, "S)[a-zA-Zà-öø-ÿÀ-ÖØ-ß]") = 0 ) + { Return + } if ( Substr(Word,1,1) = ";" ) ;If first char is ";", clear word and skip out. { @@ -281,6 +289,7 @@ DeleteWordFromList(DeleteWord) UpdateWordCount(word,SortOnly) { global + Local WhereQuery ;Word = Word to increment count for ;SortOnly = Only sort the words, don't increment the count @@ -297,29 +306,6 @@ UpdateWordCount(word,SortOnly) Return } -;------------------------------------------------------------------------ - -ConvertWordToAscii(Base,Caps) -{ -; Return the word in Hex Ascii or Unicode numbers padded to length 2 (ascii mode) or 4 (unicode mode) per character -; Capitalize the string if NoCaps is not set - global AsciiPrefix - global AsciiTrimLength - IfEqual, Caps, 1 - StringUpper, Base, Base - Critical, On - SetFormat,Integer, H - Loop, Parse, Base - { - IfEqual, A_FormatInteger, D - SetFormat, Integer, H - New .= SubStr( AsciiPrefix . SubStr(Asc(A_LoopField),3), AsciiTrimLength) - } - SetFormat,Integer,D - Critical, Off -Return New -} - ;------------------------------------------------------------------------ MaybeUpdateWordlist() diff --git a/Source/TypingAid.ahk b/Source/TypingAid.ahk index ed8b3fd..315c970 100644 --- a/Source/TypingAid.ahk +++ b/Source/TypingAid.ahk @@ -265,7 +265,6 @@ ProcessKey(chr,EndKey) ;Wait till minimum letters IF ( StrLen(Word) < wlen ) { - aWord := aWord . "," . Word CloseListBox() Return } From 065590de054488bb5785d46773daa41137b8cbdd Mon Sep 17 00:00:00 2001 From: ManiacDC Date: Thu, 13 Nov 2014 09:37:18 -0500 Subject: [PATCH 05/62] Now permanently stores the Learned Words in the SQL database, backed by a text file. Delete the .db file to rebuild from the txt file. --- Source/Includes/Wordlist.ahk | 115 +++++++++++++++++++++++------------ 1 file changed, 77 insertions(+), 38 deletions(-) diff --git a/Source/Includes/Wordlist.ahk b/Source/Includes/Wordlist.ahk index 690c140..8f11d27 100644 --- a/Source/Includes/Wordlist.ahk +++ b/Source/Includes/Wordlist.ahk @@ -13,6 +13,8 @@ ReadWordList() Local row Local WordList Local WordlistLearned + Local tableconverted + Local WordlistConverted Wordlist = %A_ScriptDir%\Wordlist.txt WordlistLearned = %A_ScriptDir%\WordlistLearned.txt @@ -27,28 +29,53 @@ ReadWordList() exitapp } - IF not wDB.Query("CREATE TEMP TABLE Words (wordindexed TEXT, word TEXT UNIQUE, count INTEGER);") - ;IF not wDB.Query("CREATE TABLE Words (wordindexed TEXT, word TEXT UNIQUE, count INTEGER);") + tableconverted := wDB.Query("SELECT tableconverted FROM LastState;") + + for each, row in WordDb.Rows { - msgbox Cannot Create Table - fatal error... - ExitApp + WordlistConverted := tableconverted[1] } - IF not wDB.Query("CREATE INDEX temp.WordIndex ON Words (wordindexed);") - ;IF not wDB.Query("CREATE INDEX WordIndex ON Words (wordindexed);") + IfNotEqual, WordlistConverted, 1 { - msgbox Cannot Create Index - fatal error... - ExitApp - } + wDB.Query("DROP TABLE Words;") + wDB.Query("DROP INDEX WordIndex;") + wDB.Query("DROP TABLE LearnedWords;") + wDB.Query("DROP TABLE LastState;") + + IF not wDB.Query("CREATE TABLE Words (wordindexed TEXT, word TEXT UNIQUE, count INTEGER);") + ;IF not wDB.Query("CREATE TABLE Words (wordindexed TEXT, word TEXT UNIQUE, count INTEGER);") + { + msgbox Cannot Create Table - fatal error... + ExitApp + } - IF not wDB.Query("CREATE TEMP TABLE LearnedWords (learnedword TEXT UNIQUE);") - ;IF not wDB.Query("CREATE TABLE LearnedWords (learnedword TEXT UNIQUE);") + IF not wDB.Query("CREATE INDEX WordIndex ON Words (wordindexed);") + ;IF not wDB.Query("CREATE INDEX WordIndex ON Words (wordindexed);") + { + msgbox Cannot Create Index - fatal error... + ExitApp + } + + IF not wDB.Query("CREATE TABLE LearnedWords (learnedword TEXT UNIQUE);") + ;IF not wDB.Query("CREATE TABLE LearnedWords (learnedword TEXT UNIQUE);") + { + MsgBox Cannot Create Table - fatal error... + ExitApp + } + + IF not wDB.Query("CREATE TABLE LastState (tableconverted INTEGER);") + ;IF not wDB.Query("CREATE TABLE LearnedWords (learnedword TEXT UNIQUE);") + { + MsgBox Cannot Create Table - fatal error... + ExitApp + } + } else { - MsgBox Cannot Create Table - fatal error... - ExitApp + wDB.Query("DELETE FROM Words WHERE count IS NULL;") } - wDB.BeginTransaction() + wDB.BeginTransaction() ;reads list of words from file FileRead, ParseWords, %Wordlist% Loop, Parse, ParseWords, `n, `r @@ -57,11 +84,14 @@ ReadWordList() { IF CheckValid(A_LoopField) { - wDB.Query("INSERT INTO Learnedwords VALUES ('" . A_LoopField . "')") + wDB.Query("INSERT INTO Learnedwords VALUES ('" . A_LoopField . "');") } } else IfEqual, A_LoopField, `;LEARNEDWORDS`; { - IfEqual, LearnMode, On + IfEqual, WordlistConverted, 1 + { + break + } Else IfEqual, LearnMode, On { TempAddToLearned=1 LegacyLearnedWords=1 ; Set Flag that we need to convert wordlist file @@ -73,32 +103,41 @@ ReadWordList() ParseWords = wDB.EndTransaction() - wDB.BeginTransaction() - ;reads list of words from file - FileRead, ParseWords, %WordlistLearned% - Loop, Parse, ParseWords, `n, `r + IfNotEqual, WordlistConverted, 1 { - IF CheckValid(A_LoopField) + SplashTextOn, 300, 50, %A_ScriptName%, Converting wordlist`n`rPlease wait... + + wDB.BeginTransaction() + ;reads list of words from file + FileRead, ParseWords, %WordlistLearned% + Loop, Parse, ParseWords, `n, `r { - wDB.Query("INSERT INTO Learnedwords VALUES ('" . A_LoopField . "')") + IF CheckValid(A_LoopField) + { + wDB.Query("INSERT INTO Learnedwords VALUES ('" . A_LoopField . "');") + } } - } - ParseWords = - wDB.EndTransaction() + ParseWords = + wDB.EndTransaction() - ;Force LearnedWordsCount to 0 as we are now processing Learned Words - LearnedWordsCount=0 + ;Force LearnedWordsCount to 0 as we are now processing Learned Words + LearnedWordsCount=0 - LearnedWordsTable := wDB.Query("SELECT learnedword FROM LearnedWords;") + LearnedWordsTable := wDB.Query("SELECT learnedword FROM LearnedWords;") - For each, row in LearnedWordsTable.Rows - { - AddWordToList(row[1],0) - } - LearnedWordsTable = + For each, row in LearnedWordsTable.Rows + { + AddWordToList(row[1],0) + } + LearnedWordsTable = - ;reverse the numbers of the word counts in memory - GoSub, ReverseWordNums + ;reverse the numbers of the word counts in memory + GoSub, ReverseWordNums + + wDB.Query("INSERT INTO LastState VALUES ('1');") + + SplashTextOff + } ;mark the wordlist as completed WordlistDone = 1 @@ -329,6 +368,9 @@ MaybeUpdateWordlist() ; Update the Learned Words IfEqual, WordListDone, 1 { + + wDB.Query("DELETE FROM Words WHERE count IS NULL;") + IfEqual, LearnMode, Off { SortWordList := wDB.Query("SELECT LearnedWord FROM LearnedWords;") @@ -366,9 +408,6 @@ MaybeUpdateWordlist() } } - wDB.Query("DROP TABLE Words;"), - wDB.Query("DROP TABLE LearnedWords;"), - wDB.Query("DROP INDEX temp.WordIndex;"), wDB.Close(), } \ No newline at end of file From 6ee7302732102cc6be6e1a7522316dcd55be625c Mon Sep 17 00:00:00 2001 From: ManiacDC Date: Fri, 14 Nov 2014 08:27:04 -0500 Subject: [PATCH 06/62] Fixed words being learned even when the count wasn't higher than LearnedCount. Fixed a regression where the wordlist would convert every time. Fixed slow Wordlist conversion and changed to a Progress bar rather than splash text. Dropped a whole table that was redundant. Fixed a bug with the LearnedWordCount population not basing off the LearnCount... was hardcoded to expect a LearnCount of 5. --- Source/Includes/Wordlist.ahk | 69 ++++++++++++------------------------ 1 file changed, 23 insertions(+), 46 deletions(-) diff --git a/Source/Includes/Wordlist.ahk b/Source/Includes/Wordlist.ahk index 8f11d27..61b5b16 100644 --- a/Source/Includes/Wordlist.ahk +++ b/Source/Includes/Wordlist.ahk @@ -31,9 +31,9 @@ ReadWordList() tableconverted := wDB.Query("SELECT tableconverted FROM LastState;") - for each, row in WordDb.Rows + for each, row in tableconverted.Rows { - WordlistConverted := tableconverted[1] + WordlistConverted := row[1] } IfNotEqual, WordlistConverted, 1 @@ -57,13 +57,6 @@ ReadWordList() ExitApp } - IF not wDB.Query("CREATE TABLE LearnedWords (learnedword TEXT UNIQUE);") - ;IF not wDB.Query("CREATE TABLE LearnedWords (learnedword TEXT UNIQUE);") - { - MsgBox Cannot Create Table - fatal error... - ExitApp - } - IF not wDB.Query("CREATE TABLE LastState (tableconverted INTEGER);") ;IF not wDB.Query("CREATE TABLE LearnedWords (learnedword TEXT UNIQUE);") { @@ -73,6 +66,7 @@ ReadWordList() } else { wDB.Query("DELETE FROM Words WHERE count IS NULL;") + wDB.Query("DELETE FROM Words WHERE count < " . LearnCount . ";") } wDB.BeginTransaction() @@ -80,20 +74,14 @@ ReadWordList() FileRead, ParseWords, %Wordlist% Loop, Parse, ParseWords, `n, `r { - IfEqual, TempAddToLearned, 1 - { - IF CheckValid(A_LoopField) - { - wDB.Query("INSERT INTO Learnedwords VALUES ('" . A_LoopField . "');") - } - } else IfEqual, A_LoopField, `;LEARNEDWORDS`; + IfEqual, A_LoopField, `;LEARNEDWORDS`; { IfEqual, WordlistConverted, 1 { break } Else IfEqual, LearnMode, On { - TempAddToLearned=1 + LearnedWordsCount=0 LegacyLearnedWords=1 ; Set Flag that we need to convert wordlist file } } else { @@ -105,38 +93,33 @@ ReadWordList() IfNotEqual, WordlistConverted, 1 { - SplashTextOn, 300, 50, %A_ScriptName%, Converting wordlist`n`rPlease wait... + Progress, M, Please wait..., Converting wordlist, %A_ScriptName% + + ;Force LearnedWordsCount to 0 if not already set as we are now processing Learned Words + IfEqual, LearnedWordsCount, + { + LearnedWordsCount=0 + } wDB.BeginTransaction() ;reads list of words from file FileRead, ParseWords, %WordlistLearned% Loop, Parse, ParseWords, `n, `r { - IF CheckValid(A_LoopField) - { - wDB.Query("INSERT INTO Learnedwords VALUES ('" . A_LoopField . "');") - } + + AddWordToList(A_LoopField,0) } ParseWords = wDB.EndTransaction() - - ;Force LearnedWordsCount to 0 as we are now processing Learned Words - LearnedWordsCount=0 - - LearnedWordsTable := wDB.Query("SELECT learnedword FROM LearnedWords;") - For each, row in LearnedWordsTable.Rows - { - AddWordToList(row[1],0) - } - LearnedWordsTable = + Progress, 50, Please wait..., Converting wordlist, %A_ScriptName% ;reverse the numbers of the word counts in memory GoSub, ReverseWordNums wDB.Query("INSERT INTO LastState VALUES ('1');") - SplashTextOff + Progress, Off } ;mark the wordlist as completed @@ -153,9 +136,9 @@ ReverseWordNums: IfEqual, LearnMode, Off, Return -LearnedWordsCount+=4 +LearnedWordsCount+= (LearnCount - 1) -LearnedWordsTable := wDB.Query("SELECT learnedWord FROM LearnedWords;") +LearnedWordsTable := wDB.Query("SELECT word FROM Words WHERE count IS NOT NULL;") wDB.BeginTransaction() For each, row in LearnedWordsTable.Rows @@ -248,7 +231,6 @@ AddWordToList(AddWord,ForceCountNewOnly) IfEqual, LearnMode, On { wDB.Query("INSERT INTO words VALUES ('" . AddWordIndex . "','" . AddWord . "','" . CountValue . "');") - wDB.Query("INSERT INTO LearnedWords VALUES ('" . AddWord . "');") } else { wDB.Query("INSERT INTO words (wordindexed,word) VALUES ('" . AddWordIndex . "','" . AddWord . "');") } @@ -325,7 +307,6 @@ DeleteWordFromList(DeleteWord) IfNotEqual, LearnMode, On Return - wDB.Query("DELETE FROM LearnedWords WHERE learnedword = '" . DeleteWord . "';") wDB.Query("DELETE FROM words WHERE word = '" . DeleteWord . "';") Return @@ -361,7 +342,7 @@ MaybeUpdateWordlist() local TempWordList local SortWordList - local LearnedwordsPos + local LearnedWordsPos local ParseWords Local each Local row @@ -370,20 +351,16 @@ MaybeUpdateWordlist() { wDB.Query("DELETE FROM Words WHERE count IS NULL;") + wDB.Query("DELETE FROM Words WHERE count < " . LearnCount . ";") - IfEqual, LearnMode, Off - { - SortWordList := wDB.Query("SELECT LearnedWord FROM LearnedWords;") - } else { - SortWordList := wDB.Query("SELECT LearnedWord FROM LearnedWords LEFT JOIN Words ON LearnedWords.LearnedWord = Words.Word WHERE Words.count NOT NULL ORDER BY Words.count DESC;") - } + SortWordList := wDB.Query("SELECT Word FROM Words ORDER BY count DESC;") for each, row in SortWordList.Rows { TempWordList .= row[1] . "`r`n" } - IfNotEqual, TempWordList, + If ( SortWordList.Count() > 0 ) { StringTrimRight, TempWordList, TempWordList, 2 @@ -397,7 +374,7 @@ MaybeUpdateWordlist() { TempWordList = FileRead, ParseWords, %A_ScriptDir%\Wordlist.txt - LearnedwordsPos := InStr(ParseWords, "`;LEARNEDWORDS`;",true,1) ;Check for Learned Words + LearnedWordsPos := InStr(ParseWords, "`;LEARNEDWORDS`;",true,1) ;Check for Learned Words TempWordList := SubStr(ParseWords, 1, LearnedwordsPos - 1) ;Grab all non-learned words out of list ParseWords = FileDelete, %A_ScriptDir%\Temp_Wordlist.txt From c8aef823e41d7e26411040af4a0390fa8979ae76 Mon Sep 17 00:00:00 2001 From: ManiacDC Date: Mon, 17 Nov 2014 08:08:59 -0500 Subject: [PATCH 07/62] Code cleanup --- Source/Includes/Wordlist.ahk | 51 ++++++++++++++++++------------------ Source/TypingAid.ahk | 28 +------------------- 2 files changed, 27 insertions(+), 52 deletions(-) diff --git a/Source/Includes/Wordlist.ahk b/Source/Includes/Wordlist.ahk index 61b5b16..f5d7192 100644 --- a/Source/Includes/Wordlist.ahk +++ b/Source/Includes/Wordlist.ahk @@ -7,7 +7,6 @@ ReadWordList() WordListDone = 0 Local ParseWords - Local LearnedWordsTable Local TempAddToLearned Local each Local row @@ -40,25 +39,21 @@ ReadWordList() { wDB.Query("DROP TABLE Words;") wDB.Query("DROP INDEX WordIndex;") - wDB.Query("DROP TABLE LearnedWords;") wDB.Query("DROP TABLE LastState;") IF not wDB.Query("CREATE TABLE Words (wordindexed TEXT, word TEXT UNIQUE, count INTEGER);") - ;IF not wDB.Query("CREATE TABLE Words (wordindexed TEXT, word TEXT UNIQUE, count INTEGER);") { msgbox Cannot Create Table - fatal error... ExitApp } IF not wDB.Query("CREATE INDEX WordIndex ON Words (wordindexed);") - ;IF not wDB.Query("CREATE INDEX WordIndex ON Words (wordindexed);") { msgbox Cannot Create Index - fatal error... ExitApp } IF not wDB.Query("CREATE TABLE LastState (tableconverted INTEGER);") - ;IF not wDB.Query("CREATE TABLE LearnedWords (learnedword TEXT UNIQUE);") { MsgBox Cannot Create Table - fatal error... ExitApp @@ -115,7 +110,7 @@ ReadWordList() Progress, 50, Please wait..., Converting wordlist, %A_ScriptName% ;reverse the numbers of the word counts in memory - GoSub, ReverseWordNums + ReverseWordNums() wDB.Query("INSERT INTO LastState VALUES ('1');") @@ -128,32 +123,38 @@ ReadWordList() } ;------------------------------------------------------------------------ + +ReverseWordNums() +{ + ; This function will reverse the read numbers since now we know the total number of words + Global + Local LearnedWordsTable + Local each + Local row + Local WhereQuery -; This sub will reverse the read numbers since now we know the total number of words -ReverseWordNums: -;We don't need to deal with any counters if LearnMode is off -IfEqual, LearnMode, Off, - Return + ;We don't need to deal with any counters if LearnMode is off + IfEqual, LearnMode, Off, + Return -LearnedWordsCount+= (LearnCount - 1) + LearnedWordsCount+= (LearnCount - 1) -LearnedWordsTable := wDB.Query("SELECT word FROM Words WHERE count IS NOT NULL;") + LearnedWordsTable := wDB.Query("SELECT word FROM Words WHERE count IS NOT NULL;") -wDB.BeginTransaction() -For each, row in LearnedWordsTable.Rows -{ - WhereQuery := "WHERE word = '" . row[1] . "'" - wDB.Query("UPDATE words SET count = (SELECT " . LearnedWordsCount . " - count FROM words " . WhereQuery . ") " . WhereQuery . ";") -} -wDB.EndTransaction() + wDB.BeginTransaction() + For each, row in LearnedWordsTable.Rows + { + WhereQuery := "WHERE word = '" . row[1] . "'" + wDB.Query("UPDATE words SET count = (SELECT " . LearnedWordsCount . " - count FROM words " . WhereQuery . ") " . WhereQuery . ";") + } + wDB.EndTransaction() -each= -row= -LearnedWordsTable = -LearnedWordsCount = + LearnedWordsCount = -Return + Return + +} ;------------------------------------------------------------------------ diff --git a/Source/TypingAid.ahk b/Source/TypingAid.ahk index 96aa023..4ab13eb 100644 --- a/Source/TypingAid.ahk +++ b/Source/TypingAid.ahk @@ -342,9 +342,6 @@ RecomputeMatches() ;------------------------------------------------------------------------ ~LButton:: -;make sure we are in decimal format in case ConvertWordToAscii was interrupted -IfEqual, A_FormatInteger, H - SetFormat,Integer,D ; Update last click position in case Caret is not detectable ; and update the Last Window Clicked in MouseGetPos, MouseX, MouseY, MouseWin_ID @@ -371,10 +368,6 @@ CheckForCaretMove: ;If we aren't using the DetectMouseClickMoveScheme, skip out IfNotEqual, DetectMouseClickMove, On Return - - ;make sure we are in decimal format in case ConvertWordToAscii was interrupted - IfEqual, A_FormatInteger, H - SetFormat,Integer,D IfEqual, MouseButtonClick, LButton { @@ -488,9 +481,6 @@ Return CheckWord(Key) { global - ;make sure we are in decimal format in case ConvertWordToAscii was interrupted - IfEqual, A_FormatInteger, H - SetFormat,Integer,D Local ATitle Local WordIndex Local KeyAgain @@ -611,9 +601,6 @@ CheckWord(Key) EvaluateUpDown(Key) { global - ;make sure we are in decimal format in case ConvertWordToAscii was interrupted - IfEqual, A_FormatInteger, H - SetFormat,Integer,D IfEqual, ArrowKeyMethod, Off { SendKey(Key) @@ -803,11 +790,7 @@ ReturnLineWrong() ;------------------------------------------------------------------------ AddSelectedWordToList() -{ - ;make sure we are in decimal format in case ConvertWordToAscii was interrupted - IfEqual, A_FormatInteger, H - SetFormat,Integer,D - +{ ClipboardSave := ClipboardAll Clipboard = Sleep, 100 @@ -823,9 +806,6 @@ AddSelectedWordToList() DeleteSelectedWordFromList() { global - ;make sure we are in decimal format in case ConvertWordToAscii was interrupted - IfEqual, A_FormatInteger, H - SetFormat,Integer,D IfNotEqual, singlematch%MatchPos%, ;only continue if singlematch is not empty { @@ -841,9 +821,6 @@ DeleteSelectedWordFromList() ; This is to blank all vars related to matches, ListBox and (optionally) word clearallvars: - ;make sure we are in decimal format in case ConvertWordToAscii was interrupted - IfEqual, A_FormatInteger, H - SetFormat,Integer,D CloseListBox() Ifequal,clearword,1 { @@ -937,9 +914,6 @@ MaybeFixFileEncoding(File,Encoding) ;------------------------------------------------------------------------ SaveScript: -;make sure we are in decimal format in case ConvertWordToAscii was interrupted -IfEqual, A_FormatInteger, H - SetFormat,Integer,D ; Close the ListBox if it's open CloseListBox() From 3228497baf92167c84a5fbabb766352ec5d8e263 Mon Sep 17 00:00:00 2001 From: ManiacDC Date: Mon, 17 Nov 2014 12:46:58 -0500 Subject: [PATCH 08/62] Added weighting based on number of characters left to type. --- Source/TypingAid.ahk | 38 ++++++++++++++++++++++++++++---------- 1 file changed, 28 insertions(+), 10 deletions(-) diff --git a/Source/TypingAid.ahk b/Source/TypingAid.ahk index 4ab13eb..6cf7ea3 100644 --- a/Source/TypingAid.ahk +++ b/Source/TypingAid.ahk @@ -275,14 +275,19 @@ RecomputeMatches() { ; This function will take the given word, and will recompile the list of matches and redisplay the wordlist. global - + Local each + Local LimitTotalMatches Local Matches + Local Normalize + Local NormalizeTable + Local OrderByQuery Local SuppressMatchingWordQuery - Local each Local row Local ValueType Local Values + Local WhereQuery Local WordMatch + Local WordLen SavePriorMatchPosition() @@ -295,6 +300,8 @@ RecomputeMatches() IfLess, ListBoxRows, 10 LimitTotalMatches = %ListBoxRows% else LimitTotalMatches = 10 + } else { + LimitTotalMatches = 200 } StringUpper, WordMatch, Word @@ -309,16 +316,27 @@ RecomputeMatches() } } - Matches := wDB.Query("SELECT word FROM Words WHERE wordindexed GLOB '" . WordMatch . "*' " . SuppressMatchingWordQuery . " ORDER BY CASE WHEN count IS NULL then ROWID else 'z' end, count DESC, Word LIMIT 200;") + WhereQuery := " WHERE wordindexed GLOB '" . WordMatch . "*' " . SuppressMatchingWordQuery - for each, row in Matches.Rows + NormalizeTable := wDB.Query("SELECT min(count) AS normalize FROM Words" . WhereQuery . "AND count IS NOT NULL LIMIT " . LimitTotalMatches . ";") + + for each, row in NormalizeTable.Rows { - IfEqual, ArrowKeyMethod, Off - { - IfGreaterOrEqual, number, %LimitTotalMatches% - break - } - + Normalize := row[1] + } + + IfEqual, Normalize, + { + Normalize := 0 + } + + WordLen := StrLen(Word) + OrderByQuery := " ORDER BY CASE WHEN count IS NULL then ROWID else 'z' end, CASE WHEN count IS NOT NULL then ( (count - " . Normalize . ") * ( 1 - ( '0.75' / (LENGTH(word) - " . WordLen . ")))) end DESC, Word" + + Matches := wDB.Query("SELECT word FROM Words" . WhereQuery . OrderByQuery . " LIMIT " . LimitTotalMatches . ";") + + for each, row in Matches.Rows + { number++ singlematch := row[1] singlematch%number% = %singlematch% From d5bd9ffbebcd7ef7bfa5726a95c90b9f4d90e2c6 Mon Sep 17 00:00:00 2001 From: ManiacDC Date: Mon, 24 Nov 2014 07:36:55 -0500 Subject: [PATCH 09/62] Fixed casing --- Source/TypingAid.ahk | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Source/TypingAid.ahk b/Source/TypingAid.ahk index 6cf7ea3..04c6d3d 100644 --- a/Source/TypingAid.ahk +++ b/Source/TypingAid.ahk @@ -318,7 +318,7 @@ RecomputeMatches() WhereQuery := " WHERE wordindexed GLOB '" . WordMatch . "*' " . SuppressMatchingWordQuery - NormalizeTable := wDB.Query("SELECT min(count) AS normalize FROM Words" . WhereQuery . "AND count IS NOT NULL LIMIT " . LimitTotalMatches . ";") + NormalizeTable := wDB.Query("SELECT MIN(count) AS normalize FROM Words" . WhereQuery . "AND count IS NOT NULL LIMIT " . LimitTotalMatches . ";") for each, row in NormalizeTable.Rows { From 37ae8b8c7b966762b3bb17353cfc43e67c53c671 Mon Sep 17 00:00:00 2001 From: ManiacDC Date: Mon, 24 Nov 2014 07:52:33 -0500 Subject: [PATCH 10/62] Delete LICENSE - changing to GPL v3. --- LICENSE | 340 -------------------------------------------------------- 1 file changed, 340 deletions(-) delete mode 100644 LICENSE diff --git a/LICENSE b/LICENSE deleted file mode 100644 index d6a9326..0000000 --- a/LICENSE +++ /dev/null @@ -1,340 +0,0 @@ -GNU GENERAL PUBLIC LICENSE - Version 2, June 1991 - - Copyright (C) 1989, 1991 Free Software Foundation, Inc., - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - Everyone is permitted to copy and distribute verbatim copies - of this license document, but changing it is not allowed. - - Preamble - - The licenses for most software are designed to take away your -freedom to share and change it. By contrast, the GNU General Public -License is intended to guarantee your freedom to share and change free -software--to make sure the software is free for all its users. This -General Public License applies to most of the Free Software -Foundation's software and to any other program whose authors commit to -using it. (Some other Free Software Foundation software is covered by -the GNU Lesser General Public License instead.) You can apply it to -your programs, too. - - When we speak of free software, we are referring to freedom, not -price. Our General Public Licenses are designed to make sure that you -have the freedom to distribute copies of free software (and charge for -this service if you wish), that you receive source code or can get it -if you want it, that you can change the software or use pieces of it -in new free programs; and that you know you can do these things. - - To protect your rights, we need to make restrictions that forbid -anyone to deny you these rights or to ask you to surrender the rights. -These restrictions translate to certain responsibilities for you if you -distribute copies of the software, or if you modify it. - - For example, if you distribute copies of such a program, whether -gratis or for a fee, you must give the recipients all the rights that -you have. You must make sure that they, too, receive or can get the -source code. And you must show them these terms so they know their -rights. - - We protect your rights with two steps: (1) copyright the software, and -(2) offer you this license which gives you legal permission to copy, -distribute and/or modify the software. - - Also, for each author's protection and ours, we want to make certain -that everyone understands that there is no warranty for this free -software. If the software is modified by someone else and passed on, we -want its recipients to know that what they have is not the original, so -that any problems introduced by others will not reflect on the original -authors' reputations. - - Finally, any free program is threatened constantly by software -patents. We wish to avoid the danger that redistributors of a free -program will individually obtain patent licenses, in effect making the -program proprietary. To prevent this, we have made it clear that any -patent must be licensed for everyone's free use or not licensed at all. - - The precise terms and conditions for copying, distribution and -modification follow. - - GNU GENERAL PUBLIC LICENSE - TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION - - 0. This License applies to any program or other work which contains -a notice placed by the copyright holder saying it may be distributed -under the terms of this General Public License. The "Program", below, -refers to any such program or work, and a "work based on the Program" -means either the Program or any derivative work under copyright law: -that is to say, a work containing the Program or a portion of it, -either verbatim or with modifications and/or translated into another -language. (Hereinafter, translation is included without limitation in -the term "modification".) Each licensee is addressed as "you". - -Activities other than copying, distribution and modification are not -covered by this License; they are outside its scope. The act of -running the Program is not restricted, and the output from the Program -is covered only if its contents constitute a work based on the -Program (independent of having been made by running the Program). -Whether that is true depends on what the Program does. - - 1. You may copy and distribute verbatim copies of the Program's -source code as you receive it, in any medium, provided that you -conspicuously and appropriately publish on each copy an appropriate -copyright notice and disclaimer of warranty; keep intact all the -notices that refer to this License and to the absence of any warranty; -and give any other recipients of the Program a copy of this License -along with the Program. - -You may charge a fee for the physical act of transferring a copy, and -you may at your option offer warranty protection in exchange for a fee. - - 2. You may modify your copy or copies of the Program or any portion -of it, thus forming a work based on the Program, and copy and -distribute such modifications or work under the terms of Section 1 -above, provided that you also meet all of these conditions: - - a) You must cause the modified files to carry prominent notices - stating that you changed the files and the date of any change. - - b) You must cause any work that you distribute or publish, that in - whole or in part contains or is derived from the Program or any - part thereof, to be licensed as a whole at no charge to all third - parties under the terms of this License. - - c) If the modified program normally reads commands interactively - when run, you must cause it, when started running for such - interactive use in the most ordinary way, to print or display an - announcement including an appropriate copyright notice and a - notice that there is no warranty (or else, saying that you provide - a warranty) and that users may redistribute the program under - these conditions, and telling the user how to view a copy of this - License. (Exception: if the Program itself is interactive but - does not normally print such an announcement, your work based on - the Program is not required to print an announcement.) - -These requirements apply to the modified work as a whole. If -identifiable sections of that work are not derived from the Program, -and can be reasonably considered independent and separate works in -themselves, then this License, and its terms, do not apply to those -sections when you distribute them as separate works. But when you -distribute the same sections as part of a whole which is a work based -on the Program, the distribution of the whole must be on the terms of -this License, whose permissions for other licensees extend to the -entire whole, and thus to each and every part regardless of who wrote it. - -Thus, it is not the intent of this section to claim rights or contest -your rights to work written entirely by you; rather, the intent is to -exercise the right to control the distribution of derivative or -collective works based on the Program. - -In addition, mere aggregation of another work not based on the Program -with the Program (or with a work based on the Program) on a volume of -a storage or distribution medium does not bring the other work under -the scope of this License. - - 3. You may copy and distribute the Program (or a work based on it, -under Section 2) in object code or executable form under the terms of -Sections 1 and 2 above provided that you also do one of the following: - - a) Accompany it with the complete corresponding machine-readable - source code, which must be distributed under the terms of Sections - 1 and 2 above on a medium customarily used for software interchange; or, - - b) Accompany it with a written offer, valid for at least three - years, to give any third party, for a charge no more than your - cost of physically performing source distribution, a complete - machine-readable copy of the corresponding source code, to be - distributed under the terms of Sections 1 and 2 above on a medium - customarily used for software interchange; or, - - c) Accompany it with the information you received as to the offer - to distribute corresponding source code. (This alternative is - allowed only for noncommercial distribution and only if you - received the program in object code or executable form with such - an offer, in accord with Subsection b above.) - -The source code for a work means the preferred form of the work for -making modifications to it. For an executable work, complete source -code means all the source code for all modules it contains, plus any -associated interface definition files, plus the scripts used to -control compilation and installation of the executable. However, as a -special exception, the source code distributed need not include -anything that is normally distributed (in either source or binary -form) with the major components (compiler, kernel, and so on) of the -operating system on which the executable runs, unless that component -itself accompanies the executable. - -If distribution of executable or object code is made by offering -access to copy from a designated place, then offering equivalent -access to copy the source code from the same place counts as -distribution of the source code, even though third parties are not -compelled to copy the source along with the object code. - - 4. You may not copy, modify, sublicense, or distribute the Program -except as expressly provided under this License. Any attempt -otherwise to copy, modify, sublicense or distribute the Program is -void, and will automatically terminate your rights under this License. -However, parties who have received copies, or rights, from you under -this License will not have their licenses terminated so long as such -parties remain in full compliance. - - 5. You are not required to accept this License, since you have not -signed it. However, nothing else grants you permission to modify or -distribute the Program or its derivative works. These actions are -prohibited by law if you do not accept this License. Therefore, by -modifying or distributing the Program (or any work based on the -Program), you indicate your acceptance of this License to do so, and -all its terms and conditions for copying, distributing or modifying -the Program or works based on it. - - 6. Each time you redistribute the Program (or any work based on the -Program), the recipient automatically receives a license from the -original licensor to copy, distribute or modify the Program subject to -these terms and conditions. You may not impose any further -restrictions on the recipients' exercise of the rights granted herein. -You are not responsible for enforcing compliance by third parties to -this License. - - 7. If, as a consequence of a court judgment or allegation of patent -infringement or for any other reason (not limited to patent issues), -conditions are imposed on you (whether by court order, agreement or -otherwise) that contradict the conditions of this License, they do not -excuse you from the conditions of this License. If you cannot -distribute so as to satisfy simultaneously your obligations under this -License and any other pertinent obligations, then as a consequence you -may not distribute the Program at all. For example, if a patent -license would not permit royalty-free redistribution of the Program by -all those who receive copies directly or indirectly through you, then -the only way you could satisfy both it and this License would be to -refrain entirely from distribution of the Program. - -If any portion of this section is held invalid or unenforceable under -any particular circumstance, the balance of the section is intended to -apply and the section as a whole is intended to apply in other -circumstances. - -It is not the purpose of this section to induce you to infringe any -patents or other property right claims or to contest validity of any -such claims; this section has the sole purpose of protecting the -integrity of the free software distribution system, which is -implemented by public license practices. Many people have made -generous contributions to the wide range of software distributed -through that system in reliance on consistent application of that -system; it is up to the author/donor to decide if he or she is willing -to distribute software through any other system and a licensee cannot -impose that choice. - -This section is intended to make thoroughly clear what is believed to -be a consequence of the rest of this License. - - 8. If the distribution and/or use of the Program is restricted in -certain countries either by patents or by copyrighted interfaces, the -original copyright holder who places the Program under this License -may add an explicit geographical distribution limitation excluding -those countries, so that distribution is permitted only in or among -countries not thus excluded. In such case, this License incorporates -the limitation as if written in the body of this License. - - 9. The Free Software Foundation may publish revised and/or new versions -of the General Public License from time to time. Such new versions will -be similar in spirit to the present version, but may differ in detail to -address new problems or concerns. - -Each version is given a distinguishing version number. If the Program -specifies a version number of this License which applies to it and "any -later version", you have the option of following the terms and conditions -either of that version or of any later version published by the Free -Software Foundation. If the Program does not specify a version number of -this License, you may choose any version ever published by the Free Software -Foundation. - - 10. If you wish to incorporate parts of the Program into other free -programs whose distribution conditions are different, write to the author -to ask for permission. For software which is copyrighted by the Free -Software Foundation, write to the Free Software Foundation; we sometimes -make exceptions for this. Our decision will be guided by the two goals -of preserving the free status of all derivatives of our free software and -of promoting the sharing and reuse of software generally. - - NO WARRANTY - - 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY -FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN -OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES -PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED -OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF -MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS -TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE -PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, -REPAIR OR CORRECTION. - - 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING -WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR -REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, -INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING -OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED -TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY -YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER -PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE -POSSIBILITY OF SUCH DAMAGES. - - END OF TERMS AND CONDITIONS - - How to Apply These Terms to Your New Programs - - If you develop a new program, and you want it to be of the greatest -possible use to the public, the best way to achieve this is to make it -free software which everyone can redistribute and change under these terms. - - To do so, attach the following notices to the program. It is safest -to attach them to the start of each source file to most effectively -convey the exclusion of warranty; and each file should have at least -the "copyright" line and a pointer to where the full notice is found. - - {description} - Copyright (C) {year} {fullname} - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License along - with this program; if not, write to the Free Software Foundation, Inc., - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - -Also add information on how to contact you by electronic and paper mail. - -If the program is interactive, make it output a short notice like this -when it starts in an interactive mode: - - Gnomovision version 69, Copyright (C) year name of author - Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. - This is free software, and you are welcome to redistribute it - under certain conditions; type `show c' for details. - -The hypothetical commands `show w' and `show c' should show the appropriate -parts of the General Public License. Of course, the commands you use may -be called something other than `show w' and `show c'; they could even be -mouse-clicks or menu items--whatever suits your program. - -You should also get your employer (if you work as a programmer) or your -school, if any, to sign a "copyright disclaimer" for the program, if -necessary. Here is a sample; alter the names: - - Yoyodyne, Inc., hereby disclaims all copyright interest in the program - `Gnomovision' (which makes passes at compilers) written by James Hacker. - - {signature of Ty Coon}, 1 April 1989 - Ty Coon, President of Vice - -This General Public License does not permit incorporating your program into -proprietary programs. If your program is a subroutine library, you may -consider it more useful to permit linking proprietary applications with the -library. If this is what you want to do, use the GNU Lesser General -Public License instead of this License. - From e3ac87b52d5721cd9771144d1068b8a969623369 Mon Sep 17 00:00:00 2001 From: ManiacDC Date: Mon, 24 Nov 2014 07:56:08 -0500 Subject: [PATCH 11/62] Create LICENSE - GPL v3 Needed for compatibility with the SQL interface used in TypingAid. --- LICENSE | 674 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 674 insertions(+) create mode 100644 LICENSE diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..ef7e7ef --- /dev/null +++ b/LICENSE @@ -0,0 +1,674 @@ +GNU GENERAL PUBLIC LICENSE + Version 3, 29 June 2007 + + Copyright (C) 2007 Free Software Foundation, Inc. + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The GNU General Public License is a free, copyleft license for +software and other kinds of works. + + The licenses for most software and other practical works are designed +to take away your freedom to share and change the works. By contrast, +the GNU General Public License is intended to guarantee your freedom to +share and change all versions of a program--to make sure it remains free +software for all its users. We, the Free Software Foundation, use the +GNU General Public License for most of our software; it applies also to +any other work released this way by its authors. You can apply it to +your programs, too. + + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +them if you wish), that you receive source code or can get it if you +want it, that you can change the software or use pieces of it in new +free programs, and that you know you can do these things. + + To protect your rights, we need to prevent others from denying you +these rights or asking you to surrender the rights. Therefore, you have +certain responsibilities if you distribute copies of the software, or if +you modify it: responsibilities to respect the freedom of others. + + For example, if you distribute copies of such a program, whether +gratis or for a fee, you must pass on to the recipients the same +freedoms that you received. You must make sure that they, too, receive +or can get the source code. And you must show them these terms so they +know their rights. + + Developers that use the GNU GPL protect your rights with two steps: +(1) assert copyright on the software, and (2) offer you this License +giving you legal permission to copy, distribute and/or modify it. + + For the developers' and authors' protection, the GPL clearly explains +that there is no warranty for this free software. For both users' and +authors' sake, the GPL requires that modified versions be marked as +changed, so that their problems will not be attributed erroneously to +authors of previous versions. + + Some devices are designed to deny users access to install or run +modified versions of the software inside them, although the manufacturer +can do so. This is fundamentally incompatible with the aim of +protecting users' freedom to change the software. The systematic +pattern of such abuse occurs in the area of products for individuals to +use, which is precisely where it is most unacceptable. Therefore, we +have designed this version of the GPL to prohibit the practice for those +products. If such problems arise substantially in other domains, we +stand ready to extend this provision to those domains in future versions +of the GPL, as needed to protect the freedom of users. + + Finally, every program is threatened constantly by software patents. +States should not allow patents to restrict development and use of +software on general-purpose computers, but in those that do, we wish to +avoid the special danger that patents applied to a free program could +make it effectively proprietary. To prevent this, the GPL assures that +patents cannot be used to render the program non-free. + + The precise terms and conditions for copying, distribution and +modification follow. + + TERMS AND CONDITIONS + + 0. Definitions. + + "This License" refers to version 3 of the GNU General Public License. + + "Copyright" also means copyright-like laws that apply to other kinds of +works, such as semiconductor masks. + + "The Program" refers to any copyrightable work licensed under this +License. Each licensee is addressed as "you". "Licensees" and +"recipients" may be individuals or organizations. + + To "modify" a work means to copy from or adapt all or part of the work +in a fashion requiring copyright permission, other than the making of an +exact copy. The resulting work is called a "modified version" of the +earlier work or a work "based on" the earlier work. + + A "covered work" means either the unmodified Program or a work based +on the Program. + + To "propagate" a work means to do anything with it that, without +permission, would make you directly or secondarily liable for +infringement under applicable copyright law, except executing it on a +computer or modifying a private copy. Propagation includes copying, +distribution (with or without modification), making available to the +public, and in some countries other activities as well. + + To "convey" a work means any kind of propagation that enables other +parties to make or receive copies. Mere interaction with a user through +a computer network, with no transfer of a copy, is not conveying. + + An interactive user interface displays "Appropriate Legal Notices" +to the extent that it includes a convenient and prominently visible +feature that (1) displays an appropriate copyright notice, and (2) +tells the user that there is no warranty for the work (except to the +extent that warranties are provided), that licensees may convey the +work under this License, and how to view a copy of this License. If +the interface presents a list of user commands or options, such as a +menu, a prominent item in the list meets this criterion. + + 1. Source Code. + + The "source code" for a work means the preferred form of the work +for making modifications to it. "Object code" means any non-source +form of a work. + + A "Standard Interface" means an interface that either is an official +standard defined by a recognized standards body, or, in the case of +interfaces specified for a particular programming language, one that +is widely used among developers working in that language. + + The "System Libraries" of an executable work include anything, other +than the work as a whole, that (a) is included in the normal form of +packaging a Major Component, but which is not part of that Major +Component, and (b) serves only to enable use of the work with that +Major Component, or to implement a Standard Interface for which an +implementation is available to the public in source code form. A +"Major Component", in this context, means a major essential component +(kernel, window system, and so on) of the specific operating system +(if any) on which the executable work runs, or a compiler used to +produce the work, or an object code interpreter used to run it. + + The "Corresponding Source" for a work in object code form means all +the source code needed to generate, install, and (for an executable +work) run the object code and to modify the work, including scripts to +control those activities. However, it does not include the work's +System Libraries, or general-purpose tools or generally available free +programs which are used unmodified in performing those activities but +which are not part of the work. For example, Corresponding Source +includes interface definition files associated with source files for +the work, and the source code for shared libraries and dynamically +linked subprograms that the work is specifically designed to require, +such as by intimate data communication or control flow between those +subprograms and other parts of the work. + + The Corresponding Source need not include anything that users +can regenerate automatically from other parts of the Corresponding +Source. + + The Corresponding Source for a work in source code form is that +same work. + + 2. Basic Permissions. + + All rights granted under this License are granted for the term of +copyright on the Program, and are irrevocable provided the stated +conditions are met. This License explicitly affirms your unlimited +permission to run the unmodified Program. The output from running a +covered work is covered by this License only if the output, given its +content, constitutes a covered work. This License acknowledges your +rights of fair use or other equivalent, as provided by copyright law. + + You may make, run and propagate covered works that you do not +convey, without conditions so long as your license otherwise remains +in force. You may convey covered works to others for the sole purpose +of having them make modifications exclusively for you, or provide you +with facilities for running those works, provided that you comply with +the terms of this License in conveying all material for which you do +not control copyright. Those thus making or running the covered works +for you must do so exclusively on your behalf, under your direction +and control, on terms that prohibit them from making any copies of +your copyrighted material outside their relationship with you. + + Conveying under any other circumstances is permitted solely under +the conditions stated below. Sublicensing is not allowed; section 10 +makes it unnecessary. + + 3. Protecting Users' Legal Rights From Anti-Circumvention Law. + + No covered work shall be deemed part of an effective technological +measure under any applicable law fulfilling obligations under article +11 of the WIPO copyright treaty adopted on 20 December 1996, or +similar laws prohibiting or restricting circumvention of such +measures. + + When you convey a covered work, you waive any legal power to forbid +circumvention of technological measures to the extent such circumvention +is effected by exercising rights under this License with respect to +the covered work, and you disclaim any intention to limit operation or +modification of the work as a means of enforcing, against the work's +users, your or third parties' legal rights to forbid circumvention of +technological measures. + + 4. Conveying Verbatim Copies. + + You may convey verbatim copies of the Program's source code as you +receive it, in any medium, provided that you conspicuously and +appropriately publish on each copy an appropriate copyright notice; +keep intact all notices stating that this License and any +non-permissive terms added in accord with section 7 apply to the code; +keep intact all notices of the absence of any warranty; and give all +recipients a copy of this License along with the Program. + + You may charge any price or no price for each copy that you convey, +and you may offer support or warranty protection for a fee. + + 5. Conveying Modified Source Versions. + + You may convey a work based on the Program, or the modifications to +produce it from the Program, in the form of source code under the +terms of section 4, provided that you also meet all of these conditions: + + a) The work must carry prominent notices stating that you modified + it, and giving a relevant date. + + b) The work must carry prominent notices stating that it is + released under this License and any conditions added under section + 7. This requirement modifies the requirement in section 4 to + "keep intact all notices". + + c) You must license the entire work, as a whole, under this + License to anyone who comes into possession of a copy. This + License will therefore apply, along with any applicable section 7 + additional terms, to the whole of the work, and all its parts, + regardless of how they are packaged. This License gives no + permission to license the work in any other way, but it does not + invalidate such permission if you have separately received it. + + d) If the work has interactive user interfaces, each must display + Appropriate Legal Notices; however, if the Program has interactive + interfaces that do not display Appropriate Legal Notices, your + work need not make them do so. + + A compilation of a covered work with other separate and independent +works, which are not by their nature extensions of the covered work, +and which are not combined with it such as to form a larger program, +in or on a volume of a storage or distribution medium, is called an +"aggregate" if the compilation and its resulting copyright are not +used to limit the access or legal rights of the compilation's users +beyond what the individual works permit. Inclusion of a covered work +in an aggregate does not cause this License to apply to the other +parts of the aggregate. + + 6. Conveying Non-Source Forms. + + You may convey a covered work in object code form under the terms +of sections 4 and 5, provided that you also convey the +machine-readable Corresponding Source under the terms of this License, +in one of these ways: + + a) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by the + Corresponding Source fixed on a durable physical medium + customarily used for software interchange. + + b) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by a + written offer, valid for at least three years and valid for as + long as you offer spare parts or customer support for that product + model, to give anyone who possesses the object code either (1) a + copy of the Corresponding Source for all the software in the + product that is covered by this License, on a durable physical + medium customarily used for software interchange, for a price no + more than your reasonable cost of physically performing this + conveying of source, or (2) access to copy the + Corresponding Source from a network server at no charge. + + c) Convey individual copies of the object code with a copy of the + written offer to provide the Corresponding Source. This + alternative is allowed only occasionally and noncommercially, and + only if you received the object code with such an offer, in accord + with subsection 6b. + + d) Convey the object code by offering access from a designated + place (gratis or for a charge), and offer equivalent access to the + Corresponding Source in the same way through the same place at no + further charge. You need not require recipients to copy the + Corresponding Source along with the object code. If the place to + copy the object code is a network server, the Corresponding Source + may be on a different server (operated by you or a third party) + that supports equivalent copying facilities, provided you maintain + clear directions next to the object code saying where to find the + Corresponding Source. Regardless of what server hosts the + Corresponding Source, you remain obligated to ensure that it is + available for as long as needed to satisfy these requirements. + + e) Convey the object code using peer-to-peer transmission, provided + you inform other peers where the object code and Corresponding + Source of the work are being offered to the general public at no + charge under subsection 6d. + + A separable portion of the object code, whose source code is excluded +from the Corresponding Source as a System Library, need not be +included in conveying the object code work. + + A "User Product" is either (1) a "consumer product", which means any +tangible personal property which is normally used for personal, family, +or household purposes, or (2) anything designed or sold for incorporation +into a dwelling. In determining whether a product is a consumer product, +doubtful cases shall be resolved in favor of coverage. For a particular +product received by a particular user, "normally used" refers to a +typical or common use of that class of product, regardless of the status +of the particular user or of the way in which the particular user +actually uses, or expects or is expected to use, the product. A product +is a consumer product regardless of whether the product has substantial +commercial, industrial or non-consumer uses, unless such uses represent +the only significant mode of use of the product. + + "Installation Information" for a User Product means any methods, +procedures, authorization keys, or other information required to install +and execute modified versions of a covered work in that User Product from +a modified version of its Corresponding Source. The information must +suffice to ensure that the continued functioning of the modified object +code is in no case prevented or interfered with solely because +modification has been made. + + If you convey an object code work under this section in, or with, or +specifically for use in, a User Product, and the conveying occurs as +part of a transaction in which the right of possession and use of the +User Product is transferred to the recipient in perpetuity or for a +fixed term (regardless of how the transaction is characterized), the +Corresponding Source conveyed under this section must be accompanied +by the Installation Information. But this requirement does not apply +if neither you nor any third party retains the ability to install +modified object code on the User Product (for example, the work has +been installed in ROM). + + The requirement to provide Installation Information does not include a +requirement to continue to provide support service, warranty, or updates +for a work that has been modified or installed by the recipient, or for +the User Product in which it has been modified or installed. Access to a +network may be denied when the modification itself materially and +adversely affects the operation of the network or violates the rules and +protocols for communication across the network. + + Corresponding Source conveyed, and Installation Information provided, +in accord with this section must be in a format that is publicly +documented (and with an implementation available to the public in +source code form), and must require no special password or key for +unpacking, reading or copying. + + 7. Additional Terms. + + "Additional permissions" are terms that supplement the terms of this +License by making exceptions from one or more of its conditions. +Additional permissions that are applicable to the entire Program shall +be treated as though they were included in this License, to the extent +that they are valid under applicable law. If additional permissions +apply only to part of the Program, that part may be used separately +under those permissions, but the entire Program remains governed by +this License without regard to the additional permissions. + + When you convey a copy of a covered work, you may at your option +remove any additional permissions from that copy, or from any part of +it. (Additional permissions may be written to require their own +removal in certain cases when you modify the work.) You may place +additional permissions on material, added by you to a covered work, +for which you have or can give appropriate copyright permission. + + Notwithstanding any other provision of this License, for material you +add to a covered work, you may (if authorized by the copyright holders of +that material) supplement the terms of this License with terms: + + a) Disclaiming warranty or limiting liability differently from the + terms of sections 15 and 16 of this License; or + + b) Requiring preservation of specified reasonable legal notices or + author attributions in that material or in the Appropriate Legal + Notices displayed by works containing it; or + + c) Prohibiting misrepresentation of the origin of that material, or + requiring that modified versions of such material be marked in + reasonable ways as different from the original version; or + + d) Limiting the use for publicity purposes of names of licensors or + authors of the material; or + + e) Declining to grant rights under trademark law for use of some + trade names, trademarks, or service marks; or + + f) Requiring indemnification of licensors and authors of that + material by anyone who conveys the material (or modified versions of + it) with contractual assumptions of liability to the recipient, for + any liability that these contractual assumptions directly impose on + those licensors and authors. + + All other non-permissive additional terms are considered "further +restrictions" within the meaning of section 10. If the Program as you +received it, or any part of it, contains a notice stating that it is +governed by this License along with a term that is a further +restriction, you may remove that term. If a license document contains +a further restriction but permits relicensing or conveying under this +License, you may add to a covered work material governed by the terms +of that license document, provided that the further restriction does +not survive such relicensing or conveying. + + If you add terms to a covered work in accord with this section, you +must place, in the relevant source files, a statement of the +additional terms that apply to those files, or a notice indicating +where to find the applicable terms. + + Additional terms, permissive or non-permissive, may be stated in the +form of a separately written license, or stated as exceptions; +the above requirements apply either way. + + 8. Termination. + + You may not propagate or modify a covered work except as expressly +provided under this License. Any attempt otherwise to propagate or +modify it is void, and will automatically terminate your rights under +this License (including any patent licenses granted under the third +paragraph of section 11). + + However, if you cease all violation of this License, then your +license from a particular copyright holder is reinstated (a) +provisionally, unless and until the copyright holder explicitly and +finally terminates your license, and (b) permanently, if the copyright +holder fails to notify you of the violation by some reasonable means +prior to 60 days after the cessation. + + Moreover, your license from a particular copyright holder is +reinstated permanently if the copyright holder notifies you of the +violation by some reasonable means, this is the first time you have +received notice of violation of this License (for any work) from that +copyright holder, and you cure the violation prior to 30 days after +your receipt of the notice. + + Termination of your rights under this section does not terminate the +licenses of parties who have received copies or rights from you under +this License. If your rights have been terminated and not permanently +reinstated, you do not qualify to receive new licenses for the same +material under section 10. + + 9. Acceptance Not Required for Having Copies. + + You are not required to accept this License in order to receive or +run a copy of the Program. Ancillary propagation of a covered work +occurring solely as a consequence of using peer-to-peer transmission +to receive a copy likewise does not require acceptance. However, +nothing other than this License grants you permission to propagate or +modify any covered work. These actions infringe copyright if you do +not accept this License. Therefore, by modifying or propagating a +covered work, you indicate your acceptance of this License to do so. + + 10. Automatic Licensing of Downstream Recipients. + + Each time you convey a covered work, the recipient automatically +receives a license from the original licensors, to run, modify and +propagate that work, subject to this License. You are not responsible +for enforcing compliance by third parties with this License. + + An "entity transaction" is a transaction transferring control of an +organization, or substantially all assets of one, or subdividing an +organization, or merging organizations. If propagation of a covered +work results from an entity transaction, each party to that +transaction who receives a copy of the work also receives whatever +licenses to the work the party's predecessor in interest had or could +give under the previous paragraph, plus a right to possession of the +Corresponding Source of the work from the predecessor in interest, if +the predecessor has it or can get it with reasonable efforts. + + You may not impose any further restrictions on the exercise of the +rights granted or affirmed under this License. For example, you may +not impose a license fee, royalty, or other charge for exercise of +rights granted under this License, and you may not initiate litigation +(including a cross-claim or counterclaim in a lawsuit) alleging that +any patent claim is infringed by making, using, selling, offering for +sale, or importing the Program or any portion of it. + + 11. Patents. + + A "contributor" is a copyright holder who authorizes use under this +License of the Program or a work on which the Program is based. The +work thus licensed is called the contributor's "contributor version". + + A contributor's "essential patent claims" are all patent claims +owned or controlled by the contributor, whether already acquired or +hereafter acquired, that would be infringed by some manner, permitted +by this License, of making, using, or selling its contributor version, +but do not include claims that would be infringed only as a +consequence of further modification of the contributor version. For +purposes of this definition, "control" includes the right to grant +patent sublicenses in a manner consistent with the requirements of +this License. + + Each contributor grants you a non-exclusive, worldwide, royalty-free +patent license under the contributor's essential patent claims, to +make, use, sell, offer for sale, import and otherwise run, modify and +propagate the contents of its contributor version. + + In the following three paragraphs, a "patent license" is any express +agreement or commitment, however denominated, not to enforce a patent +(such as an express permission to practice a patent or covenant not to +sue for patent infringement). To "grant" such a patent license to a +party means to make such an agreement or commitment not to enforce a +patent against the party. + + If you convey a covered work, knowingly relying on a patent license, +and the Corresponding Source of the work is not available for anyone +to copy, free of charge and under the terms of this License, through a +publicly available network server or other readily accessible means, +then you must either (1) cause the Corresponding Source to be so +available, or (2) arrange to deprive yourself of the benefit of the +patent license for this particular work, or (3) arrange, in a manner +consistent with the requirements of this License, to extend the patent +license to downstream recipients. "Knowingly relying" means you have +actual knowledge that, but for the patent license, your conveying the +covered work in a country, or your recipient's use of the covered work +in a country, would infringe one or more identifiable patents in that +country that you have reason to believe are valid. + + If, pursuant to or in connection with a single transaction or +arrangement, you convey, or propagate by procuring conveyance of, a +covered work, and grant a patent license to some of the parties +receiving the covered work authorizing them to use, propagate, modify +or convey a specific copy of the covered work, then the patent license +you grant is automatically extended to all recipients of the covered +work and works based on it. + + A patent license is "discriminatory" if it does not include within +the scope of its coverage, prohibits the exercise of, or is +conditioned on the non-exercise of one or more of the rights that are +specifically granted under this License. You may not convey a covered +work if you are a party to an arrangement with a third party that is +in the business of distributing software, under which you make payment +to the third party based on the extent of your activity of conveying +the work, and under which the third party grants, to any of the +parties who would receive the covered work from you, a discriminatory +patent license (a) in connection with copies of the covered work +conveyed by you (or copies made from those copies), or (b) primarily +for and in connection with specific products or compilations that +contain the covered work, unless you entered into that arrangement, +or that patent license was granted, prior to 28 March 2007. + + Nothing in this License shall be construed as excluding or limiting +any implied license or other defenses to infringement that may +otherwise be available to you under applicable patent law. + + 12. No Surrender of Others' Freedom. + + If conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot convey a +covered work so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you may +not convey it at all. For example, if you agree to terms that obligate you +to collect a royalty for further conveying from those to whom you convey +the Program, the only way you could satisfy both those terms and this +License would be to refrain entirely from conveying the Program. + + 13. Use with the GNU Affero General Public License. + + Notwithstanding any other provision of this License, you have +permission to link or combine any covered work with a work licensed +under version 3 of the GNU Affero General Public License into a single +combined work, and to convey the resulting work. The terms of this +License will continue to apply to the part which is the covered work, +but the special requirements of the GNU Affero General Public License, +section 13, concerning interaction through a network will apply to the +combination as such. + + 14. Revised Versions of this License. + + The Free Software Foundation may publish revised and/or new versions of +the GNU General Public License from time to time. Such new versions will +be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. + + Each version is given a distinguishing version number. If the +Program specifies that a certain numbered version of the GNU General +Public License "or any later version" applies to it, you have the +option of following the terms and conditions either of that numbered +version or of any later version published by the Free Software +Foundation. If the Program does not specify a version number of the +GNU General Public License, you may choose any version ever published +by the Free Software Foundation. + + If the Program specifies that a proxy can decide which future +versions of the GNU General Public License can be used, that proxy's +public statement of acceptance of a version permanently authorizes you +to choose that version for the Program. + + Later license versions may give you additional or different +permissions. However, no additional obligations are imposed on any +author or copyright holder as a result of your choosing to follow a +later version. + + 15. Disclaimer of Warranty. + + THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY +APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT +HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY +OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, +THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM +IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF +ALL NECESSARY SERVICING, REPAIR OR CORRECTION. + + 16. Limitation of Liability. + + IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS +THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY +GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE +USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF +DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD +PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), +EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF +SUCH DAMAGES. + + 17. Interpretation of Sections 15 and 16. + + If the disclaimer of warranty and limitation of liability provided +above cannot be given local legal effect according to their terms, +reviewing courts shall apply local law that most closely approximates +an absolute waiver of all civil liability in connection with the +Program, unless a warranty or assumption of liability accompanies a +copy of the Program in return for a fee. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Programs + + If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it +free software which everyone can redistribute and change under these terms. + + To do so, attach the following notices to the program. It is safest +to attach them to the start of each source file to most effectively +state the exclusion of warranty; and each file should have at least +the "copyright" line and a pointer to where the full notice is found. + + {one line to give the program's name and a brief idea of what it does.} + Copyright (C) {year} {name of author} + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . + +Also add information on how to contact you by electronic and paper mail. + + If the program does terminal interaction, make it output a short +notice like this when it starts in an interactive mode: + + {project} Copyright (C) {year} {fullname} + This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'. + This is free software, and you are welcome to redistribute it + under certain conditions; type `show c' for details. + +The hypothetical commands `show w' and `show c' should show the appropriate +parts of the General Public License. Of course, your program's commands +might be different; for a GUI interface, you would use an "about box". + + You should also get your employer (if you work as a programmer) or school, +if any, to sign a "copyright disclaimer" for the program, if necessary. +For more information on this, and how to apply and follow the GNU GPL, see +. + + The GNU General Public License does not permit incorporating your program +into proprietary programs. If your program is a subroutine library, you +may consider it more useful to permit linking proprietary applications with +the library. If this is what you want to do, use the GNU Lesser General +Public License instead of this License. But first, please read +. From 80e589f2c6d52e40ff1fe57ef4db795e6029f43b Mon Sep 17 00:00:00 2001 From: ManiacDC Date: Thu, 18 Dec 2014 10:10:45 -0500 Subject: [PATCH 12/62] Modularized some preferences and initialization to allow for saving --- Source/Includes/Preferences File.ahk | 638 +++++++++++++++++---------- Source/TypingAid.ahk | 86 ++-- 2 files changed, 450 insertions(+), 274 deletions(-) diff --git a/Source/Includes/Preferences File.ahk b/Source/Includes/Preferences File.ahk index 03a3fcd..1186459 100644 --- a/Source/Includes/Preferences File.ahk +++ b/Source/Includes/Preferences File.ahk @@ -14,7 +14,7 @@ MaybeWriteHelperWindowPos() ;------------------------------------------------------------------------ -ReadPreferences() +ReadPreferences(RestoreDefaults = false) { global Local Prefs @@ -123,7 +123,8 @@ ReadPreferences() IF ( DftValue = "%A_Space%" ) DftValue := A_Space - IniRead, %NormalVariable%, %Prefs%, %IniSection%, %IniKey%, %A_Space% + IF !(RestoreDefaults) + IniRead, %NormalVariable%, %Prefs%, %IniSection%, %IniKey%, %A_Space% IF DftVariable { @@ -133,346 +134,266 @@ ReadPreferences() } } + ; Legacy support for old Preferences File + IfNotEqual, Etitle, + { + IfEqual, IncludeProgramTitles, + { + IncludeProgramTitles = %Etitle% + } else { + IncludeProgramTitles .= "|" . Etitle + } + + Etitle= + } + + if Wlen is not integer + { + Wlen = %DftWlen% + } + IfEqual, LearnLength, LearnLength := Wlen +2 - IfExist, %LastState% + if NumPresses not in 1,2 + NumPresses = %DftNumPresses% + + If LearnMode not in On,Off + LearnMode = %DftLearnMode% + + If LearnCount is not Integer + LearnCount = %DftLearnCount% + + If LearnLength is not Integer + { + LearnLength := Wlen + 2 + } else { + If ( LearnLength < ( Wlen + 1 ) ) + LearnLength := Wlen + 1 + } + + if DisabledAutoCompleteKeys contains N + NumKeyMethod = Off + + IfNotEqual, ArrowKeyMethod, Off + If DisabledAutoCompleteKeys contains E + If DisabledAutoCompleteKeys contains S + If DisabledAutoCompleteKeys contains T + If DisabledAutoCompleteKeys contains R + ArrowKeyMethod = Off + + If ArrowKeyMethod not in First,Off,LastWord,LastPosition + { + ArrowKeyMethod = %DftArrowKeyMethod% + } + + If DetectMouseClickMove not in On,Off + DetectMouseClickMove = %DftDetectMouseClickMove% + + If NoBackSpace not in On,Off + NoBackSpace = %DftNoBackSpace% + + If AutoSpace not in On,Off + AutoSpace = %DftAutoSpace% + + if SendMethod not in 1,2,3,1C,2C,3C,4C + SendMethod = %DftSendMethod% + + ;SendPlay does not work when not running as Administrator, switch to SendInput + If not A_IsAdmin { + IfEqual, SendMethod, 1 + { + SendMethod = 2 + } + + else IfEqual, SendMethod, 1C + { + SendMethod = 2C + } + } + + IfEqual, TerminatingCharacters, + TerminatingCharacters = %DftTerminatingCharacters% + + ParseTerminatingCharacters() + + if ListBoxOffset is not Integer + ListBoxOffset = %DftListBoxOffSet% + + if ListBoxFontFixed not in On,Off + ListBoxFontFixed = %DftListBoxFontFixed% + + If ListBoxFontSize is not Integer + ListBoxFontSize = %DftListBoxFontSize% + else { + IfLess, ListBoxFontSize, 2 + ListBoxFontSize = 2 + } + + if ListBoxCharacterWidth is not Integer + ListBoxCharacterWidth = %DftListBoxCharacterWidth% + + IfEqual, ListBoxCharacterWidth, + ListBoxCharacterWidth := Ceil(ListBoxFontSize * 0.8 ) + + If ListBoxOpacity is not Integer + ListBoxOpacity = %DftListBoxOpacity% + else IfLess, ListBoxOpacity, 0 + ListBoxOpacity = 0 + else IfGreater, ListBoxOpacity, 255 + ListBoxOpacity = 255 + + If ListBoxRows is not Integer + ListBoxRows = %DftListBoxRows% + else IfLess, ListBoxRows, 3 + ListBoxRows = 3 + else IfGreater, ListBoxRows, + + IF RestoreDefaults + Return + + IfExist, %LastState% + { IniRead, XY, %LastState%, HelperWindow, XY, %A_Space% } + ConstructHelpStrings() + If !(FileExist(Prefs) || FileExist(Defaults)) { INI= ( [IncludePrograms] ; -;IncludeProgramExecutables is a list of executable (.exe) files that TypingAid should be enabled for. -;If one the executables matches the current program, TypingAid is enabled for that program. +%hIncludeProgramExecutables% ; ex: IncludeProgramExecutables=notepad.exe|iexplore.exe IncludeProgramExecutables=%DftIncludeProgramExecutables% ; ; -;IncludeProgramTitles is a list of strings (separated by | ) to find in the title of the window you want TypingAid enabled for. -;If one of the strings is found in the title, TypingAid is enabled for that window. +%hIncludeProgramTitles% ; ex: IncludeProgramTitles=Notepad|Internet Explorer IncludeProgramTitles=%DftIncludeProgramTitles% ; ; [ExcludePrograms] ; -;ExcludeProgramExecutables is a list of executable (.exe) files that TypingAid should be disabled for. -;If one the executables matches the current program, TypingAid is disabled for that program. +%hExcludeProgramExecutables% ; ex: ExcludeProgramExecutables=notepad.exe|iexplore.exe ExcludeProgramExecutables=%DftExcludeProgramExecutables% ; ; -;ExcludeProgramTitles is a list of strings (separated by | ) to find in the title of the window you want TypingAid disabled for. -;If one of the strings is found in the title, TypingAid is disabled for that window. +%hExcludeProgramTitles% ; ex: ExcludeProgramTitles=Notepad|Internet Explorer ExcludeProgramTitles=%DftExcludeProgramTitles% ; ; [Settings] ; -;Length is the minimum number of characters that need to be typed before the program shows a List of words. -;Generally, the higher this number the better the performance will be. -;For example, if you need to autocomplete "as soon as possible" in the word list, set this to 2, type 'as' and a list will appear. +%hLength% Length=%DftWlen% ; ; -;NumPresses is the number of times the number hotkey must be tapped for the word to be selected, either 1 or 2. +%hNumPresses% NumPresses=%DftNumPresses% ; ; -;LearnMode defines whether or not the script should learn new words as you type them, either On or Off. +%hLearnMode% LearnMode=%DftLearnMode% ; ; -;LearnCount defines the number of times you have to type a word within a single session for it to be learned permanently. +%hLearnCount% LearnCount=%DftLearnCount% ; ; -;LearnLength is the minimum number of characters in a word for it to be learned. This must be at least Length+1. +%hLearnLength% LearnLength=%DftLearnLength% ; ; -;DoNotLearnStrings is a comma separated list of strings. Any words which contain any of these strings will not be learned. -;This can be used to prevent the program from learning passwords or other critical information. -;For example, if you have ord98 in DoNotLearnStrings, password987 will not be learned. +%hDoNotLearnStrings% ; ex: DoNotLearnStrings=ord98,fr21 DoNotLearnStrings=%DftDoNotLearnStrings% ; ; -;ArrowKeyMethod is the way the arrow keys are handled when a list is shown. -;Options are: -; Off - you can only use the number keys -; First - resets the selection cursor to the beginning whenever you type a new character -; LastWord - keeps the selection cursor on the prior selected word if it's still in the list, else resets to the beginning -; LastPosition - maintains the selection cursor's position +%hArrowKeyMethod% ArrowKeyMethod=%DftArrowKeyMethod% ; ; -;DisabledAutoCompleteKeys is used to disable certain hotkeys from autocompleting the selected item in the list. -;Place the character listed for each key you want to disable in the list. -; ex: DisabledAutoCompleteKeys=ST -;will disable Ctrl+Space and Tab. -; E = Ctrl + Enter -; S = Ctrl + Space -; T = Tab -; R = Right Arrow -; N = Number Keys -; U = Enter +%hDisabledAutoCompleteKeys% DisabledAutoCompleteKeys=%DftDisabledAutoCompleteKeys% ; ; -;DetectMouseClickMove is used to detect when the cursor is moved with the mouse. -; On - TypingAid will not work when used with an On-Screen keyboard. -; Off - TypingAid will not detect when the cursor is moved within the same line using the mouse, and scrolling the text will clear the list. +%hDetectMouseClickMove% DetectMouseClickMove=%DftDetectMouseClickMove% ; ; -;NoBackSpace is used to make TypingAid not backspace any of the previously typed characters -;(ie, do not change the case of any previously typed characters). -; On - characters you have already typed will not be changed -; Off - characters you have already typed will be backspaced and replaced with the case of the word you have chosen. +%hNoBackSpace% NoBackSpace=%DftNoBackSpace% ; ; -;AutoSpace is used to automatically add a space to the end of an autocompleted word. -; On - Add a space to the end of the autocompleted word. -; Off - Do not add a space to the end of the autocompleted word. +%hAutoSpace% AutoSpace=%DftAutoSpace% ; ; -;SuppressMatchingWord is used to suppress a word from the Word list if it matches the typed word. -; If NoBackspace=On, then the match is case in-sensitive. -; If NoBackspace=Off, then the match is case-sensitive. -; On - Suppress matching words from the word list. -; Off - Do not suppress matching words from the word list. +%hSuppressMatchingWord% SuppressMatchingWord=%DftSuppressMatchingWord% ; ; -;SendMethod is used to change the way the program sends the keys to the screen, this is included for compatibility reasons. -;Try changing this only when you encounter a problem with key sending during autocompletion. -; 1 = Fast method that reliably buffers key hits while sending. HAS BEEN KNOWN TO NOT FUNCTION ON SOME MACHINES. -; (Might not work with characters that cannot be typed using the current keyboard layout.) -; 2 = Fastest method with unreliable keyboard buffering while sending. Has been known to not function on some machines. -; 3 = Slowest method, will not buffer or accept keyboard input while sending. Most compatible method. -;The options below use the clipboard to copy and paste the data to improve speed, but will leave an entry in any clipboard -;history tracking routines you may be running. Data on the clipboard *will* be preserved prior to autocompletion. -; 1C = Same as 1 above. -; 2C = Same as 2 above, doesn't work on some machines. -; 3C = Same as 3 above. -; 4C = Alternate method. +%hSendMethod% SendMethod=%DftSendMethod% ; ; -;TerminatingCharacters is a list of characters (EndKey) which will signal the program that you are done typing a word. -;You probably need to change this only when you want to recognize and type accented (diacritic) or Unicode characters -;or if you are using this with certain programming languages. -; -;For support of special characters, remove the key that is used to type the diacritic symbol (or the character) from the right hand side. -;For example, if on your keyboard layout, " is used before typing ë, ; is used to type ñ, remove them from the right hand side. -; -;After this, TypingAid can recognize the special character. The side-effect is that, it cannot complete words typed after -;the symbol, (e.g. "word... ) If you need to complete a word after a quotation mark, first type two quotation marks "" then -;press left and type the word in the middle. -; -;If unsure, below is a setting for you to copy and use directly: -; -;Universal setting that works for many languages with accented or Unicode characters: -;{enter}{space}{bs}{esc}{tab}{Home}{End}{PgUp}{PdDn}{Up}{Dn}{Left}{Right}¿?¡!()$ -; -;Default setting: -;%DftTerminatingCharacters% -; -; More information on how to configure TerminatingCharacters: -;A list of keys may be found here: -; http://www.autohotkey.com/docs/KeyList.htm -;For more details on how to format the list of characters please see the EndKeys section (paragraphs 2,3,4) of: -; http://www.autohotkey.com/docs/commands/Input.htm +%hTerminatingCharacters% TerminatingCharacters=%DftTerminatingCharacters% ; ; -;ForceNewWordCharacters is a comma separated list of characters which forces the program to start a new word whenever -;one of those characters is typed. Any words which begin with one of these characters will never be learned (even -;if learning is enabled). If you were typing a word when you hit one of these characters that word will be learned -;if learning is enabled. -;Change this only if you know what you are doing, it is probably only useful for certain programming languages. -; ex: ForceNewWordCharacters=@,:,# +%hForceNewWordCharacters% ForceNewWordCharacters=%DftForceNewWordCharacters% ; ; [ListBoxSettings] ; -;ListBoxOffset is the number of pixels below the top of the caret (vertical blinking line) to display the list. +%hListBoxOffset% ListBoxOffset=%DftListBoxOffSet% ; ; -;ListBoxFontFixed controls whether a fixed or variable character font width is used. -;(ie, in fixed width, "i" and "w" take the same number of pixels) +%hListBoxFontFixed% ListBoxFontFixed=%DftListBoxFontFixed% ; ; -;ListBoxFontOverride is used to specify a font for the List Box to use. The default for Fixed is Courier, -;and the default for Variable is Tahoma. +%hListBoxFontOverride% ListBoxFontOverride=%DftListBoxFontOverride% ; ; -;ListBoxFontSize controls the size of the font in the list. +%hListBoxFontSize% ListBoxFontSize=%DftListBoxFontSize% ; ; -;ListBoxCharacterWidth is the width (in pixels) of one character in the List Box. -;This number should only need to be changed if the box containing the list is not the correct width. -;Some things which may cause this to need to be changed would include: -; 1. Changing the Font DPI in Windows -; 2. Changing the ListBoxFontFixed setting -; 3. Changing the ListBoxFontSize setting -;Leave this blank to let TypingAid try to compute the width. +%hListBoxCharacterWidth% ListBoxCharacterWidth=%DftListBoxCharacterWidth% ; ; -;ListBoxOpacity is how transparent (see-through) the ListBox should be. Use a value of 255 to make it so the -;ListBox is fully Opaque, or use a value of 0 to make it so the ListBox cannot be seen at all. +%hListBoxOpacity% ListBoxOpacity=%DftListBoxOpacity% ; ; -;ListBoxRows is the maximum number of rows to show in the ListBox. This value can range from 3 to 30. +%hListBoxRows% ListBoxRows=%DftListBoxRows% ; ; [HelperWindow] ; -;HelperWindowProgramExecutables is a list of executable (.exe) files that the HelperWindow should be automatically enabled for. -;If one the executables matches the current program, the HelperWindow will pop up automatically for that program. +%hHelperWindowProgramExecutables% ; ex: HelperWindowProgramExecutables=notepad.exe|iexplore.exe HelperWindowProgramExecutables=%DftHelperWindowProgramExecutables% ; ; -;HelperWindowProgramTitles is a list of strings (separated by | ) to find in the title of the window that the HelperWindow should be automatically enabled for. -;If one of the strings is found in the title, the HelperWindow will pop up automatically for that program. +%hHelperWindowProgramTitles% ; ex: HelperWindowProgramTitles=Notepad|Internet Explorer HelperWindowProgramTitles=%DftHelperWindowProgramTitles% ) FileAppendDispatch(INI, Prefs, "UTF-16") } - - ; Legacy support for old Preferences File - IfNotEqual, Etitle, - { - IfEqual, IncludeProgramTitles, - { - IncludeProgramTitles = %Etitle% - } else { - IncludeProgramTitles .= "|" . Etitle - } - - Etitle= - } - - if Wlen is not integer - { - Wlen = %DftWlen% - } - - if NumPresses not in 1,2 - NumPresses = %DftNumPresses% - - If LearnMode not in On,Off - LearnMode = %DftLearnMode% - - If LearnCount is not Integer - LearnCount = %DftLearnCount% - - If LearnLength is not Integer - { - LearnLength := Wlen + 2 - } else { - If ( LearnLength < ( Wlen + 1 ) ) - LearnLength := Wlen + 1 - } - - if DisabledAutoCompleteKeys contains N - NumKeyMethod = Off - - IfNotEqual, ArrowKeyMethod, Off - If DisabledAutoCompleteKeys contains E - If DisabledAutoCompleteKeys contains S - If DisabledAutoCompleteKeys contains T - If DisabledAutoCompleteKeys contains R - ArrowKeyMethod = Off - - If ArrowKeyMethod not in First,Off,LastWord,LastPosition - { - ArrowKeyMethod = %DftArrowKeyMethod% - } - - If DetectMouseClickMove not in On,Off - DetectMouseClickMove = %DftDetectMouseClickMove% - - If NoBackSpace not in On,Off - NoBackSpace = %DftNoBackSpace% - - If AutoSpace not in On,Off - AutoSpace = %DftAutoSpace% - - if SendMethod not in 1,2,3,1C,2C,3C,4C - SendMethod = %DftSendMethod% - - ;SendPlay does not work when not running as Administrator, switch to SendInput - If not A_IsAdmin - { - IfEqual, SendMethod, 1 - { - SendMethod = 2 - } - - else IfEqual, SendMethod, 1C - { - SendMethod = 2C - } - } - - - IfEqual, TerminatingCharacters, - TerminatingCharacters = %DftTerminatingCharacters% - - ParseTerminatingCharacters() - - if ListBoxOffset is not Integer - ListBoxOffset = %DftListBoxOffSet% - - if ListBoxFontFixed not in On,Off - ListBoxFontFixed = %DftListBoxFontFixed% - - If ListBoxFontSize is not Integer - ListBoxFontSize = %DftListBoxFontSize% - else { - IfLess, ListBoxFontSize, 2 - ListBoxFontSize = 2 - } - - if ListBoxCharacterWidth is not Integer - ListBoxCharacterWidth = %DftListBoxCharacterWidth% - - IfEqual, ListBoxCharacterWidth, - ListBoxCharacterWidth := Ceil(ListBoxFontSize * 0.8 ) - - If ListBoxOpacity is not Integer - ListBoxOpacity = %DftListBoxOpacity% - else IfLess, ListBoxOpacity, 0 - ListBoxOpacity = 0 - else IfGreater, ListBoxOpacity, 255 - ListBoxOpacity = 255 - - If ListBoxRows is not Integer - ListBoxRows = %DftListBoxRows% - else IfLess, ListBoxRows, 3 - ListBoxRows = 3 - else IfGreater, ListBoxRows, 30 - ListBoxRows = 30 Return } @@ -513,3 +434,262 @@ ParseTerminatingCharacters() TerminatingCharacters := TempCharacters TerminatingEndKeys := TempEndKeys } + +SavePreferences() +{ + ;Settings that require a script restart + ;LearnMode + ; what does toggling learnmode and learncount do to the stored learned words in the SQL version? + + ;items that require re-init + InitializeHotKeys() + ;ArrowKeyMethod + ;DisabledAutoCompleteKeys + + ;hide/show listbox? disable/enable hotkeys? + ;hide listbox when menu gui open +} + +ConstructHelpStrings() +{ + global + +hIncludeProgramExecutables= +( +;IncludeProgramExecutables is a list of executable (.exe) files that TypingAid should be enabled for. +;If one the executables matches the current program, TypingAid is enabled for that program. +) + +hIncludeProgramTitles= +( +;IncludeProgramTitles is a list of strings (separated by | ) to find in the title of the window you want TypingAid enabled for. +;If one of the strings is found in the title, TypingAid is enabled for that window. +) + +hExcludeProgramExecutables= +( +;ExcludeProgramExecutables is a list of executable (.exe) files that TypingAid should be disabled for. +;If one the executables matches the current program, TypingAid is disabled for that program. +) + +hExcludeProgramTitles= +( +;ExcludeProgramTitles is a list of strings (separated by | ) to find in the title of the window you want TypingAid disabled for. +;If one of the strings is found in the title, TypingAid is disabled for that window. +) + +hLength= +( +;Length is the minimum number of characters that need to be typed before the program shows a List of words. +;Generally, the higher this number the better the performance will be. +;For example, if you need to autocomplete "as soon as possible" in the word list, set this to 2, type 'as' and a list will appear. +) + +hNumPresses= +( +;NumPresses is the number of times the number hotkey must be tapped for the word to be selected, either 1 or 2. +) + +hLearnMode= +( +;LearnMode defines whether or not the script should learn new words as you type them, either On or Off. +) + +hLearnCount= +( +;LearnCount defines the number of times you have to type a word within a single session for it to be learned permanently. +) + +hLearnLength= +( +;LearnLength is the minimum number of characters in a word for it to be learned. This must be at least Length+1. +) + +hDoNotLearnStrings= +( +;DoNotLearnStrings is a comma separated list of strings. Any words which contain any of these strings will not be learned. +;This can be used to prevent the program from learning passwords or other critical information. +;For example, if you have ord98 in DoNotLearnStrings, password987 will not be learned. +) + +hArrowKeyMethod= +( +;ArrowKeyMethod is the way the arrow keys are handled when a list is shown. +;Options are: +; Off - you can only use the number keys +; First - resets the selection cursor to the beginning whenever you type a new character +; LastWord - keeps the selection cursor on the prior selected word if it's still in the list, else resets to the beginning +; LastPosition - maintains the selection cursor's position +) + +hDisabledAutoCompleteKeys= +( +;DisabledAutoCompleteKeys is used to disable certain hotkeys from autocompleting the selected item in the list. +;Place the character listed for each key you want to disable in the list. +; ex: DisabledAutoCompleteKeys=ST +;will disable Ctrl+Space and Tab. +; E = Ctrl + Enter +; S = Ctrl + Space +; T = Tab +; R = Right Arrow +; N = Number Keys +; U = Enter +) + +hDetectMouseClickMove= +( +;DetectMouseClickMove is used to detect when the cursor is moved with the mouse. +; On - TypingAid will not work when used with an On-Screen keyboard. +; Off - TypingAid will not detect when the cursor is moved within the same line using the mouse, and scrolling the text will clear the list. +) + +hNoBackSpace= +( +;NoBackSpace is used to make TypingAid not backspace any of the previously typed characters +;(ie, do not change the case of any previously typed characters). +; On - characters you have already typed will not be changed +; Off - characters you have already typed will be backspaced and replaced with the case of the word you have chosen. +) + +hAutoSpace= +( +;AutoSpace is used to automatically add a space to the end of an autocompleted word. +; On - Add a space to the end of the autocompleted word. +; Off - Do not add a space to the end of the autocompleted word. +) + +hSuppressMatchingWord= +( +;SuppressMatchingWord is used to suppress a word from the Word list if it matches the typed word. +; If NoBackspace=On, then the match is case in-sensitive. +; If NoBackspace=Off, then the match is case-sensitive. +; On - Suppress matching words from the word list. +; Off - Do not suppress matching words from the word list. +) + +hSendMethod= +( +;SendMethod is used to change the way the program sends the keys to the screen, this is included for compatibility reasons. +;Try changing this only when you encounter a problem with key sending during autocompletion. +; 1 = Fast method that reliably buffers key hits while sending. HAS BEEN KNOWN TO NOT FUNCTION ON SOME MACHINES. +; (Might not work with characters that cannot be typed using the current keyboard layout.) +; 2 = Fastest method with unreliable keyboard buffering while sending. Has been known to not function on some machines. +; 3 = Slowest method, will not buffer or accept keyboard input while sending. Most compatible method. +;The options below use the clipboard to copy and paste the data to improve speed, but will leave an entry in any clipboard +;history tracking routines you may be running. Data on the clipboard *will* be preserved prior to autocompletion. +; 1C = Same as 1 above. +; 2C = Same as 2 above, doesn't work on some machines. +; 3C = Same as 3 above. +; 4C = Alternate method. +) + +hTerminatingCharacters= +( +;TerminatingCharacters is a list of characters (EndKey) which will signal the program that you are done typing a word. +;You probably need to change this only when you want to recognize and type accented (diacritic) or Unicode characters +;or if you are using this with certain programming languages. +; +;For support of special characters, remove the key that is used to type the diacritic symbol (or the character) from the right hand side. +;For example, if on your keyboard layout, " is used before typing ë, ; is used to type ñ, remove them from the right hand side. +; +;After this, TypingAid can recognize the special character. The side-effect is that, it cannot complete words typed after +;the symbol, (e.g. "word... ) If you need to complete a word after a quotation mark, first type two quotation marks "" then +;press left and type the word in the middle. +; +;If unsure, below is a setting for you to copy and use directly: +; +;Universal setting that works for many languages with accented or Unicode characters: +;{enter}{space}{bs}{esc}{tab}{Home}{End}{PgUp}{PdDn}{Up}{Dn}{Left}{Right}¿?¡!()$ +; +;Default setting: +;%DftTerminatingCharacters% +; +; More information on how to configure TerminatingCharacters: +;A list of keys may be found here: +; http://www.autohotkey.com/docs/KeyList.htm +;For more details on how to format the list of characters please see the EndKeys section (paragraphs 2,3,4) of: +; http://www.autohotkey.com/docs/commands/Input.htm +) + +hForceNewWordCharacters= +( +;ForceNewWordCharacters is a comma separated list of characters which forces the program to start a new word whenever +;one of those characters is typed. Any words which begin with one of these characters will never be learned (even +;if learning is enabled). If you were typing a word when you hit one of these characters that word will be learned +;if learning is enabled. +;Change this only if you know what you are doing, it is probably only useful for certain programming languages. +; ex: ForceNewWordCharacters=@,:,# +) + +hListBoxOffset= +( +;ListBoxOffset is the number of pixels below the top of the caret (vertical blinking line) to display the list. +) + +hListBoxFontFixed= +( +;ListBoxFontFixed controls whether a fixed or variable character font width is used. +;(ie, in fixed width, "i" and "w" take the same number of pixels) +) + +hListBoxFontOverride= +( +;ListBoxFontOverride is used to specify a font for the List Box to use. The default for Fixed is Courier, +;and the default for Variable is Tahoma. +) + +hListBoxFontSize= +( +;ListBoxFontSize controls the size of the font in the list. +) + +hListBoxCharacterWidth= +( +;ListBoxCharacterWidth is the width (in pixels) of one character in the List Box. +;This number should only need to be changed if the box containing the list is not the correct width. +;Some things which may cause this to need to be changed would include: +; 1. Changing the Font DPI in Windows +; 2. Changing the ListBoxFontFixed setting +; 3. Changing the ListBoxFontSize setting +;Leave this blank to let TypingAid try to compute the width. +) + +hListBoxOpacity= +( +;ListBoxOpacity is how transparent (see-through) the ListBox should be. Use a value of 255 to make it so the +;ListBox is fully Opaque, or use a value of 0 to make it so the ListBox cannot be seen at all. +) + +hListBoxRows= +( +;ListBoxRows is the maximum number of rows to show in the ListBox. This value can range from 3 to 30. +) + +hHelperWindowProgramExecutables= +( +;HelperWindowProgramExecutables is a list of executable (.exe) files that the HelperWindow should be automatically enabled for. +;If one the executables matches the current program, the HelperWindow will pop up automatically for that program. +) + +hHelperWindowProgramTitles= +( +;HelperWindowProgramTitles is a list of strings (separated by | ) to find in the title of the window that the HelperWindow should be automatically enabled for. +;If one of the strings is found in the title, the HelperWindow will pop up automatically for that program. +) + +hFullHelpString = +( +%hIncludeProgramExecutables% `r`n`r`n %hIncludeProgramTitles% `r`n`r`n %hExcludeProgramExecutables% `r`n`r`n %hExcludeProgramTitles% + +%hLength% `r`n`r`n %hNumPresses% `r`n`r`n %hLearnMode% `r`n`r`n %hLearnCount% `r`n`r`n %hLearnLength% `r`n`r`n %hDoNotLearnStrings% + +%hArrowKeyMethod% `r`n`r`n %hDisabledAutoCompleteKeys% `r`n`r`n %hDetectMouseClickMove% `r`n`r`n %hNoBackSpace% `r`n`r`n %hAutoSpace% + +%hSuppressMatchingWord% `r`n`r`n %hSendMethod% `r`n`r`n %hTerminatingCharacters% `r`n`r`n %hForceNewWordCharacters% `r`n`r`n %hListBoxOffset% + +%hListBoxFontFixed% `r`n`r`n %hListBoxFontOverride% `r`n`r`n %hListBoxFontSize% `r`n`r`n %hListBoxCharacterWidth% `r`n`r`n %hListBoxOpacity% + +%hListBoxRows% `r`n`r`n %hHelperWindowProgramExecutables% `r`n`r`n %hHelperWindowProgramTitles% +) + +} \ No newline at end of file diff --git a/Source/TypingAid.ahk b/Source/TypingAid.ahk index ebcf2cb..d7d0a5e 100644 --- a/Source/TypingAid.ahk +++ b/Source/TypingAid.ahk @@ -80,17 +80,6 @@ InitializeListBox() BlockInput, Send -IfEqual, A_IsUnicode, 1 -{ - ; Need 4 characters in Unicode mode - AsciiPrefix = 000 - AsciiTrimLength = -3 -} else { - ; Need 2 characters in Ascii mode - AsciiPrefix = 0 - AsciiTrimLength = -1 - } - ;Read in the WordList ReadWordList() @@ -112,40 +101,7 @@ IfNotEqual, LearnMode, On HotKey, $^+c, Off } -IfEqual, ArrowKeyMethod, Off -{ - Hotkey, $^Enter, Off - Hotkey, $^Space, Off - Hotkey, $Tab, Off - Hotkey, $Right, Off - Hotkey, $Up, Off - Hotkey, $Down, Off - Hotkey, $PgUp, Off - Hotkey, $PgDn, Off -} else { - EnabledKeyboardHotKeys .= "$Up" . DelimiterChar - EnabledKeyboardHotKeys .= "$Down" . DelimiterChar - EnabledKeyboardHotKeys .= "$PgUp" . DelimiterChar - EnabledKeyboardHotKeys .= "$PgDn" . DelimiterChar - If DisabledAutoCompleteKeys contains E - Hotkey, $^Enter, Off - else EnabledKeyboardHotKeys .= "$^Enter" . DelimiterChar - If DisabledAutoCompleteKeys contains S - HotKey, $^Space, Off - else EnabledKeyboardHotKeys .= "$^Space" . DelimiterChar - If DisabledAutoCompleteKeys contains T - HotKey, $Tab, Off - else EnabledKeyboardHotKeys .= "$Tab" . DelimiterChar - If DisabledAutoCompleteKeys contains R - HotKey, $Right, Off - else EnabledKeyboardHotKeys .= "$Right" . DelimiterChar - If DisabledAutoCompleteKeys contains U - HotKey, $Enter, Off - else EnabledKeyboardHotKeys .= "$Enter" . DelimiterChar - } - -; remove last ascii 2 -StringTrimRight, EnabledKeyboardHotKeys, EnabledKeyboardHotKeys, 1 +InitializeHotKeys() DisableKeyboardHotKeys() @@ -468,6 +424,46 @@ CheckForCaretMove: ;------------------------------------------------------------------------ +InitializeHotKeys() +{ + global + IfEqual, ArrowKeyMethod, Off + { + Hotkey, $^Enter, Off + Hotkey, $^Space, Off + Hotkey, $Tab, Off + Hotkey, $Right, Off + Hotkey, $Up, Off + Hotkey, $Down, Off + Hotkey, $PgUp, Off + Hotkey, $PgDn, Off + } else { + EnabledKeyboardHotKeys .= "$Up" . DelimiterChar + EnabledKeyboardHotKeys .= "$Down" . DelimiterChar + EnabledKeyboardHotKeys .= "$PgUp" . DelimiterChar + EnabledKeyboardHotKeys .= "$PgDn" . DelimiterChar + If DisabledAutoCompleteKeys contains E + Hotkey, $^Enter, Off + else EnabledKeyboardHotKeys .= "$^Enter" . DelimiterChar + If DisabledAutoCompleteKeys contains S + HotKey, $^Space, Off + else EnabledKeyboardHotKeys .= "$^Space" . DelimiterChar + If DisabledAutoCompleteKeys contains T + HotKey, $Tab, Off + else EnabledKeyboardHotKeys .= "$Tab" . DelimiterChar + If DisabledAutoCompleteKeys contains R + HotKey, $Right, Off + else EnabledKeyboardHotKeys .= "$Right" . DelimiterChar + If DisabledAutoCompleteKeys contains U + HotKey, $Enter, Off + else EnabledKeyboardHotKeys .= "$Enter" . DelimiterChar + } + + ; remove last ascii 2 + StringTrimRight, EnabledKeyboardHotKeys, EnabledKeyboardHotKeys, 1 + +} + EnableKeyboardHotKeys() { global EnabledKeyboardHotKeys From baf21ca87b3a45339643858799c08b0be8b7d549 Mon Sep 17 00:00:00 2001 From: ManiacDC Date: Tue, 6 Jan 2015 09:31:07 -0500 Subject: [PATCH 13/62] Initial inclusion of Settings Gui (does not function) --- Source/Includes/Helper.ahk | 14 +- Source/Includes/ListBox.ahk | 34 +- Source/Includes/Settings.ahk | 875 +++++++++++++++++++++++++++++++++++ Source/TypingAid.ahk | 16 +- 4 files changed, 908 insertions(+), 31 deletions(-) create mode 100644 Source/Includes/Settings.ahk diff --git a/Source/Includes/Helper.ahk b/Source/Includes/Helper.ahk index 34b71ee..91e960c 100644 --- a/Source/Includes/Helper.ahk +++ b/Source/Includes/Helper.ahk @@ -104,21 +104,20 @@ MaybeOpenOrCloseHelperWindowManual() MaybeCreateHelperWindow() { Global Helper_id - global HelperGui ;Don't open a new Helper Window if One is already open IfNotEqual, Helper_id, Return Global XY - Gui, %HelperGui%:+Owner -MinimizeBox -MaximizeBox +AlwaysOnTop - Gui, %HelperGui%:+LabelHelper_ - Gui, %HelperGui%:Add, Text,,List appears here + Gui, HelperGui:+Owner -MinimizeBox -MaximizeBox +AlwaysOnTop + Gui, HelperGui:+LabelHelper_ + Gui, HelperGui:Add, Text,,List appears here IfNotEqual, XY, { StringSplit, Pos, XY, `, - Gui, %HelperGui%:Show, X%Pos1% Y%Pos2% NoActivate + Gui, HelperGui:Show, X%Pos1% Y%Pos2% NoActivate } else { - Gui, %HelperGui%:Show, NoActivate + Gui, HelperGui:Show, NoActivate } WinGet, Helper_id, ID,,List appears here WinSet, Transparent, 125, ahk_id %Helper_id% @@ -163,7 +162,6 @@ HelperWindowClosed() MaybeSaveHelperWindowPos() { global Helper_id - global HelperGui IfNotEqual, Helper_id, { global XY @@ -172,7 +170,7 @@ MaybeSaveHelperWindowPos() XY = %hX%`,%hY% XYSaved = 1 Helper_id = - Gui, %HelperGui%:Hide + Gui, HelperGui:Hide } Return } diff --git a/Source/Includes/ListBox.ahk b/Source/Includes/ListBox.ahk index 2b1bd79..685627b 100644 --- a/Source/Includes/ListBox.ahk +++ b/Source/Includes/ListBox.ahk @@ -4,7 +4,7 @@ InitializeListBox() { global - Gui, %ListBoxGui%: -Caption +AlwaysOnTop +ToolWindow +Delimiter%DelimiterChar% + Gui, ListBoxGui: -Caption +AlwaysOnTop +ToolWindow +Delimiter%DelimiterChar% Local ListBoxFont IfNotEqual, ListBoxFontOverride, @@ -15,12 +15,12 @@ InitializeListBox() else ListBoxFont = Tahoma } - Gui, %ListBoxGui%:Font, s%ListBoxFontSize%, %ListBoxFont% + Gui, ListBoxGui:Font, s%ListBoxFontSize%, %ListBoxFont% Loop, %ListBoxRows% { GuiControl, -Redraw, ListBox%A_Index% - Gui, %ListBoxGui%: Add, ListBox, vListBox%A_Index% R%A_Index% X0 Y0 GListBoxClick + Gui, ListBoxGui: Add, ListBox, vListBox%A_Index% R%A_Index% X0 Y0 GListBoxClick } Return } @@ -45,7 +45,7 @@ CloseListBox() global ListBox_ID IfNotEqual, ListBox_ID, { - Gui, %ListBoxGui%: Hide + Gui, ListBoxGui: Hide ListBox_ID = DisableKeyboardHotKeys() } @@ -231,24 +231,24 @@ ShowListBox() { IfEqual, A_Index, %Rows% { - GuiControl, %ListBoxGui%: -Redraw, ListBox%A_Index% - GuiControl, %ListBoxGui%: Move, ListBox%A_Index%, w%ListBoxSizeX% - GuiControl, %ListBoxGui%: ,ListBox%A_Index%, %DelimiterChar%%match% + GuiControl, ListBoxGui: -Redraw, ListBox%A_Index% + GuiControl, ListBoxGui: Move, ListBox%A_Index%, w%ListBoxSizeX% + GuiControl, ListBoxGui: ,ListBox%A_Index%, %DelimiterChar%%match% MatchEnd := MatchStart + (ListBoxRows - 1) IfNotEqual, MatchPos, { - GuiControl, %ListBoxGui%: Choose, ListBox%A_Index%, %MatchEnd% - GuiControl, %ListBoxGui%: Choose, ListBox%A_Index%, %MatchPos% + GuiControl, ListBoxGui: Choose, ListBox%A_Index%, %MatchEnd% + GuiControl, ListBoxGui: Choose, ListBox%A_Index%, %MatchPos% } - GuiControl, %ListBoxGui%: +AltSubmit +Redraw, ListBox%A_Index% - GuiControl, %ListBoxGui%: Show, ListBox%A_Index% - GuiControlGet, ListBoxActualSize, %ListBoxGui%: Pos, ListBox%A_Index% + GuiControl, ListBoxGui: +AltSubmit +Redraw, ListBox%A_Index% + GuiControl, ListBoxGui: Show, ListBox%A_Index% + GuiControlGet, ListBoxActualSize, ListBoxGui: Pos, ListBox%A_Index% Continue } - GuiControl, %ListBoxGui%: Hide, ListBox%A_Index% - GuiControl, %ListBoxGui%: -Redraw, ListBox%A_Index% - GuiControl, %ListBoxGui%: , ListBox%A_Index%, %DelimiterChar% + GuiControl, ListBoxGui: Hide, ListBox%A_Index% + GuiControl, ListBoxGui: -Redraw, ListBox%A_Index% + GuiControl, ListBoxGui: , ListBox%A_Index%, %DelimiterChar% } ForceWithinMonitorBounds(ListBoxPosX,ListBoxPosY,ListBoxActualSizeH,ListBoxActualSizeW,Rows,ListBoxOffset) @@ -259,8 +259,8 @@ ShowListBox() return } - Gui, %ListBoxGui%: Show, NoActivate X%ListBoxPosX% Y%ListBoxPosY% H%ListBoxActualSizeH% W%ListBoxActualSizeW%, Word List Appears Here. - Gui, %ListBoxGui%: +LastFound +AlwaysOnTop + Gui, ListBoxGui: Show, NoActivate X%ListBoxPosX% Y%ListBoxPosY% H%ListBoxActualSizeH% W%ListBoxActualSizeW%, Word List Appears Here. + Gui, ListBoxGui: +LastFound +AlwaysOnTop IfEqual, ListBox_ID, { EnableKeyboardHotKeys() diff --git a/Source/Includes/Settings.ahk b/Source/Includes/Settings.ahk new file mode 100644 index 0000000..38f5243 --- /dev/null +++ b/Source/Includes/Settings.ahk @@ -0,0 +1,875 @@ +; GUI for TypingAid 2.15 configuration +; by HugoV / Maniac + +LaunchSettings: + +ReadPreferences() + +hIntro= +( +TypingAid is a simple, compact, and handy auto-completion utility. + +It is customizable enough to be useful for regular typing and for programming. + +Features: +As you type your word, up to 10 (or as defined in the Preferences file) matches will appear in a drop-down dialog, numbered 1 - 0 (10th). To choose the match you want just hit the associated number on your keyboard (numpad does not work). Alternatively you can select an item from the drop-down using the Up/Down arrows. You can define a fixed position for the drop-down dialog to appear by hitting Ctrl-Shift-H to open a small helper window, or by specifying a list of programs in the preferences file. Please note that in Firefox, Thunderbird, and certain other programs you will probably need to open the helper window due to issues detecting the caret position. + +Words should be stored in a file named 'Wordlist.txt' which should be located in the script directory. These words may be commented out by prefixing with a semicolon or simply removed or added. Words may include terminating characters (such as space), but you must select the word before typing the terminating character. + +In addition to being able to use the number keys to select a word, you can select words from the drop-down via the Up/Down arrows. Hitting Up on the first item will bring you to the last and hitting Down on the last item will bring you to the first. Hitting Page Up will bring you up 10 items, or to the first item. Hitting Page Down will bring you down 10 items, or to the last item. You can hit Tab, Right Arrow, Ctrl-Space, or Ctrl-Enter to autocomplete the selected word. This feature can be disabled or have some of its behavior modified via the Preferences file. + +The script will learn words as you type them if LearnMode=On in the preferences file. If you type a word more than 5 times (or as defined in the preferences.ini file) in a single session the word will be added to the wordlist.txt file. Learned words are stored below the predefined words in the wordlist under a keyword called ;LEARNEDWORDS;. Learned words will always appear below predefined words, but will be ranked and ordered among other learned words based on the frequency you type them. You can permanently learn a word by highlighting a word and hitting Ctrl-Shift-C (this works even if LearnMode=Off). If you want to remove any learned words from your list you must manually remove them. +When LearnMode=On, entries in the wordlist file and learned words are limited to a length of 123 (or 61 when using Unicode AHK) characters due to internal workings. + +The script will automatically create a file named preferences.ini in the script directory. This file allows for customization of the script. +Customizable features include (see also detailed description below) + + * List of programs for which you want TypingAid enabled. + * List of programs for which you do not want TypingAid enabled. + * Number of characters before the list of words appears. + * Number of times you must press a number hotkey to select the associated word (options are 1 and 2, 2 has had minimal testing). + * Enable or disable learning mode. + * Number of times you must type a word before it is permanently learned. + * Number of characters a word needs to have in order to be learned. + * Enable, disable, or customize the arrow key's functionality. + * Disable certain keys for autocompleting a word selected via the arrow keys. + * Enable or disable the resetting of the List Box on a mouseclick. + * Change the method used to send the word to the screen. + * List of characters which terminate a word. + * List of characters which terminate a word and start a new word. + * List of programs for which you want the Helper Window to automatically open. + * Number of pixels below the caret to display the List Box. + * List Box Default Font of fixed (Courier New) or variable (Tahoma) width. + * List Box Default Font override. + * List Box Font Size. + * List Box Character Width to override the computed character width. + * List Box Opacity setting to set the transparency of the List Box. + * List Box Rows to define the number of items to show in the list at once. + +Unicode Support: +Full (untested) for UTF-8 character set. +Unicode AutoHotKey is required. +) + +fontlist:=Writer_enumFonts() ; see note at function for credit + + +; --- +; The following part was copied from AGU`s script. +; http://www.autohotkey.com/forum/viewtopic.php?p=37633#37633 +; Begin + ; Retrieve scripts PID + Process, Exist + pid_this := ErrorLevel + + ; Retrieve unique ID number (HWND/handle) + WinGet, hw_gui, ID, ahk_class AutoHotkeyGUI ahk_pid %pid_this% + + ; Call "HandleMessage" when script receives WM_SETCURSOR message + WM_SETCURSOR = 0x20 + OnMessage( WM_SETCURSOR, "HandleMessage" ) + + ; Call "HandleMessage" when script receives WM_MOUSEMOVE message + WM_MOUSEMOVE = 0x200 + OnMessage( WM_MOUSEMOVE, "HandleMessage" ) +; End +; --- + + +GuiWidth=700 +GuiHeight=480 +GuiRows = 8 +GuiHelpIcon = %A_Space%(?)%A_Space% + +SeparatorX = 10 +SeparatorY = 8 +EditIndentX = 10 +EditIndentY = 20 +HelpIndentX = 30 +HelpIndentY = 0 + +RowHeight := (GuiHeight - ((GuiRows +1 ) * SeparatorY ))/GuiRows + +AdvancedSettingsTextHeight = 15 +AdvGuiHeight := GuiHeight + AdvancedSettingsTextHeight + SeparatorY + ( 2 * ( SeparatorY + RowHeight) ) + +TextRowY := (RowHeight - 6 ) / 3 + +TabWidth:=GuiWidth-4 +TabHeight:=GuiHeight-75 +TabHeightEdit:=TabHeight-40 + +OneColGroupWidth := GuiWidth - (2 * SeparatorX) +TwoColGroupWidth := (GuiWidth - (3 * SeparatorX))/2 +ThreeColGroupWidth := (GuiWidth - (4 * SeparatorX))/3 + +OneColEditWidth := OneColGroupWidth - (EditIndentX * 2) +TwoColEditWidth := TwoColGroupWidth - (EditIndentX * 2) +ThreeColEditWidth := ThreeColGroupWidth - (EditIndentX * 2) +OneColEditWidthEdit := OneColEditWidth - 140 +OneColEditButton := OneColEditWidthEdit + 30 + +Group1BoxX := SeparatorX +Group1EditX := Group1BoxX + EditIndentX +Group1of1HelpX := Group1BoxX + OneColGroupWidth - HelpIndentX +Group1of2HelpX := Group1BoxX + TwoColGroupWidth - HelpIndentX +Group1of3HelpX := Group1BoxX + ThreeColGroupWidth - HelpIndentX + +Group2of2BoxX := Group1BoxX + TwoColGroupWidth + SeparatorX +Group2of2EditX := Group2of2BoxX + EditIndentX +Group2of2HelpX := Group2of2BoxX + TwoColGroupWidth - HelpIndentX + +Group2of3BoxX := Group1BoxX + ThreeColGroupWidth + SeparatorX +Group2of3EditX := Group2of3BoxX + EditIndentX +Group2of3HelpX := Group2of3BoxX + ThreeColGroupWidth - HelpIndentX + +Group3of3BoxX := Group2of3BoxX + ThreeColGroupWidth + SeparatorX +Group3of3EditX := Group3of3BoxX + EditIndentX +Group3of3HelpX := Group3of3BoxX + ThreeColGroupWidth - HelpIndentX + +RowY := SeparatorY + 30 +RowHelpY := RowY - HelpIndentY +RowEditY := RowY + EditIndentY + +Gui, Font, s8, Arial + +Gui, MenuGui:Add, Tab2, x2 w%TabWidth% h%TabHeight%, General Settings|Wordlist Box|Programs|Advanced (Experts Only)|About && Help + +Gui, MenuGui:Tab, 1 ; General Settings + +Gui, MenuGui:Add, GroupBox, x%Group1BoxX% y%RowY% w%ThreeColGroupWidth% h%RowHeight% , Learn new words as you type +_LearnModeOptions=|On|Off| +StringReplace, _LearnModeOptions, _LearnModeOptions, |%LearnMode%|,|%LearnMode%|| +StringTrimLeft, _LearnModeOptions, _LearnModeOptions, 1 +Gui, MenuGui:Add, DDL, x%Group1EditX% y%RowEditY% r5 vLearnMode, %_LearnModeOptions% +Gui, MenuGui:Font, cGreen +Gui, MenuGui:Add, Text, x%Group1of3HelpX% y%RowHelpY% vhLearnMode gHelpMe, %GuiHelpIcon% +Gui, MenuGui:Font, cBlack + + +Gui, MenuGui:Add, GroupBox, x%Group2of3BoxX% y%RowY% w%ThreeColGroupWidth% h%RowHeight% , Minimum length of word to learn +_LearnLengthOptions=|1|2|3|4|5|6|7|8|9|10|11|12|13|14|15| +StringReplace, _LearnLengthOptions, _LearnLengthOptions, |%LearnLength%|,|%LearnLength%|| +StringTrimLeft, _LearnLengthOptions, _LearnLengthOptions, 1 +Gui, MenuGui:Add, DDL, x%Group2of3EditX% y%RowEditY% r5 vLearnLength, %_LearnLengthOptions% +Gui, MenuGui:Font, cGreen +Gui, MenuGui:Add, Text, x%Group2of3HelpX% y%RowHelpY% vhLearnLength gHelpMe, %GuiHelpIcon% +Gui, MenuGui:Font, cBlack + + +Gui, MenuGui:Add, GroupBox, x%Group3of3BoxX% y%RowY% w%ThreeColGroupWidth% h%RowHeight%, Add to wordlist after X times +_LearnCountOptions=|1|2|3|4|5|6|7|8|9|10|11|12|13|14|15| +StringReplace, _LearnCountOptions, _LearnCountOptions, |%LearnCount%|,|%LearnCount%|| +StringTrimLeft, _LearnCountOptions, _LearnCountOptions, 1 +Gui, MenuGui:Add, DDL, x%Group3of3EditX% y%RowEditY% r5 vLearnCount, %_LearnCountOptions% +Gui, MenuGui:Font, cGreen +Gui, MenuGui:Add, Text, x%Group3of3HelpX% y%RowHelpY% vhLearnCount gHelpMe, %GuiHelpIcon% +Gui, MenuGui:Font, cBlack + + +RowY := RowY + RowHeight + SeparatorY +RowHelpY := RowY - HelpIndentY +RowEditY := RowY + EditIndentY + +Gui, MenuGui:Add, GroupBox, x%Group1BoxX% y%RowY% w%ThreeColGroupWidth% h%RowHeight% , Maximum number of results to show +_ListBoxRowsOptions=|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20| +StringReplace, _ListBoxRowsOptions, _ListBoxRowsOptions, |%ListBoxRows%|,|%ListBoxRows%|| +StringTrimLeft, _ListBoxRowsOptions, _ListBoxRowsOptions, 1 +Gui, MenuGui:Add, DDL, x%Group1EditX% y%RowEditY% r5 vListBoxRows, %_ListBoxRowsOptions% +Gui, MenuGui:Font, cGreen +Gui, MenuGui:Add, Text, x%Group1of3HelpX% y%RowHelpY% vhListBoxRows gHelpMe, %GuiHelpIcon% +Gui, MenuGui:Font, cBlack + + +/* MaxMatches removed +Gui, MenuGui:Add, GroupBox, x%Group1BoxX% y%RowY% w%ThreeColGroupWidth% h%RowHeight% , Max. number of matches +_MaxMatchesOptions=|10|11|12|13|14|15|16|17|18|19|20| +StringReplace, _MaxMatchesOptions, _MaxMatchesOptions, |%MaxMatches%|,|%MaxMatches%|| +StringTrimLeft, _MaxMatchesOptions, _MaxMatchesOptions, 1 +Gui, MenuGui:Add, DDL, x%Group1EditX% y%RowEditY% r5 vMaxMatches, %_MaxMatchesOptions% +Gui, MenuGui:Font, cGreen +Gui, MenuGui:Add, Text, x%Group1of3HelpX% y%RowHelpY% vhMaxMatches gHelpMe, %GuiHelpIcon% +Gui, MenuGui:Font, cBlack +*/ + +Gui, MenuGui:Add, GroupBox, x%Group2of3BoxX% y%RowY% w%ThreeColGroupWidth% h%RowHeight% , Show wordlist after X characters +_LengthOptions=|1|2|3|4|5|6|7|8|9|10|11|12|13|14|15| +StringReplace, _LengthOptions, _LengthOptions, |%Wlen%|,|%Wlen%|| +StringTrimLeft, _LengthOptions, _LengthOptions, 1 +Gui, MenuGui:Add, DDL, x%Group2of3EditX% y%RowEditY% r5 vLength, %_LengthOptions% +Gui, MenuGui:Font, cGreen +Gui, MenuGui:Add, Text, x%Group2of3HelpX% y%RowHelpY% vhLength gHelpMe, %GuiHelpIcon% +Gui, MenuGui:Font, cBlack + + +Gui, MenuGui:Add, GroupBox, x%Group3of3BoxX% y%RowY% w%ThreeColGroupWidth% h%RowHeight% , Send Method +_SendMethodOptionsText=1 - Default (Type)|2 - Fast (Type)|3 - Slow (Type)|4 - Default (Paste)|5 - Fast (Paste)|6 - Slow (Paste)|7 - Alternate method +_SendMethodOptionsCode=1|2|3|1C|2C|3C|4C +Loop, parse, _SendMethodOptionsCode, | + If (SendMethod = A_LoopField) + _SendCount:=A_Index +Loop, parse, _SendMethodOptionsText, | + { + _SendMethodOptions .= A_LoopField "|" + If (A_Index = _SendCount) + _SendMethodOptions .= "|" + } +Gui, MenuGui:Add, DDL, x%Group3of3EditX% y%RowEditY% w%ThreeColEditWidth% r5 v_SendMethodC altsubmit, %_SendMethodOptions% +Gui, MenuGui:Font, cGreen +Gui, MenuGui:Add, Text, x%Group3of3HelpX% y%RowHelpY% vhSendMethod gHelpMe, %GuiHelpIcon% +Gui, MenuGui:Font, cBlack + + +RowY := RowY + RowHeight + SeparatorY +RowHelpY := RowY - HelpIndentY +RowEditY := RowY + EditIndentY + +Gui, MenuGui:Add, GroupBox, x%Group1BoxX% y%RowY% w%TwoColGroupWidth% h%RowHeight% , Auto Complete Keys +; E = Ctrl + Enter +; S = Ctrl + Space +; T = Tab +; R = Right Arrow +; N = Number Keys +; U = Enter +CheckedE=Checked +CheckedS=Checked +CheckedT=Checked +CheckedR=Checked +CheckedN=Checked +CheckedU=Checked +Loop, parse, DisabledAutoCompleteKeys +{ + If (A_LoopField = "E") + CheckedE = + If (A_LoopField = "S") + CheckedS = + If (A_LoopField = "T") + CheckedT = + If (A_LoopField = "R") + CheckedR = + If (A_LoopField = "N") + CheckedN = + If (A_LoopField = "U") + CheckedU = +} + +CheckmarkIndent := TwoColEditWidth/3 + EditIndentX +Gui, MenuGui:Add, Checkbox, x%Group1EditX% yp+%TextRowY% vCtrlEnter %CheckedE%, Ctrl + Enter +Gui, MenuGui:Add, Checkbox, xp%CheckmarkIndent% yp vTab %CheckedT%, Tab +Gui, MenuGui:Add, Checkbox, xp%CheckmarkIndent% yp vRightArrow %CheckedR%, Right Arrow +Gui, MenuGui:Add, Checkbox, x%Group1EditX% yp+%TextRowY% vCtrlSpace %CheckedS%, Ctrl + Space +Gui, MenuGui:Add, Checkbox, xp%CheckmarkIndent% yp vNumberKeys %CheckedN%, Number Keys +Gui, MenuGui:Add, Checkbox, xp%CheckmarkIndent% yp vEnter %CheckedU%, Enter + +Gui, MenuGui:Font, cGreen +Gui, MenuGui:Add, Text, x%Group1of2HelpX% y%RowHelpY% vhDisabledAutoCompleteKeys gHelpMe, %GuiHelpIcon% +Gui, MenuGui:Font, cBlack + + +Gui, MenuGui:Add, GroupBox, x%Group2of2BoxX% y%RowY% w%TwoColGroupWidth% h%RowHeight% , Wordlist row highlighting +_ArrowKeyMethodOptionsText=Off - only use the number keys|First - reset selected word to the beginning|LastWord - keep last word selected|LastPosition - keep the last cursor position +Loop, parse, _ArrowKeyMethodOptionsText, | + { + _ArrowKeyMethodOptions .= A_LoopField "|" + StringSplit, Split, A_LoopField, - + Split1=%Split1% ; autotrim + If (Split1 = ArrowKeyMethod) + { + _ArrowKeyMethodOptions .= "|" + } + } +Gui, MenuGui:Add, DDL, x%Group2of2EditX% y%RowEditY% w%TwoColEditWidth% r5 vArrowKeyMethod altsubmit, %_ArrowKeyMethodOptions% +Gui, MenuGui:Font, cGreen +Gui, MenuGui:Add, Text, x%Group2of2HelpX% y%RowHelpY% vhArrowKeyMethod gHelpMe, %GuiHelpIcon% +Gui, MenuGui:Font, cBlack + + +RowY := RowY + RowHeight + SeparatorY +RowHelpY := RowY - HelpIndentY +RowEditY := RowY + EditIndentY + +Gui, MenuGui:Add, GroupBox, x%Group1BoxX% y%RowY% w%ThreeColGroupWidth% h%RowHeight% , Case correction +_CaseCorrectionOptions=|On|Off| +If (NoBackSpace = "on") + _CaseCorrection=Off +Else If (NoBackSpace = "off") + _CaseCorrection=On +StringReplace, _CaseCorrectionOptions, _CaseCorrectionOptions, |%_CaseCorrection%|,|%_CaseCorrection%|| +StringTrimLeft, _CaseCorrectionOptions, _CaseCorrectionOptions, 1 +Gui, MenuGui:Add, DDL, x%Group1EditX% y%RowEditY% r5 v_CaseCorrection, %_CaseCorrectionOptions% +Gui, MenuGui:Font, cGreen +Gui, MenuGui:Add, Text, x%Group1of3HelpX% y%RowHelpY% vhNoBackSpace gHelpMe, %GuiHelpIcon% +Gui, MenuGui:Font, cBlack + + +Gui, MenuGui:Add, GroupBox, x%Group2of3BoxX% y%RowY% w%ThreeColGroupWidth% h%RowHeight% , Monitor mouse clicks +_DetectMouseClickMoveOptions=|On|Off| +StringReplace, _DetectMouseClickMoveOptions, _DetectMouseClickMoveOptions, |%DetectMouseClickMove%|,|%DetectMouseClickMove%|| +StringTrimLeft, _DetectMouseClickMoveOptions, _DetectMouseClickMoveOptions, 1 +Gui, MenuGui:Add, DDL, x%Group2of3EditX% y%RowEditY% r5 vDetectMouseClickMove, %_DetectMouseClickMoveOptions% +Gui, MenuGui:Font, cGreen +Gui, MenuGui:Add, Text, x%Group2of3HelpX% y%RowHelpY% vhDetectMouseClickMove gHelpMe, %GuiHelpIcon% +Gui, MenuGui:Font, cBlack + +Gui, MenuGui:Add, GroupBox, x%Group3of3BoxX% y%RowY% w%ThreeColGroupWidth% h%RowHeight% , Type space after autcomplete +_AutoSpaceOptions=|On|Off| +StringReplace, _AutoSpaceOptions, _AutoSpaceOptions, |%AutoSpace%|,|%AutoSpace%|| +StringTrimLeft, _AutoSpaceOptions, _AutoSpaceOptions, 1 +Gui, MenuGui:Add, DDL, x%Group3of3EditX% y%RowEditY% r5 vAutoSpace, %_AutoSpaceOptions% +Gui, MenuGui:Font, cGreen +Gui, MenuGui:Add, Text, x%Group3of3HelpX% y%RowHelpY% vhAutoSpace gHelpMe, %GuiHelpIcon% +Gui, MenuGui:Font, cBlack + +;NumPresses +; + +Gui, MenuGui:Tab, 2 ; listbox --------------------------------------------------------- + + +RowY := SeparatorY + 30 +RowHelpY := RowY - HelpIndentY +RowEditY := RowY + EditIndentY + + +Gui, MenuGui:Add, GroupBox, x%Group1BoxX% y%RowY% w%ThreeColGroupWidth% h%RowHeight% , List appears X pixels below cursor +_ListBoxOffsetOptions=|1|2|3|4|5|6|7|8|9|10|11|12|13|14|15| +StringReplace, _ListBoxOffsetOptions, _ListBoxOffsetOptions, |%ListBoxOffset%|,|%ListBoxOffset%|| +StringTrimLeft, _ListBoxOffsetOptions, _ListBoxOffsetOptions, 1 +Gui, MenuGui:Add, DDL, x%Group1EditX% y%RowEditY% r5 vListBoxOffset, %_ListBoxOffsetOptions% +Gui, MenuGui:Font, cGreen +Gui, MenuGui:Add, Text, x%Group1of3HelpX% y%RowHelpY% vhListBoxOffset gHelpMe, %GuiHelpIcon% +Gui, MenuGui:Font, cBlack + +Gui, MenuGui:Add, GroupBox, x%Group2of3BoxX% y%RowY% w%ThreeColGroupWidth% h%RowHeight% , Fixed width font in list +_ListBoxFontFixedOptions=|On|Off| +StringReplace, _ListBoxFontFixedOptions, _ListBoxFontFixedOptions, |%ListBoxFontFixed%|,|%ListBoxFontFixed%|| +StringTrimLeft, _ListBoxFontFixedOptions, _ListBoxFontFixedOptions, 1 +Gui, MenuGui:Add, DDL, x%Group2of3EditX% y%RowEditY% r5 vListBoxFontFixed, %_ListBoxFontFixedOptions% +Gui, MenuGui:Font, cGreen +Gui, MenuGui:Add, Text, x%Group2of3HelpX% y%RowHelpY% vhListBoxFontFixed gHelpMe, %GuiHelpIcon% +Gui, MenuGui:Font, cBlack + +Gui, MenuGui:Add, GroupBox, x%Group3of3BoxX% y%RowY% w%ThreeColGroupWidth% h%RowHeight% , Font size in list +_ListBoxFontSizeOptions=|8|9|10|11|12|13|14|15|16|17|18|19|20| +StringReplace, _ListBoxFontSizeOptions, _ListBoxFontSizeOptions, |%ListBoxFontSize%|,|%ListBoxFontSize%|| +StringTrimLeft, _ListBoxFontSizeOptions, _ListBoxFontSizeOptions, 1 +Gui, MenuGui:Add, DDL, x%Group3of3EditX% y%RowEditY% r5 vListBoxFontSize, %_ListBoxFontSizeOptions% +Gui, MenuGui:Font, cGreen +Gui, MenuGui:Add, Text, x%Group3of3HelpX% y%RowHelpY% vhListBoxFontSize gHelpMe, %GuiHelpIcon% +Gui, MenuGui:Font, cBlack + +RowY := RowY + RowHeight + SeparatorY +RowHelpY := RowY - HelpIndentY +RowEditY := RowY + EditIndentY + + + +Gui, MenuGui:Add, GroupBox, x%Group1BoxX% y%RowY% w%ThreeColGroupWidth% h%RowHeight% , List opacity +;_ListBoxOpacityOptions=|150|175|200|205|210|215|255| +;StringReplace, _ListBoxOpacityOptions, _ListBoxOpacityOptions, |%ListBoxOpacity%|,|%ListBoxOpacity%|| +;StringTrimLeft, _ListBoxOpacityOptions, _ListBoxOpacityOptions, 1 +;Gui, MenuGui:Add, DDL, x%Group2of3EditX% y%RowEditY% r5 vListBoxOpacity, %_ListBoxOpacityOptions% +Gui, MenuGui:Add, Edit, xp+10 yp+20 w%ThreeColEditWidth% vListBoxOpacity, %ListBoxOpacity% +Gui, MenuGui:Font, cGreen +Gui, MenuGui:Add, Text, x%Group1of3HelpX% y%RowHelpY% vhListBoxOpacity gHelpMe, %GuiHelpIcon% +Gui, MenuGui:Font, cBlack + +Gui, MenuGui:Add, GroupBox, x%Group2of3BoxX% y%RowY% w%ThreeColGroupWidth% h%RowHeight% , List character width override +_ListBoxCharacterWidthOptions=||5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20| +StringReplace, _ListBoxCharacterWidthOptions, _ListBoxCharacterWidthOptions, |%ListBoxCharacterWidth%|,|%ListBoxCharacterWidth%|| +StringTrimLeft, _ListBoxCharacterWidthOptions, _ListBoxCharacterWidthOptions, 1 +Gui, MenuGui:Add, DDL, x%Group2of3EditX% y%RowEditY% r5 vListBoxCharacterWidth, %_ListBoxCharacterWidthOptions% +Gui, MenuGui:Font, cGreen +Gui, MenuGui:Add, Text, x%Group2of3HelpX% y%RowHelpY% vhListBoxCharacterWidth gHelpMe, %GuiHelpIcon% +Gui, MenuGui:Font, cBlack + +Gui, MenuGui:Add, GroupBox, x%Group3of3BoxX% y%RowY% w%ThreeColGroupWidth% h%RowHeight% , List font +fontlist := "|" . fontlist . "|" +sort, fontlist, D| +If (listboxfont = "") or (listboxfont = " ") + StringReplace, fontlist, fontlist, |Courier New|, |Courier New|| +Gui, MenuGui:Add, DDL, x%Group3of3EditX% y%RowEditY% r10 w200 vListBoxFontOverride, %fontlist% +Gui, MenuGui:Font, cGreen +Gui, MenuGui:Add, Text, x%Group3of3HelpX% y%RowHelpY% vhListBoxFontOverride gHelpMe, %GuiHelpIcon% +Gui, MenuGui:Font, cBlack +/* +Gui, MenuGui:Add, GroupBox, x%Group3of3BoxX% y%RowY% w%ThreeColGroupWidth% h%RowHeight% , List size +_ListBoxRowsOptions=|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20| +StringReplace, _ListBoxRowsOptions, _ListBoxRowsOptions, |%ListBoxRows%|,|%ListBoxRows%|| +StringTrimLeft, _ListBoxRowsOptions, _ListBoxRowsOptions, 1 +Gui, MenuGui:Add, DDL, x%Group3of3EditX% y%RowEditY% r5 vListBoxRows, %_ListBoxRowsOptions% +Gui, MenuGui:Font, cGreen +Gui, MenuGui:Add, Text, x%Group3of3HelpX% y%RowHelpY% vhListBoxRows gHelpMe, %GuiHelpIcon% +Gui, MenuGui:Font, cBlack +*/ + +RowY := RowY + RowHeight + SeparatorY +RowHelpY := RowY - HelpIndentY +RowEditY := RowY + EditIndentY + + +/* +Gui, MenuGui:Add, GroupBox, x%Group1BoxX% y%RowY% w%ThreeColGroupWidth% h%RowHeight% , List font +fontlist := "|" . fontlist . "|" +sort, fontlist, D| +If (listboxfont = "") or (listboxfont = " ") + StringReplace, fontlist, fontlist, |Courier New|, |Courier New|| +Gui, MenuGui:Add, DDL, x%Group1EditX% y%RowEditY% r10 w200 vListBoxFontOverride, %fontlist% +Gui, MenuGui:Font, cGreen +Gui, MenuGui:Add, Text, x%Group1of3HelpX% y%RowHelpY% vhListBoxFontOverride gHelpMe, %GuiHelpIcon% +Gui, MenuGui:Font, cBlack +*/ + + +Gui, MenuGui:Tab, 3 ; Programs --------------------------------------------------------- + + +RowY := SeparatorY + 30 +RowHelpY := RowY - HelpIndentY +RowEditY := RowY + EditIndentY + +Gui, MenuGui:Add, GroupBox, x%Group1BoxX% y%RowY% w%OneColGroupWidth% h%RowHeight% , Window titles you want TypingAid enabled for +Gui, MenuGui:Add, Edit, x%Group1EditX% y%RowEditY% w%OneColEditWidthEdit% vIncludeProgramTitles, %IncludeProgramTitles% +Gui, MenuGui:Add, Button, x%OneColEditButton% yp w130 gSetEnableTitles, Edit +Gui, MenuGui:Font, cGreen +Gui, MenuGui:Add, Text, x%Group1of1HelpX% y%RowHelpY% vhIncludeProgramTitles gHelpMe, %GuiHelpIcon% +Gui, MenuGui:Font, cBlack + +RowY := RowY + RowHeight + SeparatorY +RowHelpY := RowY - HelpIndentY +RowEditY := RowY + EditIndentY + +Gui, MenuGui:Add, GroupBox, x%Group1BoxX% y%RowY% w%OneColGroupWidth% h%RowHeight% , Window titles you want TypingAid disabled for +Gui, MenuGui:Add, Edit, x%Group1EditX% y%RowEditY% w%OneColEditWidthEdit% vExcludeProgramTitles, %ExcludeProgramTitles% +Gui, MenuGui:Add, Button, x%OneColEditButton% yp w130 gSetDisableTitles, Edit +Gui, MenuGui:Font, cGreen +Gui, MenuGui:Add, Text, x%Group1of1HelpX% y%RowHelpY% vhExcludeProgramTitles gHelpMe, %GuiHelpIcon% +Gui, MenuGui:Font, cBlack + +RowY := RowY + RowHeight + SeparatorY +RowHelpY := RowY - HelpIndentY +RowEditY := RowY + EditIndentY + +Gui, MenuGui:Add, GroupBox, x%Group1BoxX% y%RowY% w%OneColGroupWidth% h%RowHeight% , Processes you want TypingAid enabled for +Gui, MenuGui:Add, Edit, x%Group1EditX% y%RowEditY% w%OneColEditWidthEdit% vIncludeProgramExecutables, %IncludeProgramExecutables% +Gui, MenuGui:Add, Button, x%OneColEditButton% yp w130 gSetEnableProcess, Edit +Gui, MenuGui:Font, cGreen +Gui, MenuGui:Add, Text, x%Group1of1HelpX% y%RowHelpY% vhIncludeProgramExecutables gHelpMe, %GuiHelpIcon% +Gui, MenuGui:Font, cBlack + +RowY := RowY + RowHeight + SeparatorY +RowHelpY := RowY - HelpIndentY +RowEditY := RowY + EditIndentY + +Gui, MenuGui:Add, GroupBox, x%Group1BoxX% y%RowY% w%OneColGroupWidth% h%RowHeight% , Processes you want TypingAid disabled for +Gui, MenuGui:Add, Edit, x%Group1EditX% y%RowEditY% w%OneColEditWidthEdit% vExcludeProgramExecutables, %ExcludeProgramExecutables% +Gui, MenuGui:Add, Button, x%OneColEditButton% yp w130 gSetDisableProcess, Edit +Gui, MenuGui:Font, cGreen +Gui, MenuGui:Add, Text, x%Group1of1HelpX% y%RowHelpY% vhExcludeProgramExecutables gHelpMe, %GuiHelpIcon% +Gui, MenuGui:Font, cBlack + +RowY := RowY + RowHeight + SeparatorY +RowHelpY := RowY - HelpIndentY +RowEditY := RowY + EditIndentY + +;HelperWindowProgramTitles + +Gui, MenuGui:Add, GroupBox, x%Group1BoxX% y%RowY% w%OneColGroupWidth% h%RowHeight% , Window titles you want the helper window enabled for +Gui, MenuGui:Add, Edit, x%Group1EditX% y%RowEditY% w%OneColEditWidthEdit% vHelperWindowProgramTitles, %HelperWindowProgramTitles% +Gui, MenuGui:Add, Button, x%OneColEditButton% yp w130 gSetHelpTitles, Edit +Gui, MenuGui:Font, cGreen +Gui, MenuGui:Add, Text, x%Group1of1HelpX% y%RowHelpY% vhHelperWindowProgramTitles gHelpMe, %GuiHelpIcon% +Gui, MenuGui:Font, cBlack + +RowY := RowY + RowHeight + SeparatorY +RowHelpY := RowY - HelpIndentY +RowEditY := RowY + EditIndentY + +;HelperWindowProgramExecutables + +Gui, MenuGui:Add, GroupBox, x%Group1BoxX% y%RowY% w%OneColGroupWidth% h%RowHeight% , Processes you want the helper window enabled for +Gui, MenuGui:Add, Edit, x%Group1EditX% y%RowEditY% w%OneColEditWidthEdit% vHelperWindowProgramExecutables, %HelperWindowProgramExecutables% +Gui, MenuGui:Add, Button, x%OneColEditButton% yp w130 gSetHelpProcess, Edit +Gui, MenuGui:Font, cGreen +Gui, MenuGui:Add, Text, x%Group1of1HelpX% y%RowHelpY% vhHelperWindowProgramExecutables gHelpMe, %GuiHelpIcon% +Gui, MenuGui:Font, cBlack + + + +Gui, MenuGui:Tab, 4 ; advanced ------------------------------------------------------------------------- + +RowY := SeparatorY + 30 +RowHelpY := RowY - HelpIndentY +RowEditY := RowY + EditIndentY + +Gui, MenuGui:Add, GroupBox, x%Group1BoxX% y%RowY% w%OneColGroupWidth% h%RowHeight% , Terminating Characters (see http://www.autohotkey.com/docs/KeyList.htm) +Gui, MenuGui:Add, Edit, x%Group1EditX% y%RowEditY% w%OneColEditWidth% vTerminatingCharacters, %TerminatingCharacters% +Gui, MenuGui:Font, cGreen +Gui, MenuGui:Add, Text, x%Group1of1HelpX% y%RowHelpY% vhTerminatingCharacters gHelpMe, %GuiHelpIcon% +Gui, MenuGui:Font, cBlack + +RowY := RowY + RowHeight + SeparatorY +RowEditY := RowY + EditIndentY +RowHelpY := RowY - HelpIndentY + +Gui, MenuGui:Add, GroupBox, x%Group1BoxX% y%RowY% w%OneColGroupWidth% h%RowHeight% , Force New Word Characters (comma separated) +Gui, MenuGui:Add, Edit, x%Group1EditX% y%RowEditY% w%OneColEditWidth% vForceNewWordCharacters, %ForceNewWordCharacters% +Gui, MenuGui:Font, cGreen +Gui, MenuGui:Add, Text, x%Group1of1HelpX% y%RowHelpY% vhForceNewWordCharacters gHelpMe, %GuiHelpIcon% +Gui, MenuGui:Font, cBlack + + + +Gui, MenuGui:Tab, 5 ; about & help -------------------------------------------- + +RowY := SeparatorY + 30 +RowHelpY := RowY - HelpIndentY +RowEditY := RowY + EditIndentY + +Gui, MenuGui:Add, Edit, ReadOnly x%Group1BoxX% y%RowY% w%OneColGroupWidth% h%TabHeightEdit%, %hIntro% `r`n`r`n %hIncludeProgramExecutables% `r`n`r`n %hIncludeProgramTitles% `r`n`r`n %hExcludeProgramExecutables% `r`n`r`n %hExcludeProgramTitles% `r`n`r`n %hLength% `r`n`r`n %hNumPresses% `r`n`r`n %hLearnMode% `r`n`r`n %hLearnCount% `r`n`r`n %hLearnLength% `r`n`r`n %hArrowKeyMethod% `r`n`r`n %hDisabledAutoCompleteKeys% `r`n`r`n %hDetectMouseClickMove% `r`n`r`n %hNoBackSpace% `r`n`r`n %hAutoSpace% `r`n`r`n %hSendMethod% `r`n`r`n %hTerminatingCharacters% `r`n`r`n %hForceNewWordCharacters% `r`n`r`n %hListBoxOffset% `r`n`r`n %hListBoxFontFixed% `r`n`r`n %hListBoxFontOverride% `r`n`r`n %hListBoxFontSize% `r`n`r`n %hListBoxCharacterWidth% `r`n`r`n %hListBoxOpacity% `r`n`r`n %hListBoxRows% `r`n`r`n %hHelperWindowProgramExecutables% `r`n`r`n %hHelperWindowProgramTitles% `r`n`r`n + + +Gui, MenuGui:tab, + +RowY := TabHeight+15 +RowHelpY := RowY - HelpIndentY +RowEditY := RowY + EditIndentY +RowThreeButtonWidth := (TwoColGroupWidth - (4 * EditIndentX))/3 +RowThreeButtonNext := EditIndentX + RowThreeButtonWidth + +Gui, MenuGui:Add, GroupBox, x%Group1BoxX% y%RowY% w%TwoColGroupWidth% h50 , Configuration +Gui, MenuGui:Add, Button, x%Group1EditX% y%RowEditY% w%RowThreeButtonWidth% gSave , Save && Exit +Gui, MenuGui:Add, Button, xp+%RowThreeButtonNext% yp w%RowThreeButtonWidth% gRestore, Restore default +Gui, MenuGui:Add, Button, xp+%RowThreeButtonNext% yp w%RowThreeButtonWidth% gCancel , Cancel + +Gui, MenuGui:Font, cBlack bold +Gui, MenuGui:Add, Text, x%Group2of2EditX% Yp-10 gVisitForum, TypingAid +Gui, MenuGui:Font, cBlack normal + +Gui, MenuGui:Add, Text, xp+70 Yp gVisitForum, is free software, support forum at +Gui, MenuGui:Font, cGreen +Gui, MenuGui:Add, Text, x%Group2of2EditX% Yp+%TextRowY% vVisitForum gVisitForum, www.autohotkey.com (click here) +Gui, MenuGui:Font, cBlack + +Gui, MenuGui:Show, h%GuiHeight% w%GuiWidth%, TypingAid Settings +Return + +SetEnableTitles: +TitleType=1 +GetExe=0 +ActiveList:=IncludeProgramTitles +Gosub, GetList +Return + +SetDisableTitles: +TitleType=2 +GetExe=0 +ActiveList:=ExcludeProgramTitles +Gosub, GetList +Return + +SetEnableProcess: +TitleType=3 +GetExe=1 +ActiveList:=IncludeProgramExecutables +Gosub, GetList +Return + +SetDisableProcess: +TitleType=4 +GetExe=1 +ActiveList:=ExcludeProgramExecutables +Gosub, GetList +Return + +SetHelpTitles: +TitleType=5 +GetExe=0 +ActiveList:=HelperWindowProgramTitles +Gosub, GetList +Return + +SetHelpProcess: +TitleType=6 +GetExe=1 +ActiveList:=HelperWindowProgramExecutables +Gosub, GetList +Return + + +Advanced: +WinGetPos, GuiXPos, GuiYPos,,,A +Gui, MenuGui:Show, h%AdvGuiHeight% w%GuiWidth% y%GuiYPos% x%GuiXPos%, New GUI Window +Return + +VisitForum: +MsgBox , 36 , Visit TypingAid forum (www.autohotkey.com), Do you want to visit the TypingAid forum on www.autohotkey.com? +IfMsgBox Yes + Run, http://www.autohotkey.com/board/topic/49517-ahk-11typingaid-v2198-word-autocompletion-utility/ +Return + +Restore: ; this could be changed to not restart TA +;FileDelete, Preferences.ini +;WinClose, \TypingAid +;Loop, TypingAid*.ahk +; { +; Run %A_LoopFileName% +; Break +; } +;Reload +Return + +Esc:: +MenuGuiGuiClose: +Cancel: +Gui, MenuGui:Destroy +;ExitApp +Return + +Save: +;Gui, MenuGui:Submit +Gui, MenuGui:Destroy + +;Loop, parse, _SendMethodOptionsCode, | ; get sendmethod +; If (_SendMethodC = A_Index) +; SendMethod:=A_LoopField + +;DisabledAutoCompleteKeys= +;If (CtrlEnter = 0) +; DisabledAutoCompleteKeys .= "E" +;If (Tab = 0) +; DisabledAutoCompleteKeys .= "T" +;If (CtrlSpace = 0) +; DisabledAutoCompleteKeys .= "S" +;If (RightArrow = 0) +; DisabledAutoCompleteKeys .= "R" +;If (NumberKeys = 0) +; DisabledAutoCompleteKeys .= "N" +;If (Enter = 0) +; DisabledAutoCompleteKeys .= "U" + +;If (_CaseCorrection = "on") +; NoBackSpace=Off +;Else If (_CaseCorrection = "off") +; NoBackSpace=On + +;Loop, parse, _ArrowKeyMethodOptionsText, | +; { +; StringSplit, Split, A_LoopField, - +; Split1=%Split1% ; autotrim +; If (ArrowKeyMethod = A_Index) +; { +; ArrowKeyMethod := Split1 +; } +; } + +;SavePreferences() +;WinClose, \TypingAid +;Loop, TypingAid*.ahk +; { +; Run %A_LoopFileName% +; Break +; } +;ExitApp +Return + +HelpMe: +StringReplace, _help, %A_GuiControl%, `;,,All +; MsgBox %_help% +MsgBox , 32 , TypingAid Help, %_help% +_help= +Return + + +; 2005 by shimanov +; http://www.autohotkey.com/forum/viewtopic.php?p=37696#37696 +HandleMessage( p_w, p_l, p_m, p_hw ) +{ + Global WM_SETCURSOR, WM_MOUSEMOVE + Static URL_hover, h_cursor_hand, h_old_cursor, Old_GuiControl + + if ( p_m = WM_SETCURSOR ) + { + if ( URL_hover) + return, true + } + else if ( p_m = WM_MOUSEMOVE ) + { + + + if A_GuiControl in hIncludeProgramExecutables,hIncludeProgramTitles,hExcludeProgramExecutables,hExcludeProgramTitles,hLength,hNumPresses,hLearnMode,hLearnCount,hLearnLength,hArrowKeyMethod,hDisabledAutoCompleteKeys,hDetectMouseClickMove,hNoBackSpace,hAutoSpace,hSendMethod,hTerminatingCharacters,hForceNewWordCharacters,hListBoxOffset,hListBoxFontFixed,hListBoxFontOverride,hListBoxFontSize,hListBoxCharacterWidth,hListBoxOpacity,hListBoxRows,hHelperWindowProgramExecutables,hHelperWindowProgramTitles,VisitForum + { + if URL_hover= + { + h_cursor_hand := DllCall( "LoadCursor", "uint", 0, "uint", 32651 ) + URL_hover = true + Gui, Font, cBlue ;;; xyz + GuiControl, Font, %A_GuiControl% ;;; xyz + Old_GuiControl = %A_GuiControl% + } + h_old_cursor := DllCall( "SetCursor", "uint", h_cursor_hand ) + } + else + { + if ( URL_hover ) + { + DllCall( "SetCursor", "uint", h_old_cursor ) + URL_hover= + Gui, Font, cGreen ;;; xyz + GuiControl, Font, %Old_GuiControl% ;;; xyz + Old_GuiControl= + } + } + } +} + + +GetList: +;Gui, MenuGui:Hide +RunningList= +If (GetExe = 1) ; get list of active processes + { + WinGet, id, list,,, Program Manager + Loop, %id% + { + tmptitle= + tmpid := id%A_Index% + WinGet, tmptitle, ProcessName, ahk_id %tmpid% + If (tmptitle <> "") + RunningList .= tmptitle "|" + } + } +Else If (GetExe = 0) ; get list of active window titles + { + WinGet, id, list,,, Program Manager + Loop, %id% + { + tmptitle= + tmpid := id%A_Index% + WinGetTitle, tmptitle, ahk_id %tmpid% + If (tmptitle <> "") + RunningList .= tmptitle "|" + } + } +GetExe=0 + +Sort,RunningList, D| U +Gui, ProcessList:+OwnerMenuGui +Gui, ProcessList:+Owner +Gui, MenuGui:+Disabled ; disable main window +Gui, ProcessList:Add, Text,x10 y10, Select program: +Gui, ProcessList:Add, DDL, x110 y10 w250 R10 gToEdit,%RunningList% +Gui, ProcessList:Add, Text,x10 y40, Edit: +Gui, ProcessList:Add, Edit, x110 y40 w250 vAddNew1 +Gui, ProcessList:Add, Button, xp+260 yp gAddNew1 w40 Default, Add +Gui, ProcessList:Add, Text, x10 yp+40, Current list: +Gui, ProcessList:Add, ListBox, x110 yp w250 r10, %ActiveList% +Gui, ProcessList:Add, Button, xp+260 yp gRemoveNew1 w40 , Del +Gui, ProcessList:Add, Text, x10 yp+170, a) Select a program or window from the list or type a name in the`n%A_Space%%A_Space%%A_Space%%A_Space%%A_Space%'Edit' control (you may need to edit it further)`nb) Click ADD to add it to the list`nc) To remove a program/title, select an item from the 'current list' and`n%A_Space%%A_Space%%A_Space%%A_Space%click DEL. +Gui, ProcessList:Add, Button, x10 yp+90 w190 gSaveTitleList, Save +Gui, ProcessList:Add, Button, xp+210 yp w190 gCancelTitle, Cancel +Gui, ProcessList:Show, w420 h380, TypingAid Settings +Return + +SaveTitleList: +ControlGet, List, List, , ListBox1 +Gui, ProcessList:Destroy +;Gui, MenuGui:Show +Gui, MenuGui:-Disabled ; enable main window +WinActivate, TypingAid Settings +StringReplace, List, List, `n, |, All + +If (TitleType=1) + { + IncludeProgramTitles:=List + GuiControl, MenuGui:Text, Edit2, + GuiControl, MenuGui:Text, Edit2, %IncludeProgramTitles% + } +Else If (TitleType=2) + { + ExcludeProgramTitles:=List + GuiControl, MenuGui:Text, Edit3, + GuiControl, MenuGui:Text, Edit3, %ExcludeProgramTitles% + } +Else If (TitleType=3) + { + IncludeProgramExecutables:=List + GuiControl, MenuGui:Text, Edit4, + GuiControl, MenuGui:Text, Edit4, %IncludeProgramExecutables% + } +Else If (TitleType=4) + { + ExcludeProgramExecutables:=List + GuiControl, MenuGui:Text, Edit5, + GuiControl, MenuGui:Text, Edit5, %ExcludeProgramExecutables% + } +Else If (TitleType=5) + { + HelperWindowProgramTitles:=List + GuiControl, MenuGui:Text, Edit6, + GuiControl, MenuGui:Text, Edit6, %HelperWindowProgramTitles% + } +Else If (TitleType=6) + { + HelperWindowProgramExecutables:=List + GuiControl, MenuGui:Text, Edit7, + GuiControl, MenuGui:Text, Edit7, %HelperWindowProgramExecutables% + } + + +Return + +CancelTitle: +Gui, ProcessList:Destroy +Gui, MenuGui:-Disabled ; disable main window +WinActivate, TypingAid Settings +Return + +ToEdit: +GuiControlGet, OutputVar, ProcessList:,ComboBox1 +GuiControl, ProcessList:, Edit1, +GuiControl, ProcessList:, Edit1, %OutputVar% +ControlFocus, Edit1 +Return + +AddNew1: +GuiControlGet, OutputVar, ProcessList:,Edit1 +GuiControl, ProcessList:, ListBox1, %OutputVar%| +GuiControl, ProcessList:, Edit1, +ControlFocus, Edit1 +Return + +RemoveNew1: +GuiControlGet, OutputVar, ProcessList:, Listbox1 +ControlGet, List, List, , ListBox1 +StringReplace, List, List, `n, |, All +List := "|" list "|" +StringReplace, List, List, |%OutputVar%|, |, all +StringTrimRight, list, list, 1 +GuiControl, ProcessList:, ListBox1, | +GuiControl, ProcessList:, ListBox1, %list% +Return + +ProcessListGuiClose: +Gui, ProcessList:Destroy +Gui, MenuGui:Show +Return + +; copied from font explorer http://www.autohotkey.com/forum/viewtopic.php?t=57501&highlight=font +Writer_enumFonts() { + + hDC := DllCall("GetDC", "Uint", 0) + DllCall("EnumFonts", "Uint", hDC, "Uint", 0, "Uint", RegisterCallback("Writer_enumFontsProc", "F"), "Uint", 0) + DllCall("ReleaseDC", "Uint", 0, "Uint", hDC) + + return Writer_enumFontsProc(0, 0, 0, 0) +} + +Writer_enumFontsProc(lplf, lptm, dwType, lpData) { + static s + + ifEqual, lplf, 0, return s + + s .= DllCall("MulDiv", "Int", lplf+28, "Int",1, "Int", 1, "str") "|" + return 1 +} \ No newline at end of file diff --git a/Source/TypingAid.ahk b/Source/TypingAid.ahk index d7d0a5e..eca11d1 100644 --- a/Source/TypingAid.ahk +++ b/Source/TypingAid.ahk @@ -46,6 +46,10 @@ If A_Is64bitOS } } +Menu, Tray, NoStandard +Menu, Tray, add, Settings, Configuration +Menu, Tray, Standard +;Menu, tray, icon, includes\typewriter.icl, 4 Menu, Tray, Icon ScriptExtension= @@ -71,11 +75,6 @@ HelperManual = DelimiterChar := Chr(2) AutoTrim, Off -;Gui Init Code -ListBoxGui=1 -HelperGui=2 -MenuGui=3 - InitializeListBox() BlockInput, Send @@ -819,7 +818,7 @@ EvaluateUpDown(Key) Local Rows Rows := GetRows() IfNotEqual, MatchPos, - GuiControl, %ListBoxGui%: Choose, ListBox%Rows%, %MatchPos% + GuiControl, ListBoxGui: Choose, ListBox%Rows%, %MatchPos% } else { RebuildMatchList() ShowListBox() @@ -964,6 +963,10 @@ MaybeFixFileEncoding(File,Encoding) } ;------------------------------------------------------------------------ + +Configuration: +GoSub, LaunchSettings +Return SaveScript: @@ -991,6 +994,7 @@ ExitApp #Include %A_ScriptDir%\Includes\Helper.ahk #Include %A_ScriptDir%\Includes\Preferences File.ahk #Include %A_ScriptDir%\Includes\Sending.ahk +#Include %A_ScriptDir%\Includes\Settings.ahk #Include %A_ScriptDir%\Includes\Window.ahk #Include %A_ScriptDir%\Includes\Wordlist.ahk #Include From c547084848ae53594fa2b37f1461a8a6f740a020 Mon Sep 17 00:00:00 2001 From: ManiacDC Date: Thu, 8 Jan 2015 08:46:31 -0500 Subject: [PATCH 14/62] Readme: updates for SQL Settings: Updated Help intro text Fixed semicolons in Help page Improved algorithm for stripping semicolons out of Help buttons Changed to use "LoadImage" rather than "LoadCursor" Changed Visit Forum link to use Hover Hand rather than Hover Help Fixed indentation --- Readme.txt | 4 +- Source/Includes/Settings.ahk | 303 ++++++++++++++++++++--------------- 2 files changed, 180 insertions(+), 127 deletions(-) diff --git a/Readme.txt b/Readme.txt index 87c71e7..5180cb8 100644 --- a/Readme.txt +++ b/Readme.txt @@ -34,8 +34,8 @@ Words should be stored in a file named 'Wordlist.txt' which should be located in In addition to being able to use the number keys to select a word, you can select words from the drop-down via the Up/Down arrows. Hitting Up on the first item will bring you to the last and hitting Down on the last item will bring you to the first. Hitting Page Up will bring you up 10 items, or to the first item. Hitting Page Down will bring you down 10 items, or to the last item. You can hit Tab, Right Arrow, Ctrl-Space, or Ctrl-Enter to autocomplete the selected word. This feature can be disabled or have some of its behavior modified via the Preferences file. -The script will learn words as you type them if LearnMode=On in the preferences file. If you type a word more than 5 times (or as defined in the preferences.ini file) in a single session the word will be added to a WordlistLearned.txt file. Learned words are stored in the WordlistLearned.txt file. Learned words will always appear below predefined words, but will be ranked and ordered among other learned words based on the frequency you type them. You can permanently learn a word by highlighting a word and hitting Ctrl-Shift-C (this works even if LearnMode=Off). You may use Ctrl-Shift-Del to remove the currently selected Learned Word, or you may manually remove them while the script is off. -When LearnMode=On, entries in the wordlist file and learned words are limited to a length of 123 (or 61 when using Unicode AHK) characters due to internal workings. +The script will learn words as you type them if LearnMode=On in the preferences file. If you type a word more than 5 times (or as defined in the preferences.ini file) in a single session the word will be permanently added to the list of learnedd words. Learned words will always appear below predefined words, but will be ranked and ordered among other learned words based on the frequency you type them. You can permanently learn a word by highlighting a word and hitting Ctrl-Shift-C (this works even if LearnMode=Off). You may use Ctrl-Shift-Del to remove the currently selected Learned Word. +Learned words are stored in the WordlistLearned.db sqlite3 database. Learned words are backed up in WordlistLearned.txt. To modify the list of Learned words manually, delete the WordlistLearned.db database, then manually edit the WordlistLearned.txt file. On the next launch of the script, the WordlistLearned.db database will be rebuilt. The script will automatically create a file named preferences.ini in the script directory. This file allows for customization of the script. To allow for distribution of standardized preferences, a Defaults.ini may be distributed with the same format as Preferences.ini. If the Defaults.ini is present, Preferences.ini will not be created. A user may override the Defaults.ini by manually creating a Preferences.ini. diff --git a/Source/Includes/Settings.ahk b/Source/Includes/Settings.ahk index 38f5243..31fad9f 100644 --- a/Source/Includes/Settings.ahk +++ b/Source/Includes/Settings.ahk @@ -18,37 +18,42 @@ Words should be stored in a file named 'Wordlist.txt' which should be located in In addition to being able to use the number keys to select a word, you can select words from the drop-down via the Up/Down arrows. Hitting Up on the first item will bring you to the last and hitting Down on the last item will bring you to the first. Hitting Page Up will bring you up 10 items, or to the first item. Hitting Page Down will bring you down 10 items, or to the last item. You can hit Tab, Right Arrow, Ctrl-Space, or Ctrl-Enter to autocomplete the selected word. This feature can be disabled or have some of its behavior modified via the Preferences file. -The script will learn words as you type them if LearnMode=On in the preferences file. If you type a word more than 5 times (or as defined in the preferences.ini file) in a single session the word will be added to the wordlist.txt file. Learned words are stored below the predefined words in the wordlist under a keyword called ;LEARNEDWORDS;. Learned words will always appear below predefined words, but will be ranked and ordered among other learned words based on the frequency you type them. You can permanently learn a word by highlighting a word and hitting Ctrl-Shift-C (this works even if LearnMode=Off). If you want to remove any learned words from your list you must manually remove them. -When LearnMode=On, entries in the wordlist file and learned words are limited to a length of 123 (or 61 when using Unicode AHK) characters due to internal workings. +The script will learn words as you type them if LearnMode=On in the preferences file. If you type a word more than 5 times (or as defined in the preferences.ini file) in a single session the word will be permanently added to the list of learnedd words. Learned words will always appear below predefined words, but will be ranked and ordered among other learned words based on the frequency you type them. You can permanently learn a word by highlighting a word and hitting Ctrl-Shift-C (this works even if LearnMode=Off). You may use Ctrl-Shift-Del to remove the currently selected Learned Word. +Learned words are stored in the WordlistLearned.db sqlite3 database. Learned words are backed up in WordlistLearned.txt. To modify the list of Learned words manually, delete the WordlistLearned.db database, then manually edit the WordlistLearned.txt file. On the next launch of the script, the WordlistLearned.db database will be rebuilt. The script will automatically create a file named preferences.ini in the script directory. This file allows for customization of the script. +To allow for distribution of standardized preferences, a Defaults.ini may be distributed with the same format as Preferences.ini. If the Defaults.ini is present, Preferences.ini will not be created. A user may override the Defaults.ini by manually creating a Preferences.ini. + Customizable features include (see also detailed description below) - * List of programs for which you want TypingAid enabled. - * List of programs for which you do not want TypingAid enabled. - * Number of characters before the list of words appears. - * Number of times you must press a number hotkey to select the associated word (options are 1 and 2, 2 has had minimal testing). - * Enable or disable learning mode. - * Number of times you must type a word before it is permanently learned. - * Number of characters a word needs to have in order to be learned. - * Enable, disable, or customize the arrow key's functionality. - * Disable certain keys for autocompleting a word selected via the arrow keys. - * Enable or disable the resetting of the List Box on a mouseclick. - * Change the method used to send the word to the screen. - * List of characters which terminate a word. - * List of characters which terminate a word and start a new word. - * List of programs for which you want the Helper Window to automatically open. - * Number of pixels below the caret to display the List Box. - * List Box Default Font of fixed (Courier New) or variable (Tahoma) width. - * List Box Default Font override. - * List Box Font Size. - * List Box Character Width to override the computed character width. - * List Box Opacity setting to set the transparency of the List Box. - * List Box Rows to define the number of items to show in the list at once. + * List of programs for which you want TypingAid enabled. + * List of programs for which you do not want TypingAid enabled. + * Number of characters before the list of words appears. + * Number of times you must press a number hotkey to select the associated word (options are 1 and 2, 2 has had minimal testing). + * Enable or disable learning mode. + * Number of times you must type a word before it is permanently learned. + * Number of characters a word needs to have in order to be learned. + * List of strings which will prevent any word which contains one of these strings from being learned. + * Enable, disable, or customize the arrow key's functionality. + * Disable certain keys for autocompleting a word selected via the arrow keys. + * Enable or disable the resetting of the List Box on a mouseclick. + * Change whether the script simply completes or actually replaces the word (capitalization change based on the wordlist file) + * Change whether a space should be automatically added after the autocompleted word or not. + * Change whether the typed word should appear in the word list or not. + * Change the method used to send the word to the screen. + * List of characters which terminate a word. + * List of characters which terminate a word and start a new word. + * List of programs for which you want the Helper Window to automatically open. + * Number of pixels below the caret to display the List Box. + * List Box Default Font of fixed (Courier New) or variable (Tahoma) width. + * List Box Default Font override. + * List Box Font Size. + * List Box Character Width to override the computed character width. + * List Box Opacity setting to set the transparency of the List Box. + * List Box Rows to define the number of items to show in the list at once. Unicode Support: Full (untested) for UTF-8 character set. -Unicode AutoHotKey is required. ) fontlist:=Writer_enumFonts() ; see note at function for credit @@ -58,20 +63,20 @@ fontlist:=Writer_enumFonts() ; see note at function for credit ; The following part was copied from AGU`s script. ; http://www.autohotkey.com/forum/viewtopic.php?p=37633#37633 ; Begin - ; Retrieve scripts PID - Process, Exist - pid_this := ErrorLevel +; Retrieve scripts PID +Process, Exist +pid_this := ErrorLevel - ; Retrieve unique ID number (HWND/handle) - WinGet, hw_gui, ID, ahk_class AutoHotkeyGUI ahk_pid %pid_this% +; Retrieve unique ID number (HWND/handle) +WinGet, hw_gui, ID, ahk_class AutoHotkeyGUI ahk_pid %pid_this% - ; Call "HandleMessage" when script receives WM_SETCURSOR message - WM_SETCURSOR = 0x20 - OnMessage( WM_SETCURSOR, "HandleMessage" ) +; Call "HandleMessage" when script receives WM_SETCURSOR message +WM_SETCURSOR = 0x20 +OnMessage( WM_SETCURSOR, "HandleMessage" ) - ; Call "HandleMessage" when script receives WM_MOUSEMOVE message - WM_MOUSEMOVE = 0x200 - OnMessage( WM_MOUSEMOVE, "HandleMessage" ) +; Call "HandleMessage" when script receives WM_MOUSEMOVE message +WM_MOUSEMOVE = 0x200 +OnMessage( WM_MOUSEMOVE, "HandleMessage" ) ; End ; --- @@ -206,14 +211,15 @@ Gui, MenuGui:Add, GroupBox, x%Group3of3BoxX% y%RowY% w%ThreeColGroupWidth% h%Row _SendMethodOptionsText=1 - Default (Type)|2 - Fast (Type)|3 - Slow (Type)|4 - Default (Paste)|5 - Fast (Paste)|6 - Slow (Paste)|7 - Alternate method _SendMethodOptionsCode=1|2|3|1C|2C|3C|4C Loop, parse, _SendMethodOptionsCode, | - If (SendMethod = A_LoopField) - _SendCount:=A_Index + If (SendMethod = A_LoopField) + _SendCount:=A_Index + Loop, parse, _SendMethodOptionsText, | - { - _SendMethodOptions .= A_LoopField "|" - If (A_Index = _SendCount) - _SendMethodOptions .= "|" - } +{ + _SendMethodOptions .= A_LoopField "|" + If (A_Index = _SendCount) + _SendMethodOptions .= "|" +} Gui, MenuGui:Add, DDL, x%Group3of3EditX% y%RowEditY% w%ThreeColEditWidth% r5 v_SendMethodC altsubmit, %_SendMethodOptions% Gui, MenuGui:Font, cGreen Gui, MenuGui:Add, Text, x%Group3of3HelpX% y%RowHelpY% vhSendMethod gHelpMe, %GuiHelpIcon% @@ -239,18 +245,18 @@ CheckedN=Checked CheckedU=Checked Loop, parse, DisabledAutoCompleteKeys { - If (A_LoopField = "E") - CheckedE = - If (A_LoopField = "S") - CheckedS = + If (A_LoopField = "E") + CheckedE = + If (A_LoopField = "S") + CheckedS = If (A_LoopField = "T") - CheckedT = + CheckedT = If (A_LoopField = "R") - CheckedR = + CheckedR = If (A_LoopField = "N") - CheckedN = + CheckedN = If (A_LoopField = "U") - CheckedU = + CheckedU = } CheckmarkIndent := TwoColEditWidth/3 + EditIndentX @@ -269,15 +275,16 @@ Gui, MenuGui:Font, cBlack Gui, MenuGui:Add, GroupBox, x%Group2of2BoxX% y%RowY% w%TwoColGroupWidth% h%RowHeight% , Wordlist row highlighting _ArrowKeyMethodOptionsText=Off - only use the number keys|First - reset selected word to the beginning|LastWord - keep last word selected|LastPosition - keep the last cursor position Loop, parse, _ArrowKeyMethodOptionsText, | - { +{ _ArrowKeyMethodOptions .= A_LoopField "|" StringSplit, Split, A_LoopField, - Split1=%Split1% ; autotrim If (Split1 = ArrowKeyMethod) - { - _ArrowKeyMethodOptions .= "|" - } - } + { + _ArrowKeyMethodOptions .= "|" + } +} + Gui, MenuGui:Add, DDL, x%Group2of2EditX% y%RowEditY% w%TwoColEditWidth% r5 vArrowKeyMethod altsubmit, %_ArrowKeyMethodOptions% Gui, MenuGui:Font, cGreen Gui, MenuGui:Add, Text, x%Group2of2HelpX% y%RowHelpY% vhArrowKeyMethod gHelpMe, %GuiHelpIcon% @@ -526,7 +533,24 @@ RowY := SeparatorY + 30 RowHelpY := RowY - HelpIndentY RowEditY := RowY + EditIndentY -Gui, MenuGui:Add, Edit, ReadOnly x%Group1BoxX% y%RowY% w%OneColGroupWidth% h%TabHeightEdit%, %hIntro% `r`n`r`n %hIncludeProgramExecutables% `r`n`r`n %hIncludeProgramTitles% `r`n`r`n %hExcludeProgramExecutables% `r`n`r`n %hExcludeProgramTitles% `r`n`r`n %hLength% `r`n`r`n %hNumPresses% `r`n`r`n %hLearnMode% `r`n`r`n %hLearnCount% `r`n`r`n %hLearnLength% `r`n`r`n %hArrowKeyMethod% `r`n`r`n %hDisabledAutoCompleteKeys% `r`n`r`n %hDetectMouseClickMove% `r`n`r`n %hNoBackSpace% `r`n`r`n %hAutoSpace% `r`n`r`n %hSendMethod% `r`n`r`n %hTerminatingCharacters% `r`n`r`n %hForceNewWordCharacters% `r`n`r`n %hListBoxOffset% `r`n`r`n %hListBoxFontFixed% `r`n`r`n %hListBoxFontOverride% `r`n`r`n %hListBoxFontSize% `r`n`r`n %hListBoxCharacterWidth% `r`n`r`n %hListBoxOpacity% `r`n`r`n %hListBoxRows% `r`n`r`n %hHelperWindowProgramExecutables% `r`n`r`n %hHelperWindowProgramTitles% `r`n`r`n +hHelpText = %hIntro%`r`n`r`n%hIncludeProgramExecutables%`r`n`r`n%hIncludeProgramTitles%`r`n`r`n%hExcludeProgramExecutables%`r`n`r`n%hExcludeProgramTitles%`r`n`r`n%hLength%`r`n`r`n%hNumPresses%`r`n`r`n%hLearnMode%`r`n`r`n%hLearnCount%`r`n`r`n%hLearnLength%`r`n`r`n%hArrowKeyMethod%`r`n`r`n%hDisabledAutoCompleteKeys%`r`n`r`n%hDetectMouseClickMove%`r`n`r`n%hNoBackSpace%`r`n`r`n%hAutoSpace%`r`n`r`n%hSendMethod%`r`n`r`n%hTerminatingCharacters%`r`n`r`n%hForceNewWordCharacters%`r`n`r`n%hListBoxOffset%`r`n`r`n%hListBoxFontFixed%`r`n`r`n%hListBoxFontOverride%`r`n`r`n%hListBoxFontSize%`r`n`r`n%hListBoxCharacterWidth%`r`n`r`n%hListBoxOpacity%`r`n`r`n%hListBoxRows%`r`n`r`n%hHelperWindowProgramExecutables%`r`n`r`n%hHelperWindowProgramTitles% + +Loop, Parse, hHelpText,`n, `r +{ + IF ( SubStr(A_LoopField, 1,1) = ";") + { + hModHelpText .= SubStr(A_LoopField,2) . "`r`n" + } else + { + hModHelpText .= A_LoopField . "`r`n" + } +} + +Gui, MenuGui:Add, Edit, ReadOnly x%Group1BoxX% y%RowY% w%OneColGroupWidth% h%TabHeightEdit%, %hModHelpText% + +hModHelpText = +hHelpText = +hIntro = Gui, MenuGui:tab, @@ -546,7 +570,7 @@ Gui, MenuGui:Font, cBlack bold Gui, MenuGui:Add, Text, x%Group2of2EditX% Yp-10 gVisitForum, TypingAid Gui, MenuGui:Font, cBlack normal -Gui, MenuGui:Add, Text, xp+70 Yp gVisitForum, is free software, support forum at +Gui, MenuGui:Add, Text, xp+60 Yp gVisitForum, is free software, support forum at Gui, MenuGui:Font, cGreen Gui, MenuGui:Add, Text, x%Group2of2EditX% Yp+%TextRowY% vVisitForum gVisitForum, www.autohotkey.com (click here) Gui, MenuGui:Font, cBlack @@ -674,8 +698,16 @@ Gui, MenuGui:Destroy Return HelpMe: -StringReplace, _help, %A_GuiControl%, `;,,All -; MsgBox %_help% +Loop, Parse, %A_GuiControl%,`r`n +{ + IF ( SubStr(A_LoopField, 1,1) = ";") + { + _help .= SubStr(A_LoopField,2) . "`r`n" + } else + { + _help .= A_LoopField . "`r`n" + } +} MsgBox , 32 , TypingAid Help, %_help% _help= Return @@ -685,42 +717,61 @@ Return ; http://www.autohotkey.com/forum/viewtopic.php?p=37696#37696 HandleMessage( p_w, p_l, p_m, p_hw ) { - Global WM_SETCURSOR, WM_MOUSEMOVE - Static URL_hover, h_cursor_hand, h_old_cursor, Old_GuiControl + Global WM_SETCURSOR, WM_MOUSEMOVE + Static Help_Hover, h_cursor_help, URL_Hover, h_cursor_hand, h_old_cursor, Old_GuiControl - if ( p_m = WM_SETCURSOR ) - { - if ( URL_hover) - return, true - } - else if ( p_m = WM_MOUSEMOVE ) - { - - - if A_GuiControl in hIncludeProgramExecutables,hIncludeProgramTitles,hExcludeProgramExecutables,hExcludeProgramTitles,hLength,hNumPresses,hLearnMode,hLearnCount,hLearnLength,hArrowKeyMethod,hDisabledAutoCompleteKeys,hDetectMouseClickMove,hNoBackSpace,hAutoSpace,hSendMethod,hTerminatingCharacters,hForceNewWordCharacters,hListBoxOffset,hListBoxFontFixed,hListBoxFontOverride,hListBoxFontSize,hListBoxCharacterWidth,hListBoxOpacity,hListBoxRows,hHelperWindowProgramExecutables,hHelperWindowProgramTitles,VisitForum - { - if URL_hover= - { - h_cursor_hand := DllCall( "LoadCursor", "uint", 0, "uint", 32651 ) - URL_hover = true - Gui, Font, cBlue ;;; xyz - GuiControl, Font, %A_GuiControl% ;;; xyz - Old_GuiControl = %A_GuiControl% - } - h_old_cursor := DllCall( "SetCursor", "uint", h_cursor_hand ) - } - else - { - if ( URL_hover ) - { - DllCall( "SetCursor", "uint", h_old_cursor ) - URL_hover= - Gui, Font, cGreen ;;; xyz - GuiControl, Font, %Old_GuiControl% ;;; xyz - Old_GuiControl= - } - } - } + if ( p_m = WM_SETCURSOR ) + { + if ( Help_Hover) + return, true + } + else if ( p_m = WM_MOUSEMOVE ) + { + if A_GuiControl in hIncludeProgramExecutables,hIncludeProgramTitles,hExcludeProgramExecutables,hExcludeProgramTitles,hLength,hNumPresses,hLearnMode,hLearnCount,hLearnLength,hArrowKeyMethod,hDisabledAutoCompleteKeys,hDetectMouseClickMove,hNoBackSpace,hAutoSpace,hSendMethod,hTerminatingCharacters,hForceNewWordCharacters,hListBoxOffset,hListBoxFontFixed,hListBoxFontOverride,hListBoxFontSize,hListBoxCharacterWidth,hListBoxOpacity,hListBoxRows,hHelperWindowProgramExecutables,hHelperWindowProgramTitles + { + if !(Help_Hover) + { + IF !(h_cursor_help) + { + h_cursor_help := DllCall( "LoadImage", ptr, 0, uint, 32651 , uint, 2, int, 0, int, 0, uint, 0x8000 ) + } + old_cursor := DllCall( "SetCursor", "uint", h_cursor_help ) + Help_Hover = true + URL_Hover = + Gui, Font, cBlue ;;; xyz + GuiControl, Font, %A_GuiControl% ;;; xyz + Old_GuiControl = %A_GuiControl% + } + } else if (A_GuiControl = "VisitForum") + { + if !(URLHover) + { + IF !(h_cursor_hand) + { + h_cursor_hand := DllCall( "LoadImage", ptr, 0, uint, 32649 , uint, 2, int, 0, int, 0, uint, 0x8000 ) + } + old_cursor := DllCall( "SetCursor", "uint", h_cursor_hand ) + URL_Hover = true + Help_Hover = + Gui, Font, cBlue ;;; xyz + GuiControl, Font, %A_GuiControl% ;;; xyz + Old_GuiControl = %A_GuiControl% + } + + } else if (Help_Hover || URL_Hover) + { + DllCall( "SetCursor", "uint", h_old_cursor ) + Help_Hover= + URL_Hover= + Gui, Font, cGreen ;;; xyz + GuiControl, Font, %Old_GuiControl% ;;; xyz + h_old_cursor= + } + IF !(h_old_cursor) + { + h_old_cursor := old_cursor + } + } } @@ -728,29 +779,29 @@ GetList: ;Gui, MenuGui:Hide RunningList= If (GetExe = 1) ; get list of active processes +{ + WinGet, id, list,,, Program Manager + Loop, %id% { - WinGet, id, list,,, Program Manager - Loop, %id% - { - tmptitle= - tmpid := id%A_Index% - WinGet, tmptitle, ProcessName, ahk_id %tmpid% - If (tmptitle <> "") + tmptitle= + tmpid := id%A_Index% + WinGet, tmptitle, ProcessName, ahk_id %tmpid% + If (tmptitle <> "") RunningList .= tmptitle "|" - } } +} Else If (GetExe = 0) ; get list of active window titles +{ + WinGet, id, list,,, Program Manager + Loop, %id% { - WinGet, id, list,,, Program Manager - Loop, %id% - { - tmptitle= - tmpid := id%A_Index% - WinGetTitle, tmptitle, ahk_id %tmpid% - If (tmptitle <> "") + tmptitle= + tmpid := id%A_Index% + WinGetTitle, tmptitle, ahk_id %tmpid% + If (tmptitle <> "") RunningList .= tmptitle "|" - } - } + } +} GetExe=0 Sort,RunningList, D| U @@ -780,41 +831,41 @@ WinActivate, TypingAid Settings StringReplace, List, List, `n, |, All If (TitleType=1) - { +{ IncludeProgramTitles:=List GuiControl, MenuGui:Text, Edit2, GuiControl, MenuGui:Text, Edit2, %IncludeProgramTitles% - } +} Else If (TitleType=2) - { +{ ExcludeProgramTitles:=List GuiControl, MenuGui:Text, Edit3, GuiControl, MenuGui:Text, Edit3, %ExcludeProgramTitles% - } +} Else If (TitleType=3) - { +{ IncludeProgramExecutables:=List GuiControl, MenuGui:Text, Edit4, GuiControl, MenuGui:Text, Edit4, %IncludeProgramExecutables% - } +} Else If (TitleType=4) - { +{ ExcludeProgramExecutables:=List GuiControl, MenuGui:Text, Edit5, GuiControl, MenuGui:Text, Edit5, %ExcludeProgramExecutables% - } +} Else If (TitleType=5) - { +{ HelperWindowProgramTitles:=List GuiControl, MenuGui:Text, Edit6, GuiControl, MenuGui:Text, Edit6, %HelperWindowProgramTitles% - } +} Else If (TitleType=6) - { +{ HelperWindowProgramExecutables:=List GuiControl, MenuGui:Text, Edit7, GuiControl, MenuGui:Text, Edit7, %HelperWindowProgramExecutables% - } +} Return @@ -856,7 +907,8 @@ Gui, MenuGui:Show Return ; copied from font explorer http://www.autohotkey.com/forum/viewtopic.php?t=57501&highlight=font -Writer_enumFonts() { +Writer_enumFonts() +{ hDC := DllCall("GetDC", "Uint", 0) DllCall("EnumFonts", "Uint", hDC, "Uint", 0, "Uint", RegisterCallback("Writer_enumFontsProc", "F"), "Uint", 0) @@ -865,7 +917,8 @@ Writer_enumFonts() { return Writer_enumFontsProc(0, 0, 0, 0) } -Writer_enumFontsProc(lplf, lptm, dwType, lpData) { +Writer_enumFontsProc(lplf, lptm, dwType, lpData) +{ static s ifEqual, lplf, 0, return s From a29fcef61bcee03f41dc02838c42b68d7ed69ea9 Mon Sep 17 00:00:00 2001 From: ManiacDC Date: Fri, 9 Jan 2015 09:05:44 -0500 Subject: [PATCH 15/62] Fixed various variable names Fixed scope of some code Fixed minor bugs --- Source/Includes/Settings.ahk | 1257 ++++++++++++++++------------------ 1 file changed, 604 insertions(+), 653 deletions(-) diff --git a/Source/Includes/Settings.ahk b/Source/Includes/Settings.ahk index 31fad9f..e592136 100644 --- a/Source/Includes/Settings.ahk +++ b/Source/Includes/Settings.ahk @@ -2,628 +2,627 @@ ; by HugoV / Maniac LaunchSettings: - ReadPreferences() +ConstructGui() +Return -hIntro= -( -TypingAid is a simple, compact, and handy auto-completion utility. - -It is customizable enough to be useful for regular typing and for programming. - -Features: -As you type your word, up to 10 (or as defined in the Preferences file) matches will appear in a drop-down dialog, numbered 1 - 0 (10th). To choose the match you want just hit the associated number on your keyboard (numpad does not work). Alternatively you can select an item from the drop-down using the Up/Down arrows. You can define a fixed position for the drop-down dialog to appear by hitting Ctrl-Shift-H to open a small helper window, or by specifying a list of programs in the preferences file. Please note that in Firefox, Thunderbird, and certain other programs you will probably need to open the helper window due to issues detecting the caret position. - -Words should be stored in a file named 'Wordlist.txt' which should be located in the script directory. These words may be commented out by prefixing with a semicolon or simply removed or added. Words may include terminating characters (such as space), but you must select the word before typing the terminating character. - -In addition to being able to use the number keys to select a word, you can select words from the drop-down via the Up/Down arrows. Hitting Up on the first item will bring you to the last and hitting Down on the last item will bring you to the first. Hitting Page Up will bring you up 10 items, or to the first item. Hitting Page Down will bring you down 10 items, or to the last item. You can hit Tab, Right Arrow, Ctrl-Space, or Ctrl-Enter to autocomplete the selected word. This feature can be disabled or have some of its behavior modified via the Preferences file. - -The script will learn words as you type them if LearnMode=On in the preferences file. If you type a word more than 5 times (or as defined in the preferences.ini file) in a single session the word will be permanently added to the list of learnedd words. Learned words will always appear below predefined words, but will be ranked and ordered among other learned words based on the frequency you type them. You can permanently learn a word by highlighting a word and hitting Ctrl-Shift-C (this works even if LearnMode=Off). You may use Ctrl-Shift-Del to remove the currently selected Learned Word. -Learned words are stored in the WordlistLearned.db sqlite3 database. Learned words are backed up in WordlistLearned.txt. To modify the list of Learned words manually, delete the WordlistLearned.db database, then manually edit the WordlistLearned.txt file. On the next launch of the script, the WordlistLearned.db database will be rebuilt. - -The script will automatically create a file named preferences.ini in the script directory. This file allows for customization of the script. -To allow for distribution of standardized preferences, a Defaults.ini may be distributed with the same format as Preferences.ini. If the Defaults.ini is present, Preferences.ini will not be created. A user may override the Defaults.ini by manually creating a Preferences.ini. - -Customizable features include (see also detailed description below) - - * List of programs for which you want TypingAid enabled. - * List of programs for which you do not want TypingAid enabled. - * Number of characters before the list of words appears. - * Number of times you must press a number hotkey to select the associated word (options are 1 and 2, 2 has had minimal testing). - * Enable or disable learning mode. - * Number of times you must type a word before it is permanently learned. - * Number of characters a word needs to have in order to be learned. - * List of strings which will prevent any word which contains one of these strings from being learned. - * Enable, disable, or customize the arrow key's functionality. - * Disable certain keys for autocompleting a word selected via the arrow keys. - * Enable or disable the resetting of the List Box on a mouseclick. - * Change whether the script simply completes or actually replaces the word (capitalization change based on the wordlist file) - * Change whether a space should be automatically added after the autocompleted word or not. - * Change whether the typed word should appear in the word list or not. - * Change the method used to send the word to the screen. - * List of characters which terminate a word. - * List of characters which terminate a word and start a new word. - * List of programs for which you want the Helper Window to automatically open. - * Number of pixels below the caret to display the List Box. - * List Box Default Font of fixed (Courier New) or variable (Tahoma) width. - * List Box Default Font override. - * List Box Font Size. - * List Box Character Width to override the computed character width. - * List Box Opacity setting to set the transparency of the List Box. - * List Box Rows to define the number of items to show in the list at once. - -Unicode Support: -Full (untested) for UTF-8 character set. -) - -fontlist:=Writer_enumFonts() ; see note at function for credit - - -; --- -; The following part was copied from AGU`s script. -; http://www.autohotkey.com/forum/viewtopic.php?p=37633#37633 -; Begin -; Retrieve scripts PID -Process, Exist -pid_this := ErrorLevel - -; Retrieve unique ID number (HWND/handle) -WinGet, hw_gui, ID, ahk_class AutoHotkeyGUI ahk_pid %pid_this% - -; Call "HandleMessage" when script receives WM_SETCURSOR message -WM_SETCURSOR = 0x20 -OnMessage( WM_SETCURSOR, "HandleMessage" ) - -; Call "HandleMessage" when script receives WM_MOUSEMOVE message -WM_MOUSEMOVE = 0x200 -OnMessage( WM_MOUSEMOVE, "HandleMessage" ) -; End -; --- - - -GuiWidth=700 -GuiHeight=480 -GuiRows = 8 -GuiHelpIcon = %A_Space%(?)%A_Space% - -SeparatorX = 10 -SeparatorY = 8 -EditIndentX = 10 -EditIndentY = 20 -HelpIndentX = 30 -HelpIndentY = 0 - -RowHeight := (GuiHeight - ((GuiRows +1 ) * SeparatorY ))/GuiRows - -AdvancedSettingsTextHeight = 15 -AdvGuiHeight := GuiHeight + AdvancedSettingsTextHeight + SeparatorY + ( 2 * ( SeparatorY + RowHeight) ) - -TextRowY := (RowHeight - 6 ) / 3 - -TabWidth:=GuiWidth-4 -TabHeight:=GuiHeight-75 -TabHeightEdit:=TabHeight-40 - -OneColGroupWidth := GuiWidth - (2 * SeparatorX) -TwoColGroupWidth := (GuiWidth - (3 * SeparatorX))/2 -ThreeColGroupWidth := (GuiWidth - (4 * SeparatorX))/3 - -OneColEditWidth := OneColGroupWidth - (EditIndentX * 2) -TwoColEditWidth := TwoColGroupWidth - (EditIndentX * 2) -ThreeColEditWidth := ThreeColGroupWidth - (EditIndentX * 2) -OneColEditWidthEdit := OneColEditWidth - 140 -OneColEditButton := OneColEditWidthEdit + 30 - -Group1BoxX := SeparatorX -Group1EditX := Group1BoxX + EditIndentX -Group1of1HelpX := Group1BoxX + OneColGroupWidth - HelpIndentX -Group1of2HelpX := Group1BoxX + TwoColGroupWidth - HelpIndentX -Group1of3HelpX := Group1BoxX + ThreeColGroupWidth - HelpIndentX - -Group2of2BoxX := Group1BoxX + TwoColGroupWidth + SeparatorX -Group2of2EditX := Group2of2BoxX + EditIndentX -Group2of2HelpX := Group2of2BoxX + TwoColGroupWidth - HelpIndentX - -Group2of3BoxX := Group1BoxX + ThreeColGroupWidth + SeparatorX -Group2of3EditX := Group2of3BoxX + EditIndentX -Group2of3HelpX := Group2of3BoxX + ThreeColGroupWidth - HelpIndentX - -Group3of3BoxX := Group2of3BoxX + ThreeColGroupWidth + SeparatorX -Group3of3EditX := Group3of3BoxX + EditIndentX -Group3of3HelpX := Group3of3BoxX + ThreeColGroupWidth - HelpIndentX - -RowY := SeparatorY + 30 -RowHelpY := RowY - HelpIndentY -RowEditY := RowY + EditIndentY - -Gui, Font, s8, Arial - -Gui, MenuGui:Add, Tab2, x2 w%TabWidth% h%TabHeight%, General Settings|Wordlist Box|Programs|Advanced (Experts Only)|About && Help - -Gui, MenuGui:Tab, 1 ; General Settings - -Gui, MenuGui:Add, GroupBox, x%Group1BoxX% y%RowY% w%ThreeColGroupWidth% h%RowHeight% , Learn new words as you type -_LearnModeOptions=|On|Off| -StringReplace, _LearnModeOptions, _LearnModeOptions, |%LearnMode%|,|%LearnMode%|| -StringTrimLeft, _LearnModeOptions, _LearnModeOptions, 1 -Gui, MenuGui:Add, DDL, x%Group1EditX% y%RowEditY% r5 vLearnMode, %_LearnModeOptions% -Gui, MenuGui:Font, cGreen -Gui, MenuGui:Add, Text, x%Group1of3HelpX% y%RowHelpY% vhLearnMode gHelpMe, %GuiHelpIcon% -Gui, MenuGui:Font, cBlack - - -Gui, MenuGui:Add, GroupBox, x%Group2of3BoxX% y%RowY% w%ThreeColGroupWidth% h%RowHeight% , Minimum length of word to learn -_LearnLengthOptions=|1|2|3|4|5|6|7|8|9|10|11|12|13|14|15| -StringReplace, _LearnLengthOptions, _LearnLengthOptions, |%LearnLength%|,|%LearnLength%|| -StringTrimLeft, _LearnLengthOptions, _LearnLengthOptions, 1 -Gui, MenuGui:Add, DDL, x%Group2of3EditX% y%RowEditY% r5 vLearnLength, %_LearnLengthOptions% -Gui, MenuGui:Font, cGreen -Gui, MenuGui:Add, Text, x%Group2of3HelpX% y%RowHelpY% vhLearnLength gHelpMe, %GuiHelpIcon% -Gui, MenuGui:Font, cBlack - - -Gui, MenuGui:Add, GroupBox, x%Group3of3BoxX% y%RowY% w%ThreeColGroupWidth% h%RowHeight%, Add to wordlist after X times -_LearnCountOptions=|1|2|3|4|5|6|7|8|9|10|11|12|13|14|15| -StringReplace, _LearnCountOptions, _LearnCountOptions, |%LearnCount%|,|%LearnCount%|| -StringTrimLeft, _LearnCountOptions, _LearnCountOptions, 1 -Gui, MenuGui:Add, DDL, x%Group3of3EditX% y%RowEditY% r5 vLearnCount, %_LearnCountOptions% -Gui, MenuGui:Font, cGreen -Gui, MenuGui:Add, Text, x%Group3of3HelpX% y%RowHelpY% vhLearnCount gHelpMe, %GuiHelpIcon% -Gui, MenuGui:Font, cBlack - - -RowY := RowY + RowHeight + SeparatorY -RowHelpY := RowY - HelpIndentY -RowEditY := RowY + EditIndentY - -Gui, MenuGui:Add, GroupBox, x%Group1BoxX% y%RowY% w%ThreeColGroupWidth% h%RowHeight% , Maximum number of results to show -_ListBoxRowsOptions=|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20| -StringReplace, _ListBoxRowsOptions, _ListBoxRowsOptions, |%ListBoxRows%|,|%ListBoxRows%|| -StringTrimLeft, _ListBoxRowsOptions, _ListBoxRowsOptions, 1 -Gui, MenuGui:Add, DDL, x%Group1EditX% y%RowEditY% r5 vListBoxRows, %_ListBoxRowsOptions% -Gui, MenuGui:Font, cGreen -Gui, MenuGui:Add, Text, x%Group1of3HelpX% y%RowHelpY% vhListBoxRows gHelpMe, %GuiHelpIcon% -Gui, MenuGui:Font, cBlack - - -/* MaxMatches removed -Gui, MenuGui:Add, GroupBox, x%Group1BoxX% y%RowY% w%ThreeColGroupWidth% h%RowHeight% , Max. number of matches -_MaxMatchesOptions=|10|11|12|13|14|15|16|17|18|19|20| -StringReplace, _MaxMatchesOptions, _MaxMatchesOptions, |%MaxMatches%|,|%MaxMatches%|| -StringTrimLeft, _MaxMatchesOptions, _MaxMatchesOptions, 1 -Gui, MenuGui:Add, DDL, x%Group1EditX% y%RowEditY% r5 vMaxMatches, %_MaxMatchesOptions% -Gui, MenuGui:Font, cGreen -Gui, MenuGui:Add, Text, x%Group1of3HelpX% y%RowHelpY% vhMaxMatches gHelpMe, %GuiHelpIcon% -Gui, MenuGui:Font, cBlack -*/ - -Gui, MenuGui:Add, GroupBox, x%Group2of3BoxX% y%RowY% w%ThreeColGroupWidth% h%RowHeight% , Show wordlist after X characters -_LengthOptions=|1|2|3|4|5|6|7|8|9|10|11|12|13|14|15| -StringReplace, _LengthOptions, _LengthOptions, |%Wlen%|,|%Wlen%|| -StringTrimLeft, _LengthOptions, _LengthOptions, 1 -Gui, MenuGui:Add, DDL, x%Group2of3EditX% y%RowEditY% r5 vLength, %_LengthOptions% -Gui, MenuGui:Font, cGreen -Gui, MenuGui:Add, Text, x%Group2of3HelpX% y%RowHelpY% vhLength gHelpMe, %GuiHelpIcon% -Gui, MenuGui:Font, cBlack - - -Gui, MenuGui:Add, GroupBox, x%Group3of3BoxX% y%RowY% w%ThreeColGroupWidth% h%RowHeight% , Send Method -_SendMethodOptionsText=1 - Default (Type)|2 - Fast (Type)|3 - Slow (Type)|4 - Default (Paste)|5 - Fast (Paste)|6 - Slow (Paste)|7 - Alternate method -_SendMethodOptionsCode=1|2|3|1C|2C|3C|4C -Loop, parse, _SendMethodOptionsCode, | - If (SendMethod = A_LoopField) - _SendCount:=A_Index - -Loop, parse, _SendMethodOptionsText, | -{ - _SendMethodOptions .= A_LoopField "|" - If (A_Index = _SendCount) - _SendMethodOptions .= "|" -} -Gui, MenuGui:Add, DDL, x%Group3of3EditX% y%RowEditY% w%ThreeColEditWidth% r5 v_SendMethodC altsubmit, %_SendMethodOptions% -Gui, MenuGui:Font, cGreen -Gui, MenuGui:Add, Text, x%Group3of3HelpX% y%RowHelpY% vhSendMethod gHelpMe, %GuiHelpIcon% -Gui, MenuGui:Font, cBlack - - -RowY := RowY + RowHeight + SeparatorY -RowHelpY := RowY - HelpIndentY -RowEditY := RowY + EditIndentY - -Gui, MenuGui:Add, GroupBox, x%Group1BoxX% y%RowY% w%TwoColGroupWidth% h%RowHeight% , Auto Complete Keys -; E = Ctrl + Enter -; S = Ctrl + Space -; T = Tab -; R = Right Arrow -; N = Number Keys -; U = Enter -CheckedE=Checked -CheckedS=Checked -CheckedT=Checked -CheckedR=Checked -CheckedN=Checked -CheckedU=Checked -Loop, parse, DisabledAutoCompleteKeys -{ - If (A_LoopField = "E") - CheckedE = - If (A_LoopField = "S") - CheckedS = - If (A_LoopField = "T") - CheckedT = - If (A_LoopField = "R") - CheckedR = - If (A_LoopField = "N") - CheckedN = - If (A_LoopField = "U") - CheckedU = -} - -CheckmarkIndent := TwoColEditWidth/3 + EditIndentX -Gui, MenuGui:Add, Checkbox, x%Group1EditX% yp+%TextRowY% vCtrlEnter %CheckedE%, Ctrl + Enter -Gui, MenuGui:Add, Checkbox, xp%CheckmarkIndent% yp vTab %CheckedT%, Tab -Gui, MenuGui:Add, Checkbox, xp%CheckmarkIndent% yp vRightArrow %CheckedR%, Right Arrow -Gui, MenuGui:Add, Checkbox, x%Group1EditX% yp+%TextRowY% vCtrlSpace %CheckedS%, Ctrl + Space -Gui, MenuGui:Add, Checkbox, xp%CheckmarkIndent% yp vNumberKeys %CheckedN%, Number Keys -Gui, MenuGui:Add, Checkbox, xp%CheckmarkIndent% yp vEnter %CheckedU%, Enter - -Gui, MenuGui:Font, cGreen -Gui, MenuGui:Add, Text, x%Group1of2HelpX% y%RowHelpY% vhDisabledAutoCompleteKeys gHelpMe, %GuiHelpIcon% -Gui, MenuGui:Font, cBlack - - -Gui, MenuGui:Add, GroupBox, x%Group2of2BoxX% y%RowY% w%TwoColGroupWidth% h%RowHeight% , Wordlist row highlighting -_ArrowKeyMethodOptionsText=Off - only use the number keys|First - reset selected word to the beginning|LastWord - keep last word selected|LastPosition - keep the last cursor position -Loop, parse, _ArrowKeyMethodOptionsText, | +ConstructGui() { - _ArrowKeyMethodOptions .= A_LoopField "|" - StringSplit, Split, A_LoopField, - - Split1=%Split1% ; autotrim - If (Split1 = ArrowKeyMethod) - { - _ArrowKeyMethodOptions .= "|" - } -} - -Gui, MenuGui:Add, DDL, x%Group2of2EditX% y%RowEditY% w%TwoColEditWidth% r5 vArrowKeyMethod altsubmit, %_ArrowKeyMethodOptions% -Gui, MenuGui:Font, cGreen -Gui, MenuGui:Add, Text, x%Group2of2HelpX% y%RowHelpY% vhArrowKeyMethod gHelpMe, %GuiHelpIcon% -Gui, MenuGui:Font, cBlack - - -RowY := RowY + RowHeight + SeparatorY -RowHelpY := RowY - HelpIndentY -RowEditY := RowY + EditIndentY - -Gui, MenuGui:Add, GroupBox, x%Group1BoxX% y%RowY% w%ThreeColGroupWidth% h%RowHeight% , Case correction -_CaseCorrectionOptions=|On|Off| -If (NoBackSpace = "on") - _CaseCorrection=Off -Else If (NoBackSpace = "off") - _CaseCorrection=On -StringReplace, _CaseCorrectionOptions, _CaseCorrectionOptions, |%_CaseCorrection%|,|%_CaseCorrection%|| -StringTrimLeft, _CaseCorrectionOptions, _CaseCorrectionOptions, 1 -Gui, MenuGui:Add, DDL, x%Group1EditX% y%RowEditY% r5 v_CaseCorrection, %_CaseCorrectionOptions% -Gui, MenuGui:Font, cGreen -Gui, MenuGui:Add, Text, x%Group1of3HelpX% y%RowHelpY% vhNoBackSpace gHelpMe, %GuiHelpIcon% -Gui, MenuGui:Font, cBlack - - -Gui, MenuGui:Add, GroupBox, x%Group2of3BoxX% y%RowY% w%ThreeColGroupWidth% h%RowHeight% , Monitor mouse clicks -_DetectMouseClickMoveOptions=|On|Off| -StringReplace, _DetectMouseClickMoveOptions, _DetectMouseClickMoveOptions, |%DetectMouseClickMove%|,|%DetectMouseClickMove%|| -StringTrimLeft, _DetectMouseClickMoveOptions, _DetectMouseClickMoveOptions, 1 -Gui, MenuGui:Add, DDL, x%Group2of3EditX% y%RowEditY% r5 vDetectMouseClickMove, %_DetectMouseClickMoveOptions% -Gui, MenuGui:Font, cGreen -Gui, MenuGui:Add, Text, x%Group2of3HelpX% y%RowHelpY% vhDetectMouseClickMove gHelpMe, %GuiHelpIcon% -Gui, MenuGui:Font, cBlack - -Gui, MenuGui:Add, GroupBox, x%Group3of3BoxX% y%RowY% w%ThreeColGroupWidth% h%RowHeight% , Type space after autcomplete -_AutoSpaceOptions=|On|Off| -StringReplace, _AutoSpaceOptions, _AutoSpaceOptions, |%AutoSpace%|,|%AutoSpace%|| -StringTrimLeft, _AutoSpaceOptions, _AutoSpaceOptions, 1 -Gui, MenuGui:Add, DDL, x%Group3of3EditX% y%RowEditY% r5 vAutoSpace, %_AutoSpaceOptions% -Gui, MenuGui:Font, cGreen -Gui, MenuGui:Add, Text, x%Group3of3HelpX% y%RowHelpY% vhAutoSpace gHelpMe, %GuiHelpIcon% -Gui, MenuGui:Font, cBlack - -;NumPresses -; - -Gui, MenuGui:Tab, 2 ; listbox --------------------------------------------------------- - - -RowY := SeparatorY + 30 -RowHelpY := RowY - HelpIndentY -RowEditY := RowY + EditIndentY - - -Gui, MenuGui:Add, GroupBox, x%Group1BoxX% y%RowY% w%ThreeColGroupWidth% h%RowHeight% , List appears X pixels below cursor -_ListBoxOffsetOptions=|1|2|3|4|5|6|7|8|9|10|11|12|13|14|15| -StringReplace, _ListBoxOffsetOptions, _ListBoxOffsetOptions, |%ListBoxOffset%|,|%ListBoxOffset%|| -StringTrimLeft, _ListBoxOffsetOptions, _ListBoxOffsetOptions, 1 -Gui, MenuGui:Add, DDL, x%Group1EditX% y%RowEditY% r5 vListBoxOffset, %_ListBoxOffsetOptions% -Gui, MenuGui:Font, cGreen -Gui, MenuGui:Add, Text, x%Group1of3HelpX% y%RowHelpY% vhListBoxOffset gHelpMe, %GuiHelpIcon% -Gui, MenuGui:Font, cBlack - -Gui, MenuGui:Add, GroupBox, x%Group2of3BoxX% y%RowY% w%ThreeColGroupWidth% h%RowHeight% , Fixed width font in list -_ListBoxFontFixedOptions=|On|Off| -StringReplace, _ListBoxFontFixedOptions, _ListBoxFontFixedOptions, |%ListBoxFontFixed%|,|%ListBoxFontFixed%|| -StringTrimLeft, _ListBoxFontFixedOptions, _ListBoxFontFixedOptions, 1 -Gui, MenuGui:Add, DDL, x%Group2of3EditX% y%RowEditY% r5 vListBoxFontFixed, %_ListBoxFontFixedOptions% -Gui, MenuGui:Font, cGreen -Gui, MenuGui:Add, Text, x%Group2of3HelpX% y%RowHelpY% vhListBoxFontFixed gHelpMe, %GuiHelpIcon% -Gui, MenuGui:Font, cBlack - -Gui, MenuGui:Add, GroupBox, x%Group3of3BoxX% y%RowY% w%ThreeColGroupWidth% h%RowHeight% , Font size in list -_ListBoxFontSizeOptions=|8|9|10|11|12|13|14|15|16|17|18|19|20| -StringReplace, _ListBoxFontSizeOptions, _ListBoxFontSizeOptions, |%ListBoxFontSize%|,|%ListBoxFontSize%|| -StringTrimLeft, _ListBoxFontSizeOptions, _ListBoxFontSizeOptions, 1 -Gui, MenuGui:Add, DDL, x%Group3of3EditX% y%RowEditY% r5 vListBoxFontSize, %_ListBoxFontSizeOptions% -Gui, MenuGui:Font, cGreen -Gui, MenuGui:Add, Text, x%Group3of3HelpX% y%RowHelpY% vhListBoxFontSize gHelpMe, %GuiHelpIcon% -Gui, MenuGui:Font, cBlack - -RowY := RowY + RowHeight + SeparatorY -RowHelpY := RowY - HelpIndentY -RowEditY := RowY + EditIndentY - - - -Gui, MenuGui:Add, GroupBox, x%Group1BoxX% y%RowY% w%ThreeColGroupWidth% h%RowHeight% , List opacity -;_ListBoxOpacityOptions=|150|175|200|205|210|215|255| -;StringReplace, _ListBoxOpacityOptions, _ListBoxOpacityOptions, |%ListBoxOpacity%|,|%ListBoxOpacity%|| -;StringTrimLeft, _ListBoxOpacityOptions, _ListBoxOpacityOptions, 1 -;Gui, MenuGui:Add, DDL, x%Group2of3EditX% y%RowEditY% r5 vListBoxOpacity, %_ListBoxOpacityOptions% -Gui, MenuGui:Add, Edit, xp+10 yp+20 w%ThreeColEditWidth% vListBoxOpacity, %ListBoxOpacity% -Gui, MenuGui:Font, cGreen -Gui, MenuGui:Add, Text, x%Group1of3HelpX% y%RowHelpY% vhListBoxOpacity gHelpMe, %GuiHelpIcon% -Gui, MenuGui:Font, cBlack - -Gui, MenuGui:Add, GroupBox, x%Group2of3BoxX% y%RowY% w%ThreeColGroupWidth% h%RowHeight% , List character width override -_ListBoxCharacterWidthOptions=||5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20| -StringReplace, _ListBoxCharacterWidthOptions, _ListBoxCharacterWidthOptions, |%ListBoxCharacterWidth%|,|%ListBoxCharacterWidth%|| -StringTrimLeft, _ListBoxCharacterWidthOptions, _ListBoxCharacterWidthOptions, 1 -Gui, MenuGui:Add, DDL, x%Group2of3EditX% y%RowEditY% r5 vListBoxCharacterWidth, %_ListBoxCharacterWidthOptions% -Gui, MenuGui:Font, cGreen -Gui, MenuGui:Add, Text, x%Group2of3HelpX% y%RowHelpY% vhListBoxCharacterWidth gHelpMe, %GuiHelpIcon% -Gui, MenuGui:Font, cBlack - -Gui, MenuGui:Add, GroupBox, x%Group3of3BoxX% y%RowY% w%ThreeColGroupWidth% h%RowHeight% , List font -fontlist := "|" . fontlist . "|" -sort, fontlist, D| -If (listboxfont = "") or (listboxfont = " ") - StringReplace, fontlist, fontlist, |Courier New|, |Courier New|| -Gui, MenuGui:Add, DDL, x%Group3of3EditX% y%RowEditY% r10 w200 vListBoxFontOverride, %fontlist% -Gui, MenuGui:Font, cGreen -Gui, MenuGui:Add, Text, x%Group3of3HelpX% y%RowHelpY% vhListBoxFontOverride gHelpMe, %GuiHelpIcon% -Gui, MenuGui:Font, cBlack -/* -Gui, MenuGui:Add, GroupBox, x%Group3of3BoxX% y%RowY% w%ThreeColGroupWidth% h%RowHeight% , List size -_ListBoxRowsOptions=|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20| -StringReplace, _ListBoxRowsOptions, _ListBoxRowsOptions, |%ListBoxRows%|,|%ListBoxRows%|| -StringTrimLeft, _ListBoxRowsOptions, _ListBoxRowsOptions, 1 -Gui, MenuGui:Add, DDL, x%Group3of3EditX% y%RowEditY% r5 vListBoxRows, %_ListBoxRowsOptions% -Gui, MenuGui:Font, cGreen -Gui, MenuGui:Add, Text, x%Group3of3HelpX% y%RowHelpY% vhListBoxRows gHelpMe, %GuiHelpIcon% -Gui, MenuGui:Font, cBlack -*/ - -RowY := RowY + RowHeight + SeparatorY -RowHelpY := RowY - HelpIndentY -RowEditY := RowY + EditIndentY + Global ArrowKeyMethod, AutoSpace, DetectMouseClickMove, DisabledAutoCompleteKeys + Global hArrowKeyMethod, hAutoSpace, hDetectMouseClickMove, hDisabledAutoCompleteKeys + Global ForceNewWordCharacters, LearnCount, LearnLength, LearnMode, Length + Global hForceNewWordCharacters, hLearnCount, hLearnLength, hLearnMode, hLength + Global NoBackSpace, SendMethod, TerminatingCharacters + Global hNoBackSpace, hSendMethod, hTerminatingCharacters + Global ExcludeProgramExecutables, ExcludeProgramTitles, IncludeProgramExecutables, IncludeProgramTitles, HelperWindowProgramExecutables, HelperWindowProgramTitles + Global hExcludeProgramExecutables, hExcludeProgramTitles, hIncludeProgramExecutables, hIncludeProgramTitles, hHelperWindowProgramExecutables, hHelperWindowProgramTitles + Global ListBoxCharacterWidth, ListBoxFontFixed, ListBoxFontOverride, ListBoxFontSize, ListBoxOffset, ListBoxOpacity, ListBoxRows + Global hListBoxCharacterWidth, hListBoxFontFixed, hListBoxFontOverride, hListBoxFontSize, hListBoxOffset, hListBoxOpacity, hListBoxRows + Global Menu_ArrowKeyMethodOptionsText, Menu_CaseCorrection, Menu_SendMethodOptionsCode, Menu_SendMethodC + Global MenuCtrlEnter, MenuCtrlSpace, MenuEnter, MenuNumberKeys, MenuRightArrow, MenuTab + Global MenuAdvGuiHeight, MenuGuiWidth + Global Wlen + Global WM_SETCURSOR, WM_MOUSEMOVE + + Menu_CaseCorrection= + Menu_ArrowKeyMethodOptionsText= + + MenuFontList:=Writer_enumFonts() ; see note at function for credit + ; Call "HandleMessage" when script receives WM_SETCURSOR message + WM_SETCURSOR = 0x20 + OnMessage( WM_SETCURSOR, "HandleMessage" ) + + ; Call "HandleMessage" when script receives WM_MOUSEMOVE message + WM_MOUSEMOVE = 0x200 + OnMessage( WM_MOUSEMOVE, "HandleMessage" ) + + MenuGuiWidth=700 + MenuGuiHeight=480 + MenuGuiRows = 8 + MenuGuiHelpIcon = %A_Space%(?)%A_Space% + + MenuSeparatorX = 10 + MenuSeparatorY = 8 + MenuEditIndentX = 10 + MenuEditIndentY = 20 + MenuHelpIndentX = 30 + MenuHelpIndentY = 0 + + MenuRowHeight := (MenuGuiHeight - ((MenuGuiRows +1 ) * MenuSeparatorY ))/MenuGuiRows + + MenuAdvancedSettingsTextHeight = 15 + MenuAdvGuiHeight := MenuGuiHeight + MenuAdvancedSettingsTextHeight + MenuSeparatorY + ( 2 * ( MenuSeparatorY + MenuRowHeight) ) + + MenuTextMenuRowY := (MenuRowHeight - 6 ) / 3 + + MenuTabWidth:=MenuGuiWidth-4 + MenuTabHeight:=MenuGuiHeight-75 + MenuTabHeightEdit:=MenuTabHeight-40 + + MenuOneColGroupWidth := MenuGuiWidth - (2 * MenuSeparatorX) + MenuTwoColGroupWidth := (MenuGuiWidth - (3 * MenuSeparatorX))/2 + MenuThreeColGroupWidth := (MenuGuiWidth - (4 * MenuSeparatorX))/3 + + MenuOneColEditWidth := MenuOneColGroupWidth - (MenuEditIndentX * 2) + MenuTwoColEditWidth := MenuTwoColGroupWidth - (MenuEditIndentX * 2) + MenuThreeColEditWidth := MenuThreeColGroupWidth - (MenuEditIndentX * 2) + MenuOneColEditWidthEdit := MenuOneColEditWidth - 140 + MenuOneColEditButton := MenuOneColEditWidthEdit + 30 + + MenuGroup1BoxX := MenuSeparatorX + MenuGroup1EditX := MenuGroup1BoxX + MenuEditIndentX + MenuGroup1of1HelpX := MenuGroup1BoxX + MenuOneColGroupWidth - MenuHelpIndentX + MenuGroup1of2HelpX := MenuGroup1BoxX + MenuTwoColGroupWidth - MenuHelpIndentX + MenuGroup1of3HelpX := MenuGroup1BoxX + MenuThreeColGroupWidth - MenuHelpIndentX + + MenuGroup2of2BoxX := MenuGroup1BoxX + MenuTwoColGroupWidth + MenuSeparatorX + MenuGroup2of2EditX := MenuGroup2of2BoxX + MenuEditIndentX + MenuGroup2of2HelpX := MenuGroup2of2BoxX + MenuTwoColGroupWidth - MenuHelpIndentX + + MenuGroup2of3BoxX := MenuGroup1BoxX + MenuThreeColGroupWidth + MenuSeparatorX + MenuGroup2of3EditX := MenuGroup2of3BoxX + MenuEditIndentX + MenuGroup2of3HelpX := MenuGroup2of3BoxX + MenuThreeColGroupWidth - MenuHelpIndentX + + MenuGroup3of3BoxX := MenuGroup2of3BoxX + MenuThreeColGroupWidth + MenuSeparatorX + MenuGroup3of3EditX := MenuGroup3of3BoxX + MenuEditIndentX + MenuGroup3of3HelpX := MenuGroup3of3BoxX + MenuThreeColGroupWidth - MenuHelpIndentX + + MenuRowY := MenuSeparatorY + 30 + MenuRowHelpY := MenuRowY - MenuHelpIndentY + MenuRowEditY := MenuRowY + MenuEditIndentY + + Gui, Font, s8, Arial + + Gui, MenuGui:Add, Tab2, x2 w%MenuTabWidth% h%MenuTabHeight%, General Settings|Wordlist Box|Programs|Advanced (Experts Only)|About && Help + + Gui, MenuGui:Tab, 1 ; General Settings + + Gui, MenuGui:Add, GroupBox, x%MenuGroup1BoxX% y%MenuRowY% w%MenuThreeColGroupWidth% h%MenuRowHeight% , Learn new words as you type + Menu_LearnModeOptions=|On|Off| + StringReplace, Menu_LearnModeOptions, Menu_LearnModeOptions, |%LearnMode%|,|%LearnMode%|| + StringTrimLeft, Menu_LearnModeOptions, Menu_LearnModeOptions, 1 + Gui, MenuGui:Add, DDL, x%MenuGroup1EditX% y%MenuRowEditY% r5 vLearnMode, %Menu_LearnModeOptions% + Gui, MenuGui:Font, cGreen + Gui, MenuGui:Add, Text, x%MenuGroup1of3HelpX% y%MenuRowHelpY% vhLearnMode gHelpMe, %MenuGuiHelpIcon% + Gui, MenuGui:Font, cBlack + + + Gui, MenuGui:Add, GroupBox, x%MenuGroup2of3BoxX% y%MenuRowY% w%MenuThreeColGroupWidth% h%MenuRowHeight% , Minimum length of word to learn + Menu_LearnLengthOptions=|1|2|3|4|5|6|7|8|9|10|11|12|13|14|15| + StringReplace, Menu_LearnLengthOptions, Menu_LearnLengthOptions, |%LearnLength%|,|%LearnLength%|| + StringTrimLeft, Menu_LearnLengthOptions, Menu_LearnLengthOptions, 1 + Gui, MenuGui:Add, DDL, x%MenuGroup2of3EditX% y%MenuRowEditY% r5 vLearnLength, %Menu_LearnLengthOptions% + Gui, MenuGui:Font, cGreen + Gui, MenuGui:Add, Text, x%MenuGroup2of3HelpX% y%MenuRowHelpY% vhLearnLength gHelpMe, %MenuGuiHelpIcon% + Gui, MenuGui:Font, cBlack + -/* -Gui, MenuGui:Add, GroupBox, x%Group1BoxX% y%RowY% w%ThreeColGroupWidth% h%RowHeight% , List font -fontlist := "|" . fontlist . "|" -sort, fontlist, D| -If (listboxfont = "") or (listboxfont = " ") - StringReplace, fontlist, fontlist, |Courier New|, |Courier New|| -Gui, MenuGui:Add, DDL, x%Group1EditX% y%RowEditY% r10 w200 vListBoxFontOverride, %fontlist% -Gui, MenuGui:Font, cGreen -Gui, MenuGui:Add, Text, x%Group1of3HelpX% y%RowHelpY% vhListBoxFontOverride gHelpMe, %GuiHelpIcon% -Gui, MenuGui:Font, cBlack -*/ - - -Gui, MenuGui:Tab, 3 ; Programs --------------------------------------------------------- - - -RowY := SeparatorY + 30 -RowHelpY := RowY - HelpIndentY -RowEditY := RowY + EditIndentY - -Gui, MenuGui:Add, GroupBox, x%Group1BoxX% y%RowY% w%OneColGroupWidth% h%RowHeight% , Window titles you want TypingAid enabled for -Gui, MenuGui:Add, Edit, x%Group1EditX% y%RowEditY% w%OneColEditWidthEdit% vIncludeProgramTitles, %IncludeProgramTitles% -Gui, MenuGui:Add, Button, x%OneColEditButton% yp w130 gSetEnableTitles, Edit -Gui, MenuGui:Font, cGreen -Gui, MenuGui:Add, Text, x%Group1of1HelpX% y%RowHelpY% vhIncludeProgramTitles gHelpMe, %GuiHelpIcon% -Gui, MenuGui:Font, cBlack - -RowY := RowY + RowHeight + SeparatorY -RowHelpY := RowY - HelpIndentY -RowEditY := RowY + EditIndentY + Gui, MenuGui:Add, GroupBox, x%MenuGroup3of3BoxX% y%MenuRowY% w%MenuThreeColGroupWidth% h%MenuRowHeight%, Add to wordlist after X times + Menu_LearnCountOptions=|1|2|3|4|5|6|7|8|9|10|11|12|13|14|15| + StringReplace, Menu_LearnCountOptions, Menu_LearnCountOptions, |%LearnCount%|,|%LearnCount%|| + StringTrimLeft, Menu_LearnCountOptions, Menu_LearnCountOptions, 1 + Gui, MenuGui:Add, DDL, x%MenuGroup3of3EditX% y%MenuRowEditY% r5 vLearnCount, %Menu_LearnCountOptions% + Gui, MenuGui:Font, cGreen + Gui, MenuGui:Add, Text, x%MenuGroup3of3HelpX% y%MenuRowHelpY% vhLearnCount gHelpMe, %MenuGuiHelpIcon% + Gui, MenuGui:Font, cBlack + + + MenuRowY := MenuRowY + MenuRowHeight + MenuSeparatorY + MenuRowHelpY := MenuRowY - MenuHelpIndentY + MenuRowEditY := MenuRowY + MenuEditIndentY + + Gui, MenuGui:Add, GroupBox, x%MenuGroup1BoxX% y%MenuRowY% w%MenuThreeColGroupWidth% h%MenuRowHeight% , Maximum number of results to show + Menu_ListBoxRowsOptions=|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20| + StringReplace, Menu_ListBoxRowsOptions, Menu_ListBoxRowsOptions, |%ListBoxRows%|,|%ListBoxRows%|| + StringTrimLeft, Menu_ListBoxRowsOptions, Menu_ListBoxRowsOptions, 1 + Gui, MenuGui:Add, DDL, x%MenuGroup1EditX% y%MenuRowEditY% r5 vListBoxRows, %Menu_ListBoxRowsOptions% + Gui, MenuGui:Font, cGreen + Gui, MenuGui:Add, Text, x%MenuGroup1of3HelpX% y%MenuRowHelpY% vhListBoxRows gHelpMe, %MenuGuiHelpIcon% + Gui, MenuGui:Font, cBlack + + Gui, MenuGui:Add, GroupBox, x%MenuGroup2of3BoxX% y%MenuRowY% w%MenuThreeColGroupWidth% h%MenuRowHeight% , Show wordlist after X characters + Menu_LengthOptions=|1|2|3|4|5|6|7|8|9|10|11|12|13|14|15| + StringReplace, Menu_LengthOptions, Menu_LengthOptions, |%Wlen%|,|%Wlen%|| + StringTrimLeft, Menu_LengthOptions, Menu_LengthOptions, 1 + Gui, MenuGui:Add, DDL, x%MenuGroup2of3EditX% y%MenuRowEditY% r5 vLength, %Menu_LengthOptions% + Gui, MenuGui:Font, cGreen + Gui, MenuGui:Add, Text, x%MenuGroup2of3HelpX% y%MenuRowHelpY% vhLength gHelpMe, %MenuGuiHelpIcon% + Gui, MenuGui:Font, cBlack + + + Gui, MenuGui:Add, GroupBox, x%MenuGroup3of3BoxX% y%MenuRowY% w%MenuThreeColGroupWidth% h%MenuRowHeight% , Send Method + Menu_SendMethodOptionsText=1 - Default (Type)|2 - Fast (Type)|3 - Slow (Type)|4 - Default (Paste)|5 - Fast (Paste)|6 - Slow (Paste)|7 - Alternate method + Menu_SendMethodOptionsCode=1|2|3|1C|2C|3C|4C + Loop, parse, Menu_SendMethodOptionsCode, | + { + If (SendMethod = A_LoopField) + Menu_SendCount:=A_Index + } + + Loop, parse, Menu_SendMethodOptionsText, | + { + Menu_SendMethodOptions .= A_LoopField "|" + If (A_Index = Menu_SendCount) + Menu_SendMethodOptions .= "|" + } + Gui, MenuGui:Add, DDL, x%MenuGroup3of3EditX% y%MenuRowEditY% w%MenuThreeColEditWidth% r5 vMenu_SendMethodC altsubmit, %Menu_SendMethodOptions% + Gui, MenuGui:Font, cGreen + Gui, MenuGui:Add, Text, x%MenuGroup3of3HelpX% y%MenuRowHelpY% vhSendMethod gHelpMe, %MenuGuiHelpIcon% + Gui, MenuGui:Font, cBlack + -Gui, MenuGui:Add, GroupBox, x%Group1BoxX% y%RowY% w%OneColGroupWidth% h%RowHeight% , Window titles you want TypingAid disabled for -Gui, MenuGui:Add, Edit, x%Group1EditX% y%RowEditY% w%OneColEditWidthEdit% vExcludeProgramTitles, %ExcludeProgramTitles% -Gui, MenuGui:Add, Button, x%OneColEditButton% yp w130 gSetDisableTitles, Edit -Gui, MenuGui:Font, cGreen -Gui, MenuGui:Add, Text, x%Group1of1HelpX% y%RowHelpY% vhExcludeProgramTitles gHelpMe, %GuiHelpIcon% -Gui, MenuGui:Font, cBlack + MenuRowY := MenuRowY + MenuRowHeight + MenuSeparatorY + MenuRowHelpY := MenuRowY - MenuHelpIndentY + MenuRowEditY := MenuRowY + MenuEditIndentY + + Gui, MenuGui:Add, GroupBox, x%MenuGroup1BoxX% y%MenuRowY% w%MenuTwoColGroupWidth% h%MenuRowHeight% , Auto Complete Keys + ; E = Ctrl + Enter + ; S = Ctrl + Space + ; T = Tab + ; R = Right Arrow + ; N = Number Keys + ; U = Enter + Menu_CheckedE=Checked + Menu_CheckedS=Checked + Menu_CheckedT=Checked + Menu_CheckedR=Checked + Menu_CheckedN=Checked + Menu_CheckedU=Checked + Loop, parse, DisabledAutoCompleteKeys + { + If (A_LoopField = "E") + Menu_CheckedE = + If (A_LoopField = "S") + Menu_CheckedS = + If (A_LoopField = "T") + Menu_CheckedT = + If (A_LoopField = "R") + Menu_CheckedR = + If (A_LoopField = "N") + Menu_CheckedN = + If (A_LoopField = "U") + Menu_CheckedU = + } + + MenuCheckmarkIndent := MenuTwoColEditWidth/3 + MenuEditIndentX + Gui, MenuGui:Add, Checkbox, x%MenuGroup1EditX% yp+%MenuTextMenuRowY% vMenuCtrlEnter %Menu_CheckedE%, Ctrl + Enter + Gui, MenuGui:Add, Checkbox, xp%MenuCheckmarkIndent% yp vMenuTab %Menu_CheckedT%, Tab + Gui, MenuGui:Add, Checkbox, xp%MenuCheckmarkIndent% yp vMenuRightArrow %Menu_CheckedR%, Right Arrow + Gui, MenuGui:Add, Checkbox, x%MenuGroup1EditX% yp+%MenuTextMenuRowY% vMenuCtrlSpace %Menu_CheckedS%, Ctrl + Space + Gui, MenuGui:Add, Checkbox, xp%MenuCheckmarkIndent% yp vMenuNumberKeys %Menu_CheckedN%, Number Keys + Gui, MenuGui:Add, Checkbox, xp%MenuCheckmarkIndent% yp vMenuEnter %Menu_CheckedU%, Enter + + Gui, MenuGui:Font, cGreen + Gui, MenuGui:Add, Text, x%MenuGroup1of2HelpX% y%MenuRowHelpY% vhDisabledAutoCompleteKeys gHelpMe, %MenuGuiHelpIcon% + Gui, MenuGui:Font, cBlack + + + Gui, MenuGui:Add, GroupBox, x%MenuGroup2of2BoxX% y%MenuRowY% w%MenuTwoColGroupWidth% h%MenuRowHeight% , Wordlist row highlighting + Menu_ArrowKeyMethodOptionsText=Off - only use the number keys|First - reset selected word to the beginning|LastWord - keep last word selected|LastPosition - keep the last cursor position + Loop, parse, Menu_ArrowKeyMethodOptionsText, | + { + Menu_ArrowKeyMethodOptions .= A_LoopField "|" + StringSplit, Split, A_LoopField, - + Split1 := Trim(Split1) + If (Split1 = ArrowKeyMethod) + { + Menu_ArrowKeyMethodOptions .= "|" + } + } + + Gui, MenuGui:Add, DDL, x%MenuGroup2of2EditX% y%MenuRowEditY% w%MenuTwoColEditWidth% r5 vArrowKeyMethod altsubmit, %Menu_ArrowKeyMethodOptions% + Gui, MenuGui:Font, cGreen + Gui, MenuGui:Add, Text, x%MenuGroup2of2HelpX% y%MenuRowHelpY% vhArrowKeyMethod gHelpMe, %MenuGuiHelpIcon% + Gui, MenuGui:Font, cBlack + + + MenuRowY := MenuRowY + MenuRowHeight + MenuSeparatorY + MenuRowHelpY := MenuRowY - MenuHelpIndentY + MenuRowEditY := MenuRowY + MenuEditIndentY + + Gui, MenuGui:Add, GroupBox, x%MenuGroup1BoxX% y%MenuRowY% w%MenuThreeColGroupWidth% h%MenuRowHeight% , Case correction + Menu_CaseCorrectionOptions=|On|Off| + If (NoBackSpace = "on") + Menu_CaseCorrection=Off + Else If (NoBackSpace = "off") + Menu_CaseCorrection=On + StringReplace, Menu_CaseCorrectionOptions, Menu_CaseCorrectionOptions, |%Menu_CaseCorrection%|,|%Menu_CaseCorrection%|| + StringTrimLeft, Menu_CaseCorrectionOptions, Menu_CaseCorrectionOptions, 1 + Gui, MenuGui:Add, DDL, x%MenuGroup1EditX% y%MenuRowEditY% r5 vMenu_CaseCorrection, %Menu_CaseCorrectionOptions% + Gui, MenuGui:Font, cGreen + Gui, MenuGui:Add, Text, x%MenuGroup1of3HelpX% y%MenuRowHelpY% vhNoBackSpace gHelpMe, %MenuGuiHelpIcon% + Gui, MenuGui:Font, cBlack + + + Gui, MenuGui:Add, GroupBox, x%MenuGroup2of3BoxX% y%MenuRowY% w%MenuThreeColGroupWidth% h%MenuRowHeight% , Monitor mouse clicks + Menu_DetectMouseClickMoveOptions=|On|Off| + StringReplace, Menu_DetectMouseClickMoveOptions, Menu_DetectMouseClickMoveOptions, |%DetectMouseClickMove%|,|%DetectMouseClickMove%|| + StringTrimLeft, Menu_DetectMouseClickMoveOptions, Menu_DetectMouseClickMoveOptions, 1 + Gui, MenuGui:Add, DDL, x%MenuGroup2of3EditX% y%MenuRowEditY% r5 vDetectMouseClickMove, %Menu_DetectMouseClickMoveOptions% + Gui, MenuGui:Font, cGreen + Gui, MenuGui:Add, Text, x%MenuGroup2of3HelpX% y%MenuRowHelpY% vhDetectMouseClickMove gHelpMe, %MenuGuiHelpIcon% + Gui, MenuGui:Font, cBlack + + Gui, MenuGui:Add, GroupBox, x%MenuGroup3of3BoxX% y%MenuRowY% w%MenuThreeColGroupWidth% h%MenuRowHeight% , Type space after autcomplete + Menu_AutoSpaceOptions=|On|Off| + StringReplace, Menu_AutoSpaceOptions, Menu_AutoSpaceOptions, |%AutoSpace%|,|%AutoSpace%|| + StringTrimLeft, Menu_AutoSpaceOptions, Menu_AutoSpaceOptions, 1 + Gui, MenuGui:Add, DDL, x%MenuGroup3of3EditX% y%MenuRowEditY% r5 vAutoSpace, %Menu_AutoSpaceOptions% + Gui, MenuGui:Font, cGreen + Gui, MenuGui:Add, Text, x%MenuGroup3of3HelpX% y%MenuRowHelpY% vhAutoSpace gHelpMe, %MenuGuiHelpIcon% + Gui, MenuGui:Font, cBlack + + ;NumPresses + ; + + Gui, MenuGui:Tab, 2 ; listbox --------------------------------------------------------- + + + MenuRowY := MenuSeparatorY + 30 + MenuRowHelpY := MenuRowY - MenuHelpIndentY + MenuRowEditY := MenuRowY + MenuEditIndentY + + + Gui, MenuGui:Add, GroupBox, x%MenuGroup1BoxX% y%MenuRowY% w%MenuThreeColGroupWidth% h%MenuRowHeight% , List appears X pixels below cursor + Menu_ListBoxOffsetOptions=|1|2|3|4|5|6|7|8|9|10|11|12|13|14|15| + StringReplace, Menu_ListBoxOffsetOptions, Menu_ListBoxOffsetOptions, |%ListBoxOffset%|,|%ListBoxOffset%|| + StringTrimLeft, Menu_ListBoxOffsetOptions, Menu_ListBoxOffsetOptions, 1 + Gui, MenuGui:Add, DDL, x%MenuGroup1EditX% y%MenuRowEditY% r5 vListBoxOffset, %Menu_ListBoxOffsetOptions% + Gui, MenuGui:Font, cGreen + Gui, MenuGui:Add, Text, x%MenuGroup1of3HelpX% y%MenuRowHelpY% vhListBoxOffset gHelpMe, %MenuGuiHelpIcon% + Gui, MenuGui:Font, cBlack + + Gui, MenuGui:Add, GroupBox, x%MenuGroup2of3BoxX% y%MenuRowY% w%MenuThreeColGroupWidth% h%MenuRowHeight% , Fixed width font in list + Menu_ListBoxFontFixedOptions=|On|Off| + StringReplace, Menu_ListBoxFontFixedOptions, Menu_ListBoxFontFixedOptions, |%ListBoxFontFixed%|,|%ListBoxFontFixed%|| + StringTrimLeft, Menu_ListBoxFontFixedOptions, Menu_ListBoxFontFixedOptions, 1 + Gui, MenuGui:Add, DDL, x%MenuGroup2of3EditX% y%MenuRowEditY% r5 vListBoxFontFixed, %Menu_ListBoxFontFixedOptions% + Gui, MenuGui:Font, cGreen + Gui, MenuGui:Add, Text, x%MenuGroup2of3HelpX% y%MenuRowHelpY% vhListBoxFontFixed gHelpMe, %MenuGuiHelpIcon% + Gui, MenuGui:Font, cBlack + + Gui, MenuGui:Add, GroupBox, x%MenuGroup3of3BoxX% y%MenuRowY% w%MenuThreeColGroupWidth% h%MenuRowHeight% , Font size in list + Menu_ListBoxFontSizeOptions=|8|9|10|11|12|13|14|15|16|17|18|19|20| + StringReplace, Menu_ListBoxFontSizeOptions, Menu_ListBoxFontSizeOptions, |%ListBoxFontSize%|,|%ListBoxFontSize%|| + StringTrimLeft, Menu_ListBoxFontSizeOptions, Menu_ListBoxFontSizeOptions, 1 + Gui, MenuGui:Add, DDL, x%MenuGroup3of3EditX% y%MenuRowEditY% r5 vListBoxFontSize, %Menu_ListBoxFontSizeOptions% + Gui, MenuGui:Font, cGreen + Gui, MenuGui:Add, Text, x%MenuGroup3of3HelpX% y%MenuRowHelpY% vhListBoxFontSize gHelpMe, %MenuGuiHelpIcon% + Gui, MenuGui:Font, cBlack + + MenuRowY := MenuRowY + MenuRowHeight + MenuSeparatorY + MenuRowHelpY := MenuRowY - MenuHelpIndentY + MenuRowEditY := MenuRowY + MenuEditIndentY + + + + Gui, MenuGui:Add, GroupBox, x%MenuGroup1BoxX% y%MenuRowY% w%MenuThreeColGroupWidth% h%MenuRowHeight% , List opacity + Gui, MenuGui:Add, Edit, xp+10 yp+20 w%MenuThreeColEditWidth%, %ListBoxOpacity% + Gui, MenuGui:Add, UpDown, xp+10 yp+20 w%MenuThreeColEditWidth% vListBoxOpacity Range0-255, %ListBoxOpacity% + Gui, MenuGui:Font, cGreen + Gui, MenuGui:Add, Text, x%MenuGroup1of3HelpX% y%MenuRowHelpY% vhListBoxOpacity gHelpMe, %MenuGuiHelpIcon% + Gui, MenuGui:Font, cBlack + + Gui, MenuGui:Add, GroupBox, x%MenuGroup2of3BoxX% y%MenuRowY% w%MenuThreeColGroupWidth% h%MenuRowHeight% , List character width override + Menu_ListBoxCharacterWidthOptions=||5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20| + StringReplace, Menu_ListBoxCharacterWidthOptions, Menu_ListBoxCharacterWidthOptions, |%ListBoxCharacterWidth%|,|%ListBoxCharacterWidth%|| + StringTrimLeft, Menu_ListBoxCharacterWidthOptions, Menu_ListBoxCharacterWidthOptions, 1 + Gui, MenuGui:Add, DDL, x%MenuGroup2of3EditX% y%MenuRowEditY% r5 vListBoxCharacterWidth, %Menu_ListBoxCharacterWidthOptions% + Gui, MenuGui:Font, cGreen + Gui, MenuGui:Add, Text, x%MenuGroup2of3HelpX% y%MenuRowHelpY% vhListBoxCharacterWidth gHelpMe, %MenuGuiHelpIcon% + Gui, MenuGui:Font, cBlack + + Gui, MenuGui:Add, GroupBox, x%MenuGroup3of3BoxX% y%MenuRowY% w%MenuThreeColGroupWidth% h%MenuRowHeight% , List font + MenuFontList := "|" . MenuFontList . "|" + sort, MenuFontList, D| + If (MenuListBoxFont = "") or (MenuListBoxFont = " ") + StringReplace, MenuFontList, MenuFontList, |Courier New|, |Courier New|| + Gui, MenuGui:Add, DDL, x%MenuGroup3of3EditX% y%MenuRowEditY% r10 w200 vListBoxFontOverride, %MenuFontList% + Gui, MenuGui:Font, cGreen + Gui, MenuGui:Add, Text, x%MenuGroup3of3HelpX% y%MenuRowHelpY% vhListBoxFontOverride gHelpMe, %MenuGuiHelpIcon% + Gui, MenuGui:Font, cBlack + + MenuRowY := MenuRowY + MenuRowHeight + MenuSeparatorY + MenuRowHelpY := MenuRowY - MenuHelpIndentY + MenuRowEditY := MenuRowY + MenuEditIndentY + + + Gui, MenuGui:Tab, 3 ; Programs --------------------------------------------------------- + + + MenuRowY := MenuSeparatorY + 30 + MenuRowHelpY := MenuRowY - MenuHelpIndentY + MenuRowEditY := MenuRowY + MenuEditIndentY + + Gui, MenuGui:Add, GroupBox, x%MenuGroup1BoxX% y%MenuRowY% w%MenuOneColGroupWidth% h%MenuRowHeight% , Window titles you want TypingAid enabled for + Gui, MenuGui:Add, Edit, x%MenuGroup1EditX% y%MenuRowEditY% w%MenuOneColEditWidthEdit% vIncludeProgramTitles, %IncludeProgramTitles% + Gui, MenuGui:Add, Button, x%MenuOneColEditButton% yp w130 gSetEnableTitles, Edit + Gui, MenuGui:Font, cGreen + Gui, MenuGui:Add, Text, x%MenuGroup1of1HelpX% y%MenuRowHelpY% vhIncludeProgramTitles gHelpMe, %MenuGuiHelpIcon% + Gui, MenuGui:Font, cBlack + + MenuRowY := MenuRowY + MenuRowHeight + MenuSeparatorY + MenuRowHelpY := MenuRowY - MenuHelpIndentY + MenuRowEditY := MenuRowY + MenuEditIndentY -RowY := RowY + RowHeight + SeparatorY -RowHelpY := RowY - HelpIndentY -RowEditY := RowY + EditIndentY + Gui, MenuGui:Add, GroupBox, x%MenuGroup1BoxX% y%MenuRowY% w%MenuOneColGroupWidth% h%MenuRowHeight% , Window titles you want TypingAid disabled for + Gui, MenuGui:Add, Edit, x%MenuGroup1EditX% y%MenuRowEditY% w%MenuOneColEditWidthEdit% vExcludeProgramTitles, %ExcludeProgramTitles% + Gui, MenuGui:Add, Button, x%MenuOneColEditButton% yp w130 gSetDisableTitles, Edit + Gui, MenuGui:Font, cGreen + Gui, MenuGui:Add, Text, x%MenuGroup1of1HelpX% y%MenuRowHelpY% vhExcludeProgramTitles gHelpMe, %MenuGuiHelpIcon% + Gui, MenuGui:Font, cBlack -Gui, MenuGui:Add, GroupBox, x%Group1BoxX% y%RowY% w%OneColGroupWidth% h%RowHeight% , Processes you want TypingAid enabled for -Gui, MenuGui:Add, Edit, x%Group1EditX% y%RowEditY% w%OneColEditWidthEdit% vIncludeProgramExecutables, %IncludeProgramExecutables% -Gui, MenuGui:Add, Button, x%OneColEditButton% yp w130 gSetEnableProcess, Edit -Gui, MenuGui:Font, cGreen -Gui, MenuGui:Add, Text, x%Group1of1HelpX% y%RowHelpY% vhIncludeProgramExecutables gHelpMe, %GuiHelpIcon% -Gui, MenuGui:Font, cBlack + MenuRowY := MenuRowY + MenuRowHeight + MenuSeparatorY + MenuRowHelpY := MenuRowY - MenuHelpIndentY + MenuRowEditY := MenuRowY + MenuEditIndentY -RowY := RowY + RowHeight + SeparatorY -RowHelpY := RowY - HelpIndentY -RowEditY := RowY + EditIndentY + Gui, MenuGui:Add, GroupBox, x%MenuGroup1BoxX% y%MenuRowY% w%MenuOneColGroupWidth% h%MenuRowHeight% , Processes you want TypingAid enabled for + Gui, MenuGui:Add, Edit, x%MenuGroup1EditX% y%MenuRowEditY% w%MenuOneColEditWidthEdit% vIncludeProgramExecutables, %IncludeProgramExecutables% + Gui, MenuGui:Add, Button, x%MenuOneColEditButton% yp w130 gSetEnableProcess, Edit + Gui, MenuGui:Font, cGreen + Gui, MenuGui:Add, Text, x%MenuGroup1of1HelpX% y%MenuRowHelpY% vhIncludeProgramExecutables gHelpMe, %MenuGuiHelpIcon% + Gui, MenuGui:Font, cBlack -Gui, MenuGui:Add, GroupBox, x%Group1BoxX% y%RowY% w%OneColGroupWidth% h%RowHeight% , Processes you want TypingAid disabled for -Gui, MenuGui:Add, Edit, x%Group1EditX% y%RowEditY% w%OneColEditWidthEdit% vExcludeProgramExecutables, %ExcludeProgramExecutables% -Gui, MenuGui:Add, Button, x%OneColEditButton% yp w130 gSetDisableProcess, Edit -Gui, MenuGui:Font, cGreen -Gui, MenuGui:Add, Text, x%Group1of1HelpX% y%RowHelpY% vhExcludeProgramExecutables gHelpMe, %GuiHelpIcon% -Gui, MenuGui:Font, cBlack + MenuRowY := MenuRowY + MenuRowHeight + MenuSeparatorY + MenuRowHelpY := MenuRowY - MenuHelpIndentY + MenuRowEditY := MenuRowY + MenuEditIndentY -RowY := RowY + RowHeight + SeparatorY -RowHelpY := RowY - HelpIndentY -RowEditY := RowY + EditIndentY + Gui, MenuGui:Add, GroupBox, x%MenuGroup1BoxX% y%MenuRowY% w%MenuOneColGroupWidth% h%MenuRowHeight% , Processes you want TypingAid disabled for + Gui, MenuGui:Add, Edit, x%MenuGroup1EditX% y%MenuRowEditY% w%MenuOneColEditWidthEdit% vExcludeProgramExecutables, %ExcludeProgramExecutables% + Gui, MenuGui:Add, Button, x%MenuOneColEditButton% yp w130 gSetDisableProcess, Edit + Gui, MenuGui:Font, cGreen + Gui, MenuGui:Add, Text, x%MenuGroup1of1HelpX% y%MenuRowHelpY% vhExcludeProgramExecutables gHelpMe, %MenuGuiHelpIcon% + Gui, MenuGui:Font, cBlack -;HelperWindowProgramTitles + MenuRowY := MenuRowY + MenuRowHeight + MenuSeparatorY + MenuRowHelpY := MenuRowY - MenuHelpIndentY + MenuRowEditY := MenuRowY + MenuEditIndentY -Gui, MenuGui:Add, GroupBox, x%Group1BoxX% y%RowY% w%OneColGroupWidth% h%RowHeight% , Window titles you want the helper window enabled for -Gui, MenuGui:Add, Edit, x%Group1EditX% y%RowEditY% w%OneColEditWidthEdit% vHelperWindowProgramTitles, %HelperWindowProgramTitles% -Gui, MenuGui:Add, Button, x%OneColEditButton% yp w130 gSetHelpTitles, Edit -Gui, MenuGui:Font, cGreen -Gui, MenuGui:Add, Text, x%Group1of1HelpX% y%RowHelpY% vhHelperWindowProgramTitles gHelpMe, %GuiHelpIcon% -Gui, MenuGui:Font, cBlack + ;HelperWindowProgramTitles -RowY := RowY + RowHeight + SeparatorY -RowHelpY := RowY - HelpIndentY -RowEditY := RowY + EditIndentY + Gui, MenuGui:Add, GroupBox, x%MenuGroup1BoxX% y%MenuRowY% w%MenuOneColGroupWidth% h%MenuRowHeight% , Window titles you want the helper window enabled for + Gui, MenuGui:Add, Edit, x%MenuGroup1EditX% y%MenuRowEditY% w%MenuOneColEditWidthEdit% vHelperWindowProgramTitles, %HelperWindowProgramTitles% + Gui, MenuGui:Add, Button, x%MenuOneColEditButton% yp w130 gSetHelpTitles, Edit + Gui, MenuGui:Font, cGreen + Gui, MenuGui:Add, Text, x%MenuGroup1of1HelpX% y%MenuRowHelpY% vhHelperWindowProgramTitles gHelpMe, %MenuGuiHelpIcon% + Gui, MenuGui:Font, cBlack -;HelperWindowProgramExecutables + MenuRowY := MenuRowY + MenuRowHeight + MenuSeparatorY + MenuRowHelpY := MenuRowY - MenuHelpIndentY + MenuRowEditY := MenuRowY + MenuEditIndentY -Gui, MenuGui:Add, GroupBox, x%Group1BoxX% y%RowY% w%OneColGroupWidth% h%RowHeight% , Processes you want the helper window enabled for -Gui, MenuGui:Add, Edit, x%Group1EditX% y%RowEditY% w%OneColEditWidthEdit% vHelperWindowProgramExecutables, %HelperWindowProgramExecutables% -Gui, MenuGui:Add, Button, x%OneColEditButton% yp w130 gSetHelpProcess, Edit -Gui, MenuGui:Font, cGreen -Gui, MenuGui:Add, Text, x%Group1of1HelpX% y%RowHelpY% vhHelperWindowProgramExecutables gHelpMe, %GuiHelpIcon% -Gui, MenuGui:Font, cBlack + ;HelperWindowProgramExecutables + Gui, MenuGui:Add, GroupBox, x%MenuGroup1BoxX% y%MenuRowY% w%MenuOneColGroupWidth% h%MenuRowHeight% , Processes you want the helper window enabled for + Gui, MenuGui:Add, Edit, x%MenuGroup1EditX% y%MenuRowEditY% w%MenuOneColEditWidthEdit% vHelperWindowProgramExecutables, %HelperWindowProgramExecutables% + Gui, MenuGui:Add, Button, x%MenuOneColEditButton% yp w130 gSetHelpProcess, Edit + Gui, MenuGui:Font, cGreen + Gui, MenuGui:Add, Text, x%MenuGroup1of1HelpX% y%MenuRowHelpY% vhHelperWindowProgramExecutables gHelpMe, %MenuGuiHelpIcon% + Gui, MenuGui:Font, cBlack -Gui, MenuGui:Tab, 4 ; advanced ------------------------------------------------------------------------- -RowY := SeparatorY + 30 -RowHelpY := RowY - HelpIndentY -RowEditY := RowY + EditIndentY + Gui, MenuGui:Tab, 4 ; advanced ------------------------------------------------------------------------- -Gui, MenuGui:Add, GroupBox, x%Group1BoxX% y%RowY% w%OneColGroupWidth% h%RowHeight% , Terminating Characters (see http://www.autohotkey.com/docs/KeyList.htm) -Gui, MenuGui:Add, Edit, x%Group1EditX% y%RowEditY% w%OneColEditWidth% vTerminatingCharacters, %TerminatingCharacters% -Gui, MenuGui:Font, cGreen -Gui, MenuGui:Add, Text, x%Group1of1HelpX% y%RowHelpY% vhTerminatingCharacters gHelpMe, %GuiHelpIcon% -Gui, MenuGui:Font, cBlack + MenuRowY := MenuSeparatorY + 30 + MenuRowHelpY := MenuRowY - MenuHelpIndentY + MenuRowEditY := MenuRowY + MenuEditIndentY -RowY := RowY + RowHeight + SeparatorY -RowEditY := RowY + EditIndentY -RowHelpY := RowY - HelpIndentY + Gui, MenuGui:Add, GroupBox, x%MenuGroup1BoxX% y%MenuRowY% w%MenuOneColGroupWidth% h%MenuRowHeight% , Terminating Characters (see http://www.autohotkey.com/docs/KeyList.htm) + Gui, MenuGui:Add, Edit, x%MenuGroup1EditX% y%MenuRowEditY% w%MenuOneColEditWidth% vTerminatingCharacters, %TerminatingCharacters% + Gui, MenuGui:Font, cGreen + Gui, MenuGui:Add, Text, x%MenuGroup1of1HelpX% y%MenuRowHelpY% vhTerminatingCharacters gHelpMe, %MenuGuiHelpIcon% + Gui, MenuGui:Font, cBlack -Gui, MenuGui:Add, GroupBox, x%Group1BoxX% y%RowY% w%OneColGroupWidth% h%RowHeight% , Force New Word Characters (comma separated) -Gui, MenuGui:Add, Edit, x%Group1EditX% y%RowEditY% w%OneColEditWidth% vForceNewWordCharacters, %ForceNewWordCharacters% -Gui, MenuGui:Font, cGreen -Gui, MenuGui:Add, Text, x%Group1of1HelpX% y%RowHelpY% vhForceNewWordCharacters gHelpMe, %GuiHelpIcon% -Gui, MenuGui:Font, cBlack + MenuRowY := MenuRowY + MenuRowHeight + MenuSeparatorY + MenuRowEditY := MenuRowY + MenuEditIndentY + MenuRowHelpY := MenuRowY - MenuHelpIndentY + Gui, MenuGui:Add, GroupBox, x%MenuGroup1BoxX% y%MenuRowY% w%MenuOneColGroupWidth% h%MenuRowHeight% , Force New Word Characters (comma separated) + Gui, MenuGui:Add, Edit, x%MenuGroup1EditX% y%MenuRowEditY% w%MenuOneColEditWidth% vForceNewWordCharacters, %ForceNewWordCharacters% + Gui, MenuGui:Font, cGreen + Gui, MenuGui:Add, Text, x%MenuGroup1of1HelpX% y%MenuRowHelpY% vhForceNewWordCharacters gHelpMe, %MenuGuiHelpIcon% + Gui, MenuGui:Font, cBlack -Gui, MenuGui:Tab, 5 ; about & help -------------------------------------------- -RowY := SeparatorY + 30 -RowHelpY := RowY - HelpIndentY -RowEditY := RowY + EditIndentY + Gui, MenuGui:Tab, 5 ; about & help -------------------------------------------- -hHelpText = %hIntro%`r`n`r`n%hIncludeProgramExecutables%`r`n`r`n%hIncludeProgramTitles%`r`n`r`n%hExcludeProgramExecutables%`r`n`r`n%hExcludeProgramTitles%`r`n`r`n%hLength%`r`n`r`n%hNumPresses%`r`n`r`n%hLearnMode%`r`n`r`n%hLearnCount%`r`n`r`n%hLearnLength%`r`n`r`n%hArrowKeyMethod%`r`n`r`n%hDisabledAutoCompleteKeys%`r`n`r`n%hDetectMouseClickMove%`r`n`r`n%hNoBackSpace%`r`n`r`n%hAutoSpace%`r`n`r`n%hSendMethod%`r`n`r`n%hTerminatingCharacters%`r`n`r`n%hForceNewWordCharacters%`r`n`r`n%hListBoxOffset%`r`n`r`n%hListBoxFontFixed%`r`n`r`n%hListBoxFontOverride%`r`n`r`n%hListBoxFontSize%`r`n`r`n%hListBoxCharacterWidth%`r`n`r`n%hListBoxOpacity%`r`n`r`n%hListBoxRows%`r`n`r`n%hHelperWindowProgramExecutables%`r`n`r`n%hHelperWindowProgramTitles% + MenuRowY := MenuSeparatorY + 30 + MenuRowHelpY := MenuRowY - MenuHelpIndentY + MenuRowEditY := MenuRowY + MenuEditIndentY -Loop, Parse, hHelpText,`n, `r -{ - IF ( SubStr(A_LoopField, 1,1) = ";") - { - hModHelpText .= SubStr(A_LoopField,2) . "`r`n" - } else - { - hModHelpText .= A_LoopField . "`r`n" - } -} + hIntro= + ( +TypingAid is a simple, compact, and handy auto-completion utility. -Gui, MenuGui:Add, Edit, ReadOnly x%Group1BoxX% y%RowY% w%OneColGroupWidth% h%TabHeightEdit%, %hModHelpText% +It is customizable enough to be useful for regular typing and for programming. -hModHelpText = -hHelpText = -hIntro = +Features: +As you type your word, up to 10 (or as defined in the Preferences file) matches will appear in a drop-down dialog, numbered 1 - 0 (10th). To choose the match you want just hit the associated number on your keyboard (numpad does not work). Alternatively you can select an item from the drop-down using the Up/Down arrows. You can define a fixed position for the drop-down dialog to appear by hitting Ctrl-Shift-H to open a small helper window, or by specifying a list of programs in the preferences file. Please note that in Firefox, Thunderbird, and certain other programs you will probably need to open the helper window due to issues detecting the caret position. +Words should be stored in a file named 'Wordlist.txt' which should be located in the script directory. These words may be commented out by prefixing with a semicolon or simply removed or added. Words may include terminating characters (such as space), but you must select the word before typing the terminating character. -Gui, MenuGui:tab, +In addition to being able to use the number keys to select a word, you can select words from the drop-down via the Up/Down arrows. Hitting Up on the first item will bring you to the last and hitting Down on the last item will bring you to the first. Hitting Page Up will bring you up 10 items, or to the first item. Hitting Page Down will bring you down 10 items, or to the last item. You can hit Tab, Right Arrow, Ctrl-Space, or Ctrl-Enter to autocomplete the selected word. This feature can be disabled or have some of its behavior modified via the Preferences file. -RowY := TabHeight+15 -RowHelpY := RowY - HelpIndentY -RowEditY := RowY + EditIndentY -RowThreeButtonWidth := (TwoColGroupWidth - (4 * EditIndentX))/3 -RowThreeButtonNext := EditIndentX + RowThreeButtonWidth +The script will learn words as you type them if LearnMode=On in the preferences file. If you type a word more than 5 times (or as defined in the preferences.ini file) in a single session the word will be permanently added to the list of learnedd words. Learned words will always appear below predefined words, but will be ranked and ordered among other learned words based on the frequency you type them. You can permanently learn a word by highlighting a word and hitting Ctrl-Shift-C (this works even if LearnMode=Off). You may use Ctrl-Shift-Del to remove the currently selected Learned Word. +Learned words are stored in the WordlistLearned.db sqlite3 database. Learned words are backed up in WordlistLearned.txt. To modify the list of Learned words manually, delete the WordlistLearned.db database, then manually edit the WordlistLearned.txt file. On the next launch of the script, the WordlistLearned.db database will be rebuilt. -Gui, MenuGui:Add, GroupBox, x%Group1BoxX% y%RowY% w%TwoColGroupWidth% h50 , Configuration -Gui, MenuGui:Add, Button, x%Group1EditX% y%RowEditY% w%RowThreeButtonWidth% gSave , Save && Exit -Gui, MenuGui:Add, Button, xp+%RowThreeButtonNext% yp w%RowThreeButtonWidth% gRestore, Restore default -Gui, MenuGui:Add, Button, xp+%RowThreeButtonNext% yp w%RowThreeButtonWidth% gCancel , Cancel +The script will automatically create a file named preferences.ini in the script directory. This file allows for customization of the script. +To allow for distribution of standardized preferences, a Defaults.ini may be distributed with the same format as Preferences.ini. If the Defaults.ini is present, Preferences.ini will not be created. A user may override the Defaults.ini by manually creating a Preferences.ini. -Gui, MenuGui:Font, cBlack bold -Gui, MenuGui:Add, Text, x%Group2of2EditX% Yp-10 gVisitForum, TypingAid -Gui, MenuGui:Font, cBlack normal +Customizable features include (see also detailed description below) -Gui, MenuGui:Add, Text, xp+60 Yp gVisitForum, is free software, support forum at -Gui, MenuGui:Font, cGreen -Gui, MenuGui:Add, Text, x%Group2of2EditX% Yp+%TextRowY% vVisitForum gVisitForum, www.autohotkey.com (click here) -Gui, MenuGui:Font, cBlack + * List of programs for which you want TypingAid enabled. + * List of programs for which you do not want TypingAid enabled. + * Number of characters before the list of words appears. + * Number of times you must press a number hotkey to select the associated word (options are 1 and 2, 2 has had minimal testing). + * Enable or disable learning mode. + * Number of times you must type a word before it is permanently learned. + * Number of characters a word needs to have in order to be learned. + * List of strings which will prevent any word which contains one of these strings from being learned. + * Enable, disable, or customize the arrow key's functionality. + * Disable certain keys for autocompleting a word selected via the arrow keys. + * Enable or disable the resetting of the List Box on a mouseclick. + * Change whether the script simply completes or actually replaces the word (capitalization change based on the wordlist file) + * Change whether a space should be automatically added after the autocompleted word or not. + * Change whether the typed word should appear in the word list or not. + * Change the method used to send the word to the screen. + * List of characters which terminate a word. + * List of characters which terminate a word and start a new word. + * List of programs for which you want the Helper Window to automatically open. + * Number of pixels below the caret to display the List Box. + * List Box Default Font of fixed (Courier New) or variable (Tahoma) width. + * List Box Default Font override. + * List Box Font Size. + * List Box Character Width to override the computed character width. + * List Box Opacity setting to set the transparency of the List Box. + * List Box Rows to define the number of items to show in the list at once. -Gui, MenuGui:Show, h%GuiHeight% w%GuiWidth%, TypingAid Settings -Return +Unicode Support: +Full (untested) for UTF-8 character set. + ) + + hHelpText = %hIntro%`r`n`r`n%hIncludeProgramExecutables%`r`n`r`n%hIncludeProgramTitles%`r`n`r`n%hExcludeProgramExecutables%`r`n`r`n%hExcludeProgramTitles%`r`n`r`n%hLength%`r`n`r`n%hNumPresses%`r`n`r`n%hLearnMode%`r`n`r`n%hLearnCount%`r`n`r`n%hLearnLength%`r`n`r`n%hArrowKeyMethod%`r`n`r`n%hDisabledAutoCompleteKeys%`r`n`r`n%hDetectMouseClickMove%`r`n`r`n%hNoBackSpace%`r`n`r`n%hAutoSpace%`r`n`r`n%hSendMethod%`r`n`r`n%hTerminatingCharacters%`r`n`r`n%hForceNewWordCharacters%`r`n`r`n%hListBoxOffset%`r`n`r`n%hListBoxFontFixed%`r`n`r`n%hListBoxFontOverride%`r`n`r`n%hListBoxFontSize%`r`n`r`n%hListBoxCharacterWidth%`r`n`r`n%hListBoxOpacity%`r`n`r`n%hListBoxRows%`r`n`r`n%hHelperWindowProgramExecutables%`r`n`r`n%hHelperWindowProgramTitles% + + Loop, Parse, hHelpText,`n, `r + { + IF ( SubStr(A_LoopField, 1,1) = ";") + { + hModHelpText .= SubStr(A_LoopField,2) . "`r`n" + } else + { + hModHelpText .= A_LoopField . "`r`n" + } + } + + Gui, MenuGui:Add, Edit, ReadOnly x%MenuGroup1BoxX% y%MenuRowY% w%MenuOneColGroupWidth% h%MenuTabHeightEdit%, %hModHelpText% + + hModHelpText = + hHelpText = + hIntro = + + Gui, MenuGui:tab, + + MenuRowY := MenuTabHeight+15 + MenuRowHelpY := MenuRowY - MenuHelpIndentY + MenuRowEditY := MenuRowY + MenuEditIndentY + MenuRowThreeButtonWidth := (MenuTwoColGroupWidth - (4 * MenuEditIndentX))/3 + MenuRowThreeButtonNext := MenuEditIndentX + MenuRowThreeButtonWidth + + Gui, MenuGui:Add, GroupBox, x%MenuGroup1BoxX% y%MenuRowY% w%MenuTwoColGroupWidth% h50 , Configuration + Gui, MenuGui:Add, Button, x%MenuGroup1EditX% y%MenuRowEditY% w%MenuRowThreeButtonWidth% gSave , Save && Exit + Gui, MenuGui:Add, Button, xp+%MenuRowThreeButtonNext% yp w%MenuRowThreeButtonWidth% gRestore, Restore default + Gui, MenuGui:Add, Button, xp+%MenuRowThreeButtonNext% yp w%MenuRowThreeButtonWidth% gCancel , Cancel + + Gui, MenuGui:Font, cBlack bold + Gui, MenuGui:Add, Text, x%MenuGroup2of2EditX% Yp-10 gVisitForum, TypingAid + Gui, MenuGui:Font, cBlack normal + + Gui, MenuGui:Add, Text, xp+60 Yp gVisitForum, is free software, support forum at + Gui, MenuGui:Font, cGreen + Gui, MenuGui:Add, Text, x%MenuGroup2of2EditX% Yp+%MenuTextMenuRowY% gVisitForum, www.autohotkey.com (click here) + Gui, MenuGui:Font, cBlack + + Gui, MenuGui:Show, h%MenuGuiHeight% w%MenuGuiWidth%, TypingAid Settings + Return +} SetEnableTitles: -TitleType=1 -GetExe=0 -ActiveList:=IncludeProgramTitles -Gosub, GetList +GetList(1,0,IncludeProgramTitles) Return SetDisableTitles: -TitleType=2 -GetExe=0 -ActiveList:=ExcludeProgramTitles -Gosub, GetList +GetList(2,0,ExcludeProgramTitles) Return SetEnableProcess: -TitleType=3 -GetExe=1 -ActiveList:=IncludeProgramExecutables -Gosub, GetList +GetList(3,1,IncludeProgramExecutables) Return SetDisableProcess: -TitleType=4 -GetExe=1 -ActiveList:=ExcludeProgramExecutables -Gosub, GetList +GetList(4,1,ExcludeProgramExecutables) Return SetHelpTitles: -TitleType=5 -GetExe=0 -ActiveList:=HelperWindowProgramTitles -Gosub, GetList +GetList(5,0,HelperWindowProgramTitles) Return SetHelpProcess: -TitleType=6 -GetExe=1 -ActiveList:=HelperWindowProgramExecutables -Gosub, GetList +GetList(6,1,HelperWindowProgramExecutables) Return +GetList(TitleType,GetExe, ByRef ActiveList) +{ + If (GetExe =1) + { + WinGet, id, list,,, Program Manager + Loop, %id% + { + tmptitle= + tmpid := id%A_Index% + WinGet, tmptitle, ProcessName, ahk_id %tmpid% + If (tmptitle <> "") + RunningList .= tmptitle "|" + } + } Else If (GetExe = 0) ; get list of active window titles + { + WinGet, id, list,,, Program Manager + Loop, %id% + { + tmptitle= + tmpid := id%A_Index% + WinGetTitle, tmptitle, ahk_id %tmpid% + If (tmptitle <> "") + RunningList .= tmptitle "|" + } + } + GetExe=0 + + Sort,RunningList, D| U + Gui, ProcessList:+OwnerMenuGui + Gui, ProcessList:+Owner + Gui, MenuGui:+Disabled ; disable main window + Gui, ProcessList:Add, Text,x10 y10, Select program: + Gui, ProcessList:Add, DDL, x110 y10 w250 R10 gToEdit,%RunningList% + Gui, ProcessList:Add, Text,x10 y40, Edit: + Gui, ProcessList:Add, Edit, x110 y40 w250 + Gui, ProcessList:Add, Button, xp+260 yp gAddNew1 w40 Default, Add + Gui, ProcessList:Add, Text, x10 yp+40, Current list: + Gui, ProcessList:Add, ListBox, x110 yp w250 r10, %ActiveList% + Gui, ProcessList:Add, Button, xp+260 yp gRemoveNew1 w40 , Del + Gui, ProcessList:Add, Text, x10 yp+170, a) Select a program or window from the list or type a name in the`n%A_Space%%A_Space%%A_Space%%A_Space%%A_Space%'Edit' control (you may need to edit it further)`nb) Click ADD to add it to the list`nc) To remove a program/title, select an item from the 'current list' and`n%A_Space%%A_Space%%A_Space%%A_Space%click DEL. + Gui, ProcessList:Add, Button, x10 yp+90 w190 gSaveTitleList, Save + Gui, ProcessList:Add, Button, xp+210 yp w190 gCancelTitle, Cancel + Gui, ProcessList:Show, w420 h380, TypingAid Settings + Return +} + Advanced: -WinGetPos, GuiXPos, GuiYPos,,,A -Gui, MenuGui:Show, h%AdvGuiHeight% w%GuiWidth% y%GuiYPos% x%GuiXPos%, New GUI Window +WinGetPos, MenuGuiXPos, MenuGuiYPos,,,A +Gui, MenuGui:Show, h%MenuAdvGuiHeight% w%MenuGuiWidth% y%MenuGuiYPos% x%MenuGuiXPos%, New GUI Window Return VisitForum: @@ -654,33 +653,33 @@ Save: ;Gui, MenuGui:Submit Gui, MenuGui:Destroy -;Loop, parse, _SendMethodOptionsCode, | ; get sendmethod -; If (_SendMethodC = A_Index) +;Loop, parse, Menu_SendMethodOptionsCode, | ; get sendmethod +; If (Menu_SendMethodC = A_Index) ; SendMethod:=A_LoopField ;DisabledAutoCompleteKeys= -;If (CtrlEnter = 0) +;If (MenuCtrlEnter = 0) ; DisabledAutoCompleteKeys .= "E" -;If (Tab = 0) +;If (MenuTab = 0) ; DisabledAutoCompleteKeys .= "T" -;If (CtrlSpace = 0) +;If (MenuCtrlSpace = 0) ; DisabledAutoCompleteKeys .= "S" -;If (RightArrow = 0) +;If (MenuRightArrow = 0) ; DisabledAutoCompleteKeys .= "R" -;If (NumberKeys = 0) +;If (MenuNumberKeys = 0) ; DisabledAutoCompleteKeys .= "N" -;If (Enter = 0) +;If (MenuEnter = 0) ; DisabledAutoCompleteKeys .= "U" -;If (_CaseCorrection = "on") +;If (Menu_CaseCorrection = "on") ; NoBackSpace=Off -;Else If (_CaseCorrection = "off") +;Else If (Menu_CaseCorrection = "off") ; NoBackSpace=On -;Loop, parse, _ArrowKeyMethodOptionsText, | +;Loop, parse, Menu_ArrowKeyMethodOptionsText, | ; { ; StringSplit, Split, A_LoopField, - -; Split1=%Split1% ; autotrim +; Split1 := Trim(Split1) ; If (ArrowKeyMethod = A_Index) ; { ; ArrowKeyMethod := Split1 @@ -702,18 +701,18 @@ Loop, Parse, %A_GuiControl%,`r`n { IF ( SubStr(A_LoopField, 1,1) = ";") { - _help .= SubStr(A_LoopField,2) . "`r`n" + Menu_Help .= SubStr(A_LoopField,2) . "`r`n" } else { - _help .= A_LoopField . "`r`n" + Menu_Help .= A_LoopField . "`r`n" } } -MsgBox , 32 , TypingAid Help, %_help% -_help= +MsgBox , 32 , TypingAid Help, %Menu_Help% +Menu_Help= Return -; 2005 by shimanov +; derived from work by shimanov, 2005 ; http://www.autohotkey.com/forum/viewtopic.php?p=37696#37696 HandleMessage( p_w, p_l, p_m, p_hw ) { @@ -774,95 +773,47 @@ HandleMessage( p_w, p_l, p_m, p_hw ) } } - -GetList: -;Gui, MenuGui:Hide -RunningList= -If (GetExe = 1) ; get list of active processes -{ - WinGet, id, list,,, Program Manager - Loop, %id% - { - tmptitle= - tmpid := id%A_Index% - WinGet, tmptitle, ProcessName, ahk_id %tmpid% - If (tmptitle <> "") - RunningList .= tmptitle "|" - } -} -Else If (GetExe = 0) ; get list of active window titles -{ - WinGet, id, list,,, Program Manager - Loop, %id% - { - tmptitle= - tmpid := id%A_Index% - WinGetTitle, tmptitle, ahk_id %tmpid% - If (tmptitle <> "") - RunningList .= tmptitle "|" - } -} -GetExe=0 - -Sort,RunningList, D| U -Gui, ProcessList:+OwnerMenuGui -Gui, ProcessList:+Owner -Gui, MenuGui:+Disabled ; disable main window -Gui, ProcessList:Add, Text,x10 y10, Select program: -Gui, ProcessList:Add, DDL, x110 y10 w250 R10 gToEdit,%RunningList% -Gui, ProcessList:Add, Text,x10 y40, Edit: -Gui, ProcessList:Add, Edit, x110 y40 w250 vAddNew1 -Gui, ProcessList:Add, Button, xp+260 yp gAddNew1 w40 Default, Add -Gui, ProcessList:Add, Text, x10 yp+40, Current list: -Gui, ProcessList:Add, ListBox, x110 yp w250 r10, %ActiveList% -Gui, ProcessList:Add, Button, xp+260 yp gRemoveNew1 w40 , Del -Gui, ProcessList:Add, Text, x10 yp+170, a) Select a program or window from the list or type a name in the`n%A_Space%%A_Space%%A_Space%%A_Space%%A_Space%'Edit' control (you may need to edit it further)`nb) Click ADD to add it to the list`nc) To remove a program/title, select an item from the 'current list' and`n%A_Space%%A_Space%%A_Space%%A_Space%click DEL. -Gui, ProcessList:Add, Button, x10 yp+90 w190 gSaveTitleList, Save -Gui, ProcessList:Add, Button, xp+210 yp w190 gCancelTitle, Cancel -Gui, ProcessList:Show, w420 h380, TypingAid Settings -Return - SaveTitleList: -ControlGet, List, List, , ListBox1 +ControlGet, MenuTitleList, List, , ListBox1 Gui, ProcessList:Destroy ;Gui, MenuGui:Show Gui, MenuGui:-Disabled ; enable main window WinActivate, TypingAid Settings -StringReplace, List, List, `n, |, All +StringReplace, MenuTitleList, MenuTitleList, `n, |, All -If (TitleType=1) +If (MenuTitleType=1) { - IncludeProgramTitles:=List + IncludeProgramTitles:=MenuTitleList GuiControl, MenuGui:Text, Edit2, GuiControl, MenuGui:Text, Edit2, %IncludeProgramTitles% } -Else If (TitleType=2) +Else If (MenuTitleType=2) { - ExcludeProgramTitles:=List + ExcludeProgramTitles:=MenuTitleList GuiControl, MenuGui:Text, Edit3, GuiControl, MenuGui:Text, Edit3, %ExcludeProgramTitles% } -Else If (TitleType=3) +Else If (MenuTitleType=3) { - IncludeProgramExecutables:=List + IncludeProgramExecutables:=MenuTitleList GuiControl, MenuGui:Text, Edit4, GuiControl, MenuGui:Text, Edit4, %IncludeProgramExecutables% } -Else If (TitleType=4) +Else If (MenuTitleType=4) { - ExcludeProgramExecutables:=List + ExcludeProgramExecutables:=MenuTitleList GuiControl, MenuGui:Text, Edit5, GuiControl, MenuGui:Text, Edit5, %ExcludeProgramExecutables% } -Else If (TitleType=5) +Else If (MenuTitleType=5) { - HelperWindowProgramTitles:=List + HelperWindowProgramTitles:=MenuTitleList GuiControl, MenuGui:Text, Edit6, GuiControl, MenuGui:Text, Edit6, %HelperWindowProgramTitles% } -Else If (TitleType=6) +Else If (MenuTitleType=6) { - HelperWindowProgramExecutables:=List + HelperWindowProgramExecutables:=MenuTitleList GuiControl, MenuGui:Text, Edit7, GuiControl, MenuGui:Text, Edit7, %HelperWindowProgramExecutables% } @@ -877,28 +828,28 @@ WinActivate, TypingAid Settings Return ToEdit: -GuiControlGet, OutputVar, ProcessList:,ComboBox1 +GuiControlGet, MenuOutputVar, ProcessList:,ComboBox1 GuiControl, ProcessList:, Edit1, -GuiControl, ProcessList:, Edit1, %OutputVar% +GuiControl, ProcessList:, Edit1, %MenuOutputVar% ControlFocus, Edit1 Return AddNew1: -GuiControlGet, OutputVar, ProcessList:,Edit1 -GuiControl, ProcessList:, ListBox1, %OutputVar%| +GuiControlGet, MenuOutputVar, ProcessList:,Edit1 +GuiControl, ProcessList:, ListBox1, %MenuOutputVar%| GuiControl, ProcessList:, Edit1, ControlFocus, Edit1 Return RemoveNew1: -GuiControlGet, OutputVar, ProcessList:, Listbox1 -ControlGet, List, List, , ListBox1 -StringReplace, List, List, `n, |, All -List := "|" list "|" -StringReplace, List, List, |%OutputVar%|, |, all -StringTrimRight, list, list, 1 +GuiControlGet, MenuOutputVar, ProcessList:, Listbox1 +ControlGet, MenuTitleList, List, , ListBox1 +StringReplace, MenuTitleList, MenuTitleList, `n, |, All +MenuTitleList := "|" MenuTitleList "|" +StringReplace, MenuTitleList, MenuTitleList, |%MenuOutputVar%|, |, all +StringTrimRight, MenuTitleList, MenuTitleList, 1 GuiControl, ProcessList:, ListBox1, | -GuiControl, ProcessList:, ListBox1, %list% +GuiControl, ProcessList:, ListBox1, %MenuTitleList% Return ProcessListGuiClose: From d2d43e07975cd6ec272d21b3f53e25905ce0ffe0 Mon Sep 17 00:00:00 2001 From: ManiacDC Date: Mon, 12 Jan 2015 07:08:35 -0500 Subject: [PATCH 16/62] Fixed TerminatingCharacters in Settings Disabled Settings tray menu option when in Settings menu --- Source/Includes/Preferences File.ahk | 18 +++++++++++------- Source/Includes/Settings.ahk | 2 ++ Source/TypingAid.ahk | 3 ++- 3 files changed, 15 insertions(+), 8 deletions(-) diff --git a/Source/Includes/Preferences File.ahk b/Source/Includes/Preferences File.ahk index 6d1a80a..12b7a10 100644 --- a/Source/Includes/Preferences File.ahk +++ b/Source/Includes/Preferences File.ahk @@ -232,7 +232,7 @@ ReadPreferences(RestoreDefaults = false) } IfEqual, TerminatingCharacters, - TerminatingCharacters = %DftTerminatingCharacters% + TerminatingCharacters := DftTerminatingCharacters ParseTerminatingCharacters() @@ -419,19 +419,23 @@ HelperWindowProgramTitles=%DftHelperWindowProgramTitles% ParseTerminatingCharacters() { global TerminatingCharacters + global TerminatingCharactersParsed global TerminatingEndKeys Loop, Parse, TerminatingCharacters { IfEqual, OpenWord, 1 { - If ( A_LoopField == "{" ) - { - TempCharacters .= A_LoopField - } else If ( A_LoopField == "}" ) + If ( A_LoopField == "}" ) { OpenWord = - TempEndKeys .= "{" . Word . "}" + IF !(Word) + TempCharacters .= "{}" + else If ( Word = "{" || Word = "}") + TempCharacters .= Word + else + TempEndKeys .= "{" . Word . "}" + Word = } else { @@ -449,7 +453,7 @@ ParseTerminatingCharacters() IfNotEqual, Word, TempCharacters .= Word - TerminatingCharacters := TempCharacters + TerminatingCharactersParsed := TempCharacters TerminatingEndKeys := TempEndKeys } diff --git a/Source/Includes/Settings.ahk b/Source/Includes/Settings.ahk index e592136..61dc9f9 100644 --- a/Source/Includes/Settings.ahk +++ b/Source/Includes/Settings.ahk @@ -646,6 +646,7 @@ Esc:: MenuGuiGuiClose: Cancel: Gui, MenuGui:Destroy +Menu, Tray, Enable, Settings ;ExitApp Return @@ -694,6 +695,7 @@ Gui, MenuGui:Destroy ; Break ; } ;ExitApp +Menu, Tray, Enable, Settings Return HelpMe: diff --git a/Source/TypingAid.ahk b/Source/TypingAid.ahk index eca11d1..9bf73cf 100644 --- a/Source/TypingAid.ahk +++ b/Source/TypingAid.ahk @@ -218,7 +218,7 @@ ProcessKey(chr,EndKey) StringTrimRight, Word, Word, 1 } } - } else if ( ( EndKey == "Max" ) && !(InStr(TerminatingCharacters, chr)) ) + } else if ( ( EndKey == "Max" ) && !(InStr(TerminatingCharactersParsed, chr)) ) { ; If active window has different window ID from the last input, ;learn and blank word, then assign number pressed to the word @@ -965,6 +965,7 @@ MaybeFixFileEncoding(File,Encoding) ;------------------------------------------------------------------------ Configuration: +Menu, Tray, Disable, Settings GoSub, LaunchSettings Return From df48d23a27f0dd8243dd4dc4c4dd42afa781d06b Mon Sep 17 00:00:00 2001 From: ManiacDC Date: Tue, 13 Jan 2015 09:54:23 -0500 Subject: [PATCH 17/62] Added icons to TypingAid --- Source/Includes/Window.ahk | 6 ++-- Source/TypingAid-Active.ico | Bin 0 -> 103870 bytes Source/TypingAid-Inactive.ico | Bin 0 -> 103870 bytes Source/TypingAid.ahk | 63 +++++++++++++++++++++++++++------- Source/TypingAid.ahk.ini | Bin 404 -> 578 bytes 5 files changed, 54 insertions(+), 15 deletions(-) create mode 100644 Source/TypingAid-Active.ico create mode 100644 Source/TypingAid-Inactive.ico diff --git a/Source/Includes/Window.ahk b/Source/Includes/Window.ahk index 3e8254f..d01f524 100644 --- a/Source/Includes/Window.ahk +++ b/Source/Includes/Window.ahk @@ -51,7 +51,7 @@ GetIncludedActiveWindow() ;Force unload of Keyboard Hook Input - Suspend, On + SuspendOn() CloseListBox() MaybeSaveHelperWindowPos() ;Wait for an active window, then check again @@ -67,7 +67,7 @@ GetIncludedActiveWindow() Break ;Force unload of Keyboard Hook Input - Suspend, On + SuspendOn() CloseListBox() MaybeSaveHelperWindowPos() SetTitleMatchMode, 3 ; set the title match mode to exact so we can detect a window title change @@ -90,7 +90,7 @@ GetIncludedActiveWindow() { ; Check to see if we need to reopen the helper window MaybeOpenOrCloseHelperWindow(ActiveProcess,ActiveTitle,ActiveId) - Suspend, Off + SuspendOff() ;Set the process priority back to High Process, Priority,,High LastActiveIdBeforeHelper = %ActiveId% diff --git a/Source/TypingAid-Active.ico b/Source/TypingAid-Active.ico new file mode 100644 index 0000000000000000000000000000000000000000..0018869a9d311e0538ea871223338737e946b5fe GIT binary patch literal 103870 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 Icu(Me05v0Wq5uE@ literal 0 HcmV?d00001 diff --git a/Source/TypingAid-Inactive.ico b/Source/TypingAid-Inactive.ico new file mode 100644 index 0000000000000000000000000000000000000000..2fb21317f2a2ce8ace192d1f56ea8769d70fc9ee GIT binary patch literal 103870 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 delta 13 UcmX@aGKF~q4+ubN~PV From 491b839fcfe75003c634be3916c686608f779141 Mon Sep 17 00:00:00 2001 From: ManiacDC Date: Wed, 14 Jan 2015 07:28:49 -0500 Subject: [PATCH 18/62] Disable TypingAid & clear wordwhen in Settings menu Convert ClearAllVars to function Lighten Inactive TypingAid icon --- Source/Includes/Sending.ahk | 3 +-- Source/Includes/Settings.ahk | 9 +++++++ Source/Includes/Window.ahk | 11 ++++++++- Source/TypingAid-Inactive.ico | Bin 103870 -> 103870 bytes Source/TypingAid.ahk | 43 ++++++++++++++-------------------- 5 files changed, 38 insertions(+), 28 deletions(-) diff --git a/Source/Includes/Sending.ahk b/Source/Includes/Sending.ahk index 20e6b0f..512e5b4 100644 --- a/Source/Includes/Sending.ahk +++ b/Source/Includes/Sending.ahk @@ -29,8 +29,7 @@ SendWord(WordIndex) ; Update Typed Count UpdateWordCount(sending,0) SendFull(sending, StrLen(Word)) - clearword=1 - Gosub, clearallvars + ClearAllVars(true) Return } diff --git a/Source/Includes/Settings.ahk b/Source/Includes/Settings.ahk index 61dc9f9..d18ec50 100644 --- a/Source/Includes/Settings.ahk +++ b/Source/Includes/Settings.ahk @@ -2,6 +2,9 @@ ; by HugoV / Maniac LaunchSettings: +Menu, Tray, Disable, Settings +InSettings := true +ClearAllVars(True) ReadPreferences() ConstructGui() Return @@ -632,6 +635,9 @@ IfMsgBox Yes Return Restore: ; this could be changed to not restart TA +; will need to load defaults +; re-fresh gui +; re-load preferences if canceling ;FileDelete, Preferences.ini ;WinClose, \TypingAid ;Loop, TypingAid*.ahk @@ -646,11 +652,13 @@ Esc:: MenuGuiGuiClose: Cancel: Gui, MenuGui:Destroy +InSettings := false Menu, Tray, Enable, Settings ;ExitApp Return Save: +; should only save preferences.ini if different from defaults ;Gui, MenuGui:Submit Gui, MenuGui:Destroy @@ -695,6 +703,7 @@ Gui, MenuGui:Destroy ; Break ; } ;ExitApp +InSettings := false Menu, Tray, Enable, Settings Return diff --git a/Source/Includes/Window.ahk b/Source/Includes/Window.ahk index d01f524..2d99244 100644 --- a/Source/Includes/Window.ahk +++ b/Source/Includes/Window.ahk @@ -26,9 +26,9 @@ Winchanged: GetIncludedActiveWindow() { - global Helper_id global Active_id global Active_Title + global Helper_id global LastActiveIdBeforeHelper global ListBox_ID global MouseWin_ID @@ -124,6 +124,10 @@ CheckForActive(ActiveProcess,ActiveTitle) global ExcludeProgramTitles global IncludeProgramExecutables global IncludeProgramTitles + global InSettings + + If InSettings + Return, Loop, Parse, ExcludeProgramExecutables, | { @@ -164,6 +168,11 @@ ReturnWinActive() { global Active_id global Active_Title + global InSettings + + IF InSettings + Return, + WinGet, Temp_id, ID, A WinGetTitle, Temp_Title, ahk_id %Temp_id% Last_Title := Active_Title diff --git a/Source/TypingAid-Inactive.ico b/Source/TypingAid-Inactive.ico index 2fb21317f2a2ce8ace192d1f56ea8769d70fc9ee..039a45bab7cfc0c9795b7c26d9f13417592b87d1 100644 GIT binary patch literal 103870 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 literal 103870 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 Date: Thu, 22 Jan 2015 09:05:33 -0500 Subject: [PATCH 19/62] various reorganization and prep for being able to save... untested. --- Readme.txt | 2 +- Source/Includes/ListBox.ahk | 10 +- Source/Includes/Preferences File.ahk | 287 ++++++++++++++------------- Source/Includes/Settings.ahk | 106 ++++++++-- Source/TypingAid.ahk | 10 +- 5 files changed, 245 insertions(+), 170 deletions(-) diff --git a/Readme.txt b/Readme.txt index 5180cb8..9cb6fcd 100644 --- a/Readme.txt +++ b/Readme.txt @@ -69,7 +69,7 @@ Customizable features include: [*]List Box Rows to define the number of items to show in the list at once.[/*] [/LIST] [b]Unicode Support:[/b] -Full (untested) for UTF-8 character set. +Full support for UTF-8 character set. [b][url=https://github.com/ManiacDC/TypingAid/issues?q=is%3Aopen+is%3Aissue]Known Issues[/url][/b] diff --git a/Source/Includes/ListBox.ahk b/Source/Includes/ListBox.ahk index 685627b..b7ebc1c 100644 --- a/Source/Includes/ListBox.ahk +++ b/Source/Includes/ListBox.ahk @@ -41,7 +41,6 @@ ListBoxChooseItem() CloseListBox() { - global ListBoxGui global ListBox_ID IfNotEqual, ListBox_ID, { @@ -52,6 +51,15 @@ CloseListBox() Return } +DestroyListBox() +{ + global ListBox_ID + ListBox_ID = + Gui, ListBoxGui:Destroy + DisableKeyboardHotKeys() + Return +} + ;------------------------------------------------------------------------ SavePriorMatchPosition() diff --git a/Source/Includes/Preferences File.ahk b/Source/Includes/Preferences File.ahk index 12b7a10..3c84983 100644 --- a/Source/Includes/Preferences File.ahk +++ b/Source/Includes/Preferences File.ahk @@ -14,10 +14,13 @@ MaybeWriteHelperWindowPos() ;------------------------------------------------------------------------ -ReadPreferences(RestoreDefaults = false) +ReadPreferences(RestoreDefaults = false,RestorePreferences = false) { global - Local Prefs + + Local Etitle + + ;PrefsFile is global so it works in Settings.ahk Local INI Local Defaults Local LastState @@ -41,36 +44,36 @@ ReadPreferences(RestoreDefaults = false) Local DftIncludeProgramTitles Local DftExcludeProgramExecutables Local DftExcludeProgramTitles - Local DftWlen - Local DftNumPresses - Local DftLearnMode - Local DftLearnCount + ;DftWlen should be global so it works in ValidatePreferences + ;DftNumPresses should be global so it works in ValidatePreferences + ;DftLearnMode should be global so it works in ValidatePreferences + ;DftLearnCount should be global so it works in ValidatePreferences Local DftLearnLength Local DftDoNotLearnStrings - Local DftArrowKeyMethod + ;DftArrowKeyMethod should be global so it works in ValidatePreferences Local DftDisabledAutoCompleteKeys - Local DftDetectMouseClickMove - Local DftNoBackSpace - Local DftAutoSpace + ;DftDetectMouseClickMove should be globabl so it works in ValidatePreferences + ;DftNoBackSpace should be global so it works in ValidatePreferences + ;DftAutoSpace should be global so it works in ValidatePreferences Local DftSuppressMatchingWord - Local DftSendMethod - ;DftTerminatingCharacters should be global so it works in the help strings + ;DftSendMethod should be global so it works in ValidatePreferences + ;DftTerminatingCharacters should be global so it works in the help strings and ValidatePreferences Local DftForceNewWordCharacters - Local DftListBoxOffSet - Local DftListBoxFontFixed + ;DftListBoxOffSet should be global so it works in ValidatePreferences + ;DftListBoxFontFixed should be global so it works in ValidatePreferences Local DftListBoxFontOverride - Local DftListBoxFontSize - Local DftListBoxCharacterWidth - Local DftListBoxOpacity - Local DftListBoxRows + ;DftListBoxFontSize should be global so it works in ValidatePreferences + ;DftListBoxCharacterWidth should be global so it works in ValidatePreferences + ;DftListBoxOpacity should be global so it works in ValidatePreferences + ;DftListBoxRows should be global so it works in ValidatePreferences Local DftHelperWindowProgramExecutables Local DftHelperWindowProgramTitles - Prefs = %A_ScriptDir%\Preferences.ini + PrefsFile = %A_ScriptDir%\Preferences.ini Defaults = %A_ScriptDir%\Defaults.ini LastState = %A_ScriptDir%\LastState.ini - MaybeFixFileEncoding(Prefs,"UTF-16") + MaybeFixFileEncoding(PrefsFile,"UTF-16") MaybeFixFileEncoding(Defaults,"UTF-16") MaybeFixFileEncoding(LastState,"UTF-16") @@ -79,12 +82,12 @@ ReadPreferences(RestoreDefaults = false) ; There was a bug in TypingAid 2.19.7 that broke terminating characters for new preference files, this code repairs it BrokenTerminatingCharacters = {enter}{space}{esc}{tab}{Home}{End}{PgUp}{PgDn}{Up}{Down}{Left}{Right}.; - IfExist, %Prefs% + IfExist, %PrefsFile% { - IniRead, MaybeFixTerminatingCharacters, %Prefs%, Settings, TerminatingCharacters, %A_Space% + IniRead, MaybeFixTerminatingCharacters, %PrefsFile%, Settings, TerminatingCharacters, %A_Space% IF (MaybeFixTerminatingCharacters == BrokenTerminatingCharacters) { - IniWrite, %DftTerminatingCharacters%, %Prefs%, Settings, TerminatingCharacters + IniWrite, %DftTerminatingCharacters%, %PrefsFile%, Settings, TerminatingCharacters } } @@ -142,7 +145,7 @@ ReadPreferences(RestoreDefaults = false) DftValue := A_Space IF !(RestoreDefaults) - IniRead, %NormalVariable%, %Prefs%, %IniSection%, %IniKey%, %A_Space% + IniRead, %NormalVariable%, %PrefsFile%, %IniSection%, %IniKey%, %A_Space% IF DftVariable { @@ -152,6 +155,8 @@ ReadPreferences(RestoreDefaults = false) } } + ValidatePreferences() + ; Legacy support for old Preferences File IfNotEqual, Etitle, { @@ -165,110 +170,7 @@ ReadPreferences(RestoreDefaults = false) Etitle= } - if Wlen is not integer - { - Wlen = %DftWlen% - } - - IfEqual, LearnLength, - LearnLength := Wlen +2 - - if NumPresses not in 1,2 - NumPresses = %DftNumPresses% - - If LearnMode not in On,Off - LearnMode = %DftLearnMode% - - If LearnCount is not Integer - LearnCount = %DftLearnCount% - - If LearnLength is not Integer - { - LearnLength := Wlen + 2 - } else { - If ( LearnLength < ( Wlen + 1 ) ) - LearnLength := Wlen + 1 - } - - if DisabledAutoCompleteKeys contains N - NumKeyMethod = Off - - IfNotEqual, ArrowKeyMethod, Off - If DisabledAutoCompleteKeys contains E - If DisabledAutoCompleteKeys contains S - If DisabledAutoCompleteKeys contains T - If DisabledAutoCompleteKeys contains R - ArrowKeyMethod = Off - - If ArrowKeyMethod not in First,Off,LastWord,LastPosition - { - ArrowKeyMethod = %DftArrowKeyMethod% - } - - If DetectMouseClickMove not in On,Off - DetectMouseClickMove = %DftDetectMouseClickMove% - - If NoBackSpace not in On,Off - NoBackSpace = %DftNoBackSpace% - - If AutoSpace not in On,Off - AutoSpace = %DftAutoSpace% - - if SendMethod not in 1,2,3,1C,2C,3C,4C - SendMethod = %DftSendMethod% - - ;SendPlay does not work when not running as Administrator, switch to SendInput - If not A_IsAdmin - { - IfEqual, SendMethod, 1 - { - SendMethod = 2 - } - - else IfEqual, SendMethod, 1C - { - SendMethod = 2C - } - } - - IfEqual, TerminatingCharacters, - TerminatingCharacters := DftTerminatingCharacters - - ParseTerminatingCharacters() - - if ListBoxOffset is not Integer - ListBoxOffset = %DftListBoxOffSet% - - if ListBoxFontFixed not in On,Off - ListBoxFontFixed = %DftListBoxFontFixed% - - If ListBoxFontSize is not Integer - ListBoxFontSize = %DftListBoxFontSize% - else { - IfLess, ListBoxFontSize, 2 - ListBoxFontSize = 2 - } - - if ListBoxCharacterWidth is not Integer - ListBoxCharacterWidth = %DftListBoxCharacterWidth% - - IfEqual, ListBoxCharacterWidth, - ListBoxCharacterWidth := Ceil(ListBoxFontSize * 0.8 ) - - If ListBoxOpacity is not Integer - ListBoxOpacity = %DftListBoxOpacity% - else IfLess, ListBoxOpacity, 0 - ListBoxOpacity = 0 - else IfGreater, ListBoxOpacity, 255 - ListBoxOpacity = 255 - - If ListBoxRows is not Integer - ListBoxRows = %DftListBoxRows% - else IfLess, ListBoxRows, 3 - ListBoxRows = 3 - else IfGreater, ListBoxRows, - - IF RestoreDefaults + IF ( RestoreDefaults || RestorePreferences ) Return IfExist, %LastState% @@ -278,7 +180,7 @@ ReadPreferences(RestoreDefaults = false) ConstructHelpStrings() - If !(FileExist(Prefs) || FileExist(Defaults)) + If !(FileExist(PrefsFile) || FileExist(Defaults)) { INI= ( @@ -410,12 +312,123 @@ HelperWindowProgramExecutables=%DftHelperWindowProgramExecutables% ; ex: HelperWindowProgramTitles=Notepad|Internet Explorer HelperWindowProgramTitles=%DftHelperWindowProgramTitles% ) - FileAppendDispatch(INI, Prefs, "UTF-16") + FileAppendDispatch(INI, PrefsFile, "UTF-16") } Return } +ValidatePreferences() +{ + + global + + if Wlen is not integer + { + Wlen := DftWlen + } + + IfEqual, LearnLength, + LearnLength := Wlen +2 + + if NumPresses not in 1,2 + NumPresses := DftNumPresses + + If LearnMode not in On,Off + LearnMode := DftLearnMode + + If LearnCount is not Integer + LearnCount := DftLearnCount + + If LearnLength is not Integer + { + LearnLength := Wlen + 2 + } else { + If ( LearnLength < ( Wlen + 1 ) ) + LearnLength := Wlen + 1 + } + + if DisabledAutoCompleteKeys contains N + NumKeyMethod = Off + + IfNotEqual, ArrowKeyMethod, Off + If DisabledAutoCompleteKeys contains E + If DisabledAutoCompleteKeys contains S + If DisabledAutoCompleteKeys contains T + If DisabledAutoCompleteKeys contains R + If DisabledAutoCompleteKeys contains U + ArrowKeyMethod = Off + + If ArrowKeyMethod not in First,Off,LastWord,LastPosition + { + ArrowKeyMethod := DftArrowKeyMethod + } + + If DetectMouseClickMove not in On,Off + DetectMouseClickMove := DftDetectMouseClickMove + + If NoBackSpace not in On,Off + NoBackSpace := DftNoBackSpace + + If AutoSpace not in On,Off + AutoSpace := DftAutoSpace + + if SendMethod not in 1,2,3,1C,2C,3C,4C + SendMethod := DftSendMethod + + ;SendPlay does not work when not running as Administrator, switch to SendInput + If not A_IsAdmin + { + IfEqual, SendMethod, 1 + { + SendMethod = 2 + } else IfEqual, SendMethod, 1C + { + SendMethod = 2C + } + } + + IfEqual, TerminatingCharacters, + TerminatingCharacters := DftTerminatingCharacters + + ParseTerminatingCharacters() + + if ListBoxOffset is not Integer + ListBoxOffset := DftListBoxOffSet + + if ListBoxFontFixed not in On,Off + ListBoxFontFixed := DftListBoxFontFixed + + If ListBoxFontSize is not Integer + ListBoxFontSize := DftListBoxFontSize + else { + IfLess, ListBoxFontSize, 2 + ListBoxFontSize = 2 + } + + if ListBoxCharacterWidth is not Integer + ListBoxCharacterWidth := DftListBoxCharacterWidth + + IfEqual, ListBoxCharacterWidth, + ListBoxCharacterWidth := Ceil(ListBoxFontSize * 0.8 ) + + If ListBoxOpacity is not Integer + ListBoxOpacity := DftListBoxOpacity + else IfLess, ListBoxOpacity, 0 + ListBoxOpacity = 0 + else IfGreater, ListBoxOpacity, 255 + ListBoxOpacity = 255 + + If ListBoxRows is not Integer + ListBoxRows := DftListBoxRows + IfLess, ListBoxRows, 3 + ListBoxRows = 3 + else IfGreater, ListBoxRows, 30 + ListBoxRows = 30 + + Return +} + ParseTerminatingCharacters() { global TerminatingCharacters @@ -459,17 +472,9 @@ ParseTerminatingCharacters() SavePreferences() { - ;Settings that require a script restart - ;LearnMode - ; what does toggling learnmode and learncount do to the stored learned words in the SQL version? - - ;items that require re-init - InitializeHotKeys() - ;ArrowKeyMethod - ;DisabledAutoCompleteKeys - - ;hide/show listbox? disable/enable hotkeys? - ;hide listbox when menu gui open + ValidatePreferences() + ;do stuff + Return } ConstructHelpStrings() diff --git a/Source/Includes/Settings.ahk b/Source/Includes/Settings.ahk index d18ec50..cd508b7 100644 --- a/Source/Includes/Settings.ahk +++ b/Source/Includes/Settings.ahk @@ -6,6 +6,7 @@ Menu, Tray, Disable, Settings InSettings := true ClearAllVars(True) ReadPreferences() +Menu_OldValues := LearnCount . DelimiterChar . LearnLength . DelimiterChar . LearnMode ConstructGui() Return @@ -21,6 +22,7 @@ ConstructGui() Global hExcludeProgramExecutables, hExcludeProgramTitles, hIncludeProgramExecutables, hIncludeProgramTitles, hHelperWindowProgramExecutables, hHelperWindowProgramTitles Global ListBoxCharacterWidth, ListBoxFontFixed, ListBoxFontOverride, ListBoxFontSize, ListBoxOffset, ListBoxOpacity, ListBoxRows Global hListBoxCharacterWidth, hListBoxFontFixed, hListBoxFontOverride, hListBoxFontSize, hListBoxOffset, hListBoxOpacity, hListBoxRows + Global Menu_LearnCount, Menu_LearnLength, Menu_LearnMode Global Menu_ArrowKeyMethodOptionsText, Menu_CaseCorrection, Menu_SendMethodOptionsCode, Menu_SendMethodC Global MenuCtrlEnter, MenuCtrlSpace, MenuEnter, MenuNumberKeys, MenuRightArrow, MenuTab Global MenuAdvGuiHeight, MenuGuiWidth @@ -101,31 +103,31 @@ ConstructGui() Gui, MenuGui:Tab, 1 ; General Settings - Gui, MenuGui:Add, GroupBox, x%MenuGroup1BoxX% y%MenuRowY% w%MenuThreeColGroupWidth% h%MenuRowHeight% , Learn new words as you type + Gui, MenuGui:Add, GroupBox, x%MenuGroup1BoxX% y%MenuRowY% w%MenuThreeColGroupWidth% h%MenuRowHeight% , Learn new words as you type* Menu_LearnModeOptions=|On|Off| StringReplace, Menu_LearnModeOptions, Menu_LearnModeOptions, |%LearnMode%|,|%LearnMode%|| StringTrimLeft, Menu_LearnModeOptions, Menu_LearnModeOptions, 1 - Gui, MenuGui:Add, DDL, x%MenuGroup1EditX% y%MenuRowEditY% r5 vLearnMode, %Menu_LearnModeOptions% + Gui, MenuGui:Add, DDL, x%MenuGroup1EditX% y%MenuRowEditY% r5 vMenu_LearnMode, %Menu_LearnModeOptions% Gui, MenuGui:Font, cGreen Gui, MenuGui:Add, Text, x%MenuGroup1of3HelpX% y%MenuRowHelpY% vhLearnMode gHelpMe, %MenuGuiHelpIcon% Gui, MenuGui:Font, cBlack - Gui, MenuGui:Add, GroupBox, x%MenuGroup2of3BoxX% y%MenuRowY% w%MenuThreeColGroupWidth% h%MenuRowHeight% , Minimum length of word to learn + Gui, MenuGui:Add, GroupBox, x%MenuGroup2of3BoxX% y%MenuRowY% w%MenuThreeColGroupWidth% h%MenuRowHeight% , Minimum length of word to learn* Menu_LearnLengthOptions=|1|2|3|4|5|6|7|8|9|10|11|12|13|14|15| StringReplace, Menu_LearnLengthOptions, Menu_LearnLengthOptions, |%LearnLength%|,|%LearnLength%|| StringTrimLeft, Menu_LearnLengthOptions, Menu_LearnLengthOptions, 1 - Gui, MenuGui:Add, DDL, x%MenuGroup2of3EditX% y%MenuRowEditY% r5 vLearnLength, %Menu_LearnLengthOptions% + Gui, MenuGui:Add, DDL, x%MenuGroup2of3EditX% y%MenuRowEditY% r5 vMenu_LearnLength, %Menu_LearnLengthOptions% Gui, MenuGui:Font, cGreen Gui, MenuGui:Add, Text, x%MenuGroup2of3HelpX% y%MenuRowHelpY% vhLearnLength gHelpMe, %MenuGuiHelpIcon% Gui, MenuGui:Font, cBlack - Gui, MenuGui:Add, GroupBox, x%MenuGroup3of3BoxX% y%MenuRowY% w%MenuThreeColGroupWidth% h%MenuRowHeight%, Add to wordlist after X times + Gui, MenuGui:Add, GroupBox, x%MenuGroup3of3BoxX% y%MenuRowY% w%MenuThreeColGroupWidth% h%MenuRowHeight%, Add to wordlist after X times* Menu_LearnCountOptions=|1|2|3|4|5|6|7|8|9|10|11|12|13|14|15| StringReplace, Menu_LearnCountOptions, Menu_LearnCountOptions, |%LearnCount%|,|%LearnCount%|| StringTrimLeft, Menu_LearnCountOptions, Menu_LearnCountOptions, 1 - Gui, MenuGui:Add, DDL, x%MenuGroup3of3EditX% y%MenuRowEditY% r5 vLearnCount, %Menu_LearnCountOptions% + Gui, MenuGui:Add, DDL, x%MenuGroup3of3EditX% y%MenuRowEditY% r5 vMenu_LearnCount, %Menu_LearnCountOptions% Gui, MenuGui:Font, cGreen Gui, MenuGui:Add, Text, x%MenuGroup3of3HelpX% y%MenuRowHelpY% vhLearnCount gHelpMe, %MenuGuiHelpIcon% Gui, MenuGui:Font, cBlack @@ -278,6 +280,13 @@ ConstructGui() ;NumPresses ; + + MenuRowY := MenuTabHeight-20 + MenuRowHelpY := MenuRowY - MenuHelpIndentY + MenuRowEditY := MenuRowY + MenuEditIndentY + + Gui, MenuGui:Add, Text, x%MenuGroup1BoxX% y%MenuRowY% w%MenuOneColGroupWidth% , *Changing these values requires a restart of TypingAid + Gui, MenuGui:Tab, 2 ; listbox --------------------------------------------------------- @@ -547,7 +556,8 @@ Full (untested) for UTF-8 character set. Gui, MenuGui:Font, cGreen Gui, MenuGui:Add, Text, x%MenuGroup2of2EditX% Yp+%MenuTextMenuRowY% gVisitForum, www.autohotkey.com (click here) Gui, MenuGui:Font, cBlack - + + Gui, Menugui:+OwnDialogs Gui, MenuGui:Show, h%MenuGuiHeight% w%MenuGuiWidth%, TypingAid Settings Return } @@ -634,19 +644,39 @@ IfMsgBox Yes Run, http://www.autohotkey.com/board/topic/49517-ahk-11typingaid-v2198-word-autocompletion-utility/ Return -Restore: ; this could be changed to not restart TA -; will need to load defaults -; re-fresh gui -; re-load preferences if canceling -;FileDelete, Preferences.ini -;WinClose, \TypingAid -;Loop, TypingAid*.ahk -; { -; Run %A_LoopFileName% -; Break -; } -;Reload -Return +Restore: +; If Learn settings have changed, we need to reload the script. Otherwise, we can just go through the normal save process. +ReadPreferences("RestoreDefaults") +IF (Menu_OldValues <> (LearnCount . DelimiterChar . LearnLength . DelimiterChar . LearnMode)) +{ + MsgBox, 1, Restore Defaults, Restoring Defaults will change Learn settings.`r`nChanging Learn settings requires a script restart. Continue? + IfMsgBox, Cancel + { + ReadPreferences(,"RestorePreferences") + return + } + try { + FileCopy, %PrefsFile%, %PrefsFile%-%A_Now%.bak, 1 + FileDelete, %PrefsFile% + } catch { + MsgBox,,Restore Defaults,Unable to back up preferences! Canceling... + ReadPreferences(,"RestorePreferences") + return + } + Reload + return +} else { + try { + FileCopy, %PrefsFile%, %PrefsFile%-%A_Now%.bak, 1 + FileDelete, %PrefsFile% + } catch { + MsgBox,,Restore Defaults,Unable to back up preferences! Canceling... + ReadPreferences(,"RestorePreferences") + return + } + Save() +} +return Esc:: MenuGuiGuiClose: @@ -654,13 +684,43 @@ Cancel: Gui, MenuGui:Destroy InSettings := false Menu, Tray, Enable, Settings -;ExitApp Return Save: ; should only save preferences.ini if different from defaults -;Gui, MenuGui:Submit +Gui, MenuGui:Submit +IF (Menu_OldValues <> (Menu_LearnCount . DelimiterChar . Menu_LearnLength . DelimiterChar . Menu_LearnMode)) +{ + MsgBox, 1, Save, Saving will change Learn settings.`r`nChanging Learn settings requires a script restart. Continue? + IfMsgBox, Cancel + { + ReadPreferences(,"RestorePreferences") + Gui, MenuGui:Destroy + return + } + SaveSettings() + Reload +} else { + SaveSettings() + Save() +} Gui, MenuGui:Destroy +Return + +SaveSettings() +{ + + SavePreferences() +} + +Save() +{ + ValidatePreferences() + InitializeHotKeys() + DestroyListBox() + InitializeListBox() + + ;other settings that begin with Menu_? ;Loop, parse, Menu_SendMethodOptionsCode, | ; get sendmethod ; If (Menu_SendMethodC = A_Index) @@ -707,6 +767,8 @@ InSettings := false Menu, Tray, Enable, Settings Return +} + HelpMe: Loop, Parse, %A_GuiControl%,`r`n { diff --git a/Source/TypingAid.ahk b/Source/TypingAid.ahk index 44c0152..28915c2 100644 --- a/Source/TypingAid.ahk +++ b/Source/TypingAid.ahk @@ -46,6 +46,10 @@ If A_Is64bitOS } } +ScriptExtension= +ScriptNoExtension= +ScriptPath64= + ;; Tray menu ;Name=TypingAid v2.15 ; I would like to see an icon here, see also active/inactive below @@ -64,10 +68,6 @@ Menu, Tray, Standard ;Initialize Tray Icon SuspendOn() Menu, Tray, Icon - -ScriptExtension= -ScriptNoExtension= -ScriptPath64= OnExit, SaveScript @@ -117,7 +117,7 @@ InitializeHotKeys() DisableKeyboardHotKeys() ;Find the ID of the window we are using -GetIncludedActiveWindow() +GetIncludedActiveWindow() ; Set a timer to check for a changed window SetTimer, Winchanged, 100 From 541ef0f2b15ef66bcebde5d4c047182af08f9044 Mon Sep 17 00:00:00 2001 From: ManiacDC Date: Mon, 26 Jan 2015 08:39:18 -0500 Subject: [PATCH 20/62] More preparation for saving settings Small amounts of code cleanup --- Source/Includes/Settings.ahk | 132 +++++++++++++++++------------------ Source/TypingAid.ahk | 3 + 2 files changed, 69 insertions(+), 66 deletions(-) diff --git a/Source/Includes/Settings.ahk b/Source/Includes/Settings.ahk index cd508b7..8a9ad3f 100644 --- a/Source/Includes/Settings.ahk +++ b/Source/Includes/Settings.ahk @@ -5,7 +5,6 @@ LaunchSettings: Menu, Tray, Disable, Settings InSettings := true ClearAllVars(True) -ReadPreferences() Menu_OldValues := LearnCount . DelimiterChar . LearnLength . DelimiterChar . LearnMode ConstructGui() Return @@ -24,7 +23,7 @@ ConstructGui() Global hListBoxCharacterWidth, hListBoxFontFixed, hListBoxFontOverride, hListBoxFontSize, hListBoxOffset, hListBoxOpacity, hListBoxRows Global Menu_LearnCount, Menu_LearnLength, Menu_LearnMode Global Menu_ArrowKeyMethodOptionsText, Menu_CaseCorrection, Menu_SendMethodOptionsCode, Menu_SendMethodC - Global MenuCtrlEnter, MenuCtrlSpace, MenuEnter, MenuNumberKeys, MenuRightArrow, MenuTab + Global Menu_CtrlEnter, Menu_CtrlSpace, Menu_Enter, Menu_NumberKeys, Menu_RightArrow, Menu_Tab Global MenuAdvGuiHeight, MenuGuiWidth Global Wlen Global WM_SETCURSOR, WM_MOUSEMOVE @@ -211,12 +210,12 @@ ConstructGui() } MenuCheckmarkIndent := MenuTwoColEditWidth/3 + MenuEditIndentX - Gui, MenuGui:Add, Checkbox, x%MenuGroup1EditX% yp+%MenuTextMenuRowY% vMenuCtrlEnter %Menu_CheckedE%, Ctrl + Enter - Gui, MenuGui:Add, Checkbox, xp%MenuCheckmarkIndent% yp vMenuTab %Menu_CheckedT%, Tab - Gui, MenuGui:Add, Checkbox, xp%MenuCheckmarkIndent% yp vMenuRightArrow %Menu_CheckedR%, Right Arrow - Gui, MenuGui:Add, Checkbox, x%MenuGroup1EditX% yp+%MenuTextMenuRowY% vMenuCtrlSpace %Menu_CheckedS%, Ctrl + Space - Gui, MenuGui:Add, Checkbox, xp%MenuCheckmarkIndent% yp vMenuNumberKeys %Menu_CheckedN%, Number Keys - Gui, MenuGui:Add, Checkbox, xp%MenuCheckmarkIndent% yp vMenuEnter %Menu_CheckedU%, Enter + Gui, MenuGui:Add, Checkbox, x%MenuGroup1EditX% yp+%MenuTextMenuRowY% vMenu_CtrlEnter %Menu_CheckedE%, Ctrl + Enter + Gui, MenuGui:Add, Checkbox, xp%MenuCheckmarkIndent% yp vMenu_Tab %Menu_CheckedT%, Tab + Gui, MenuGui:Add, Checkbox, xp%MenuCheckmarkIndent% yp vMenu_RightArrow %Menu_CheckedR%, Right Arrow + Gui, MenuGui:Add, Checkbox, x%MenuGroup1EditX% yp+%MenuTextMenuRowY% vMenu_CtrlSpace %Menu_CheckedS%, Ctrl + Space + Gui, MenuGui:Add, Checkbox, xp%MenuCheckmarkIndent% yp vMenu_NumberKeys %Menu_CheckedN%, Number Keys + Gui, MenuGui:Add, Checkbox, xp%MenuCheckmarkIndent% yp vMenu_Enter %Menu_CheckedU%, Enter Gui, MenuGui:Font, cGreen Gui, MenuGui:Add, Text, x%MenuGroup1of2HelpX% y%MenuRowHelpY% vhDisabledAutoCompleteKeys gHelpMe, %MenuGuiHelpIcon% @@ -328,7 +327,6 @@ ConstructGui() MenuRowEditY := MenuRowY + MenuEditIndentY - Gui, MenuGui:Add, GroupBox, x%MenuGroup1BoxX% y%MenuRowY% w%MenuThreeColGroupWidth% h%MenuRowHeight% , List opacity Gui, MenuGui:Add, Edit, xp+10 yp+20 w%MenuThreeColEditWidth%, %ListBoxOpacity% Gui, MenuGui:Add, UpDown, xp+10 yp+20 w%MenuThreeColEditWidth% vListBoxOpacity Range0-255, %ListBoxOpacity% @@ -349,7 +347,7 @@ ConstructGui() MenuFontList := "|" . MenuFontList . "|" sort, MenuFontList, D| If (MenuListBoxFont = "") or (MenuListBoxFont = " ") - StringReplace, MenuFontList, MenuFontList, |Courier New|, |Courier New|| + StringReplace, MenuFontList, MenuFontList, |%ListBoxFontOverride%|, |%ListBoxFontOverride%|| Gui, MenuGui:Add, DDL, x%MenuGroup3of3EditX% y%MenuRowEditY% r10 w200 vListBoxFontOverride, %MenuFontList% Gui, MenuGui:Font, cGreen Gui, MenuGui:Add, Text, x%MenuGroup3of3HelpX% y%MenuRowHelpY% vhListBoxFontOverride gHelpMe, %MenuGuiHelpIcon% @@ -709,63 +707,59 @@ Return SaveSettings() { + Global Menu_ArrowKeyMethodOptionsText, Menu_CaseCorrection, Menu_SendMethodOptionsCode, Menu_SendMethodC + Global Menu_CtrlEnter, Menu_CtrlSpace, Menu_Enter, Menu_NumberKeys, Menu_RightArrow, Menu_Tab + Global ArrowKeyMethod, DisabledAutoCompleteKeys, NoBackSpace, SendMethod + + Loop, parse, Menu_SendMethodOptionsCode, | ; get sendmethod + { + If (Menu_SendMethodC = A_Index) + SendMethod:=A_LoopField + } + + DisabledAutoCompleteKeys= + If (Menu_CtrlEnter = 0) + DisabledAutoCompleteKeys .= "E" + If (Menu_Tab = 0) + DisabledAutoCompleteKeys .= "T" + If (Menu_CtrlSpace = 0) + DisabledAutoCompleteKeys .= "S" + If (Menu_RightArrow = 0) + DisabledAutoCompleteKeys .= "R" + If (Menu_NumberKeys = 0) + DisabledAutoCompleteKeys .= "N" + If (Menu_Enter = 0) + DisabledAutoCompleteKeys .= "U" + + Loop, parse, Menu_ArrowKeyMethodOptionsText, | + { + StringSplit, Split, A_LoopField, - + Split1 := Trim(Split1) + If (ArrowKeyMethod = A_Index) + { + ArrowKeyMethod := Split1 + } + } + + If (Menu_CaseCorrection = "on") + NoBackSpace=Off + Else If (Menu_CaseCorrection = "off") + NoBackSpace=On SavePreferences() } Save() { + global InSettings ValidatePreferences() InitializeHotKeys() DestroyListBox() InitializeListBox() - ;other settings that begin with Menu_? - -;Loop, parse, Menu_SendMethodOptionsCode, | ; get sendmethod -; If (Menu_SendMethodC = A_Index) -; SendMethod:=A_LoopField - -;DisabledAutoCompleteKeys= -;If (MenuCtrlEnter = 0) -; DisabledAutoCompleteKeys .= "E" -;If (MenuTab = 0) -; DisabledAutoCompleteKeys .= "T" -;If (MenuCtrlSpace = 0) -; DisabledAutoCompleteKeys .= "S" -;If (MenuRightArrow = 0) -; DisabledAutoCompleteKeys .= "R" -;If (MenuNumberKeys = 0) -; DisabledAutoCompleteKeys .= "N" -;If (MenuEnter = 0) -; DisabledAutoCompleteKeys .= "U" - -;If (Menu_CaseCorrection = "on") -; NoBackSpace=Off -;Else If (Menu_CaseCorrection = "off") -; NoBackSpace=On - -;Loop, parse, Menu_ArrowKeyMethodOptionsText, | -; { -; StringSplit, Split, A_LoopField, - -; Split1 := Trim(Split1) -; If (ArrowKeyMethod = A_Index) -; { -; ArrowKeyMethod := Split1 -; } -; } - -;SavePreferences() -;WinClose, \TypingAid -;Loop, TypingAid*.ahk -; { -; Run %A_LoopFileName% -; Break -; } -;ExitApp -InSettings := false -Menu, Tray, Enable, Settings -Return + InSettings := false + Menu, Tray, Enable, Settings + Return } @@ -933,20 +927,26 @@ Return ; copied from font explorer http://www.autohotkey.com/forum/viewtopic.php?t=57501&highlight=font Writer_enumFonts() { - - hDC := DllCall("GetDC", "Uint", 0) - DllCall("EnumFonts", "Uint", hDC, "Uint", 0, "Uint", RegisterCallback("Writer_enumFontsProc", "F"), "Uint", 0) - DllCall("ReleaseDC", "Uint", 0, "Uint", hDC) + Writer_enumFontsProc(0, 0, 0, 0,"Clear") + hDC := DllCall("GetDC", "Uint", 0) + DllCall("EnumFonts", "Uint", hDC, "Uint", 0, "Uint", RegisterCallback("Writer_enumFontsProc", "F"), "Uint", 0) + DllCall("ReleaseDC", "Uint", 0, "Uint", hDC) - return Writer_enumFontsProc(0, 0, 0, 0) + return Writer_enumFontsProc(0, 0, 0, 0, "ReturnS") } -Writer_enumFontsProc(lplf, lptm, dwType, lpData) +Writer_enumFontsProc(lplf, lptm, dwType, lpData, Action = 0) { - static s + static s + + ifEqual, Action, Clear + { + s= + return + } - ifEqual, lplf, 0, return s + ifEqual, Action, ReturnS, return s - s .= DllCall("MulDiv", "Int", lplf+28, "Int",1, "Int", 1, "str") "|" - return 1 + s .= DllCall("MulDiv", "Int", lplf+28, "Int",1, "Int", 1, "str") "|" + return 1 } \ No newline at end of file diff --git a/Source/TypingAid.ahk b/Source/TypingAid.ahk index 28915c2..76f2601 100644 --- a/Source/TypingAid.ahk +++ b/Source/TypingAid.ahk @@ -433,6 +433,9 @@ CheckForCaretMove: InitializeHotKeys() { global + + EnabledKeyboardHotKeys = + IfEqual, ArrowKeyMethod, Off { Hotkey, $^Enter, Off From ee89d835732894572f3448feb0df3ce3e40a2416 Mon Sep 17 00:00:00 2001 From: ManiacDC Date: Tue, 27 Jan 2015 07:44:29 -0500 Subject: [PATCH 21/62] Prep for saving: Track which preferences have changed. --- Source/Includes/Preferences File.ahk | 36 ++++++---- Source/Includes/Settings.ahk | 98 +++++++++++++++++----------- Source/Includes/Wordlist.ahk | 2 +- Source/TypingAid.ahk | 2 +- 4 files changed, 88 insertions(+), 50 deletions(-) diff --git a/Source/Includes/Preferences File.ahk b/Source/Includes/Preferences File.ahk index 3c84983..3a99071 100644 --- a/Source/Includes/Preferences File.ahk +++ b/Source/Includes/Preferences File.ahk @@ -44,7 +44,7 @@ ReadPreferences(RestoreDefaults = false,RestorePreferences = false) Local DftIncludeProgramTitles Local DftExcludeProgramExecutables Local DftExcludeProgramTitles - ;DftWlen should be global so it works in ValidatePreferences + ;DftLength should be global so it works in ValidatePreferences ;DftNumPresses should be global so it works in ValidatePreferences ;DftLearnMode should be global so it works in ValidatePreferences ;DftLearnCount should be global so it works in ValidatePreferences @@ -100,7 +100,7 @@ ReadPreferences(RestoreDefaults = false,RestorePreferences = false) DftExcludeProgramExecutables,ExcludeProgramExecutables,ExcludePrograms,ExcludeProgramExecutables,%SpaceVar% DftExcludeProgramTitles,ExcludeProgramTitles,ExcludePrograms,ExcludeProgramTitles,%SpaceVar% ,Title,Settings,Title,%SpaceVar% - DftWlen,Wlen,Settings,Length,3 + DftLength,Length,Settings,Length,3 DftNumPresses,NumPresses,Settings,NumPresses,1 DftLearnMode,LearnMode,Settings,LearnMode,On DftLearnCount,LearnCount,Settings,LearnCount,5 @@ -211,7 +211,7 @@ ExcludeProgramTitles=%DftExcludeProgramTitles% [Settings] ; %hLength% -Length=%DftWlen% +Length=%DftLength% ; ; %hNumPresses% @@ -323,13 +323,13 @@ ValidatePreferences() global - if Wlen is not integer + if Length is not integer { - Wlen := DftWlen + Length := DftLength } IfEqual, LearnLength, - LearnLength := Wlen +2 + LearnLength := Length +2 if NumPresses not in 1,2 NumPresses := DftNumPresses @@ -342,10 +342,10 @@ ValidatePreferences() If LearnLength is not Integer { - LearnLength := Wlen + 2 + LearnLength := Length + 2 } else { - If ( LearnLength < ( Wlen + 1 ) ) - LearnLength := Wlen + 1 + If ( LearnLength < ( Length + 1 ) ) + LearnLength := Length + 1 } if DisabledAutoCompleteKeys contains N @@ -470,9 +470,23 @@ ParseTerminatingCharacters() TerminatingEndKeys := TempEndKeys } -SavePreferences() +SavePreferences(ByRef PrefsToSave) { - ValidatePreferences() + + + ;for index, element in Menu_PrefsToSave + ;{ + ; Menu_PrefsToSavez%index% := element . " | " . %element% . " | " . Menu_ChangedPrefs[element] + ;} + + ;Loop, % Menu_PrefsToSave._MaxIndex() + ;{ + ; Menu_PrefsToSavez%A_LoopField% := Menu_PrefsToSave[A_LoopField] + ;} + ;ListVars + ;Pause + + ;ValidatePreferences()? what about the fact this changes Terminating Characters ;do stuff Return } diff --git a/Source/Includes/Settings.ahk b/Source/Includes/Settings.ahk index 8a9ad3f..86d58b0 100644 --- a/Source/Includes/Settings.ahk +++ b/Source/Includes/Settings.ahk @@ -5,7 +5,8 @@ LaunchSettings: Menu, Tray, Disable, Settings InSettings := true ClearAllVars(True) -Menu_OldValues := LearnCount . DelimiterChar . LearnLength . DelimiterChar . LearnMode +Menu_RestartValues := LearnCount . DelimiterChar . LearnLength . DelimiterChar . LearnMode +Menu_ChangedPrefs := Object() ConstructGui() Return @@ -25,7 +26,7 @@ ConstructGui() Global Menu_ArrowKeyMethodOptionsText, Menu_CaseCorrection, Menu_SendMethodOptionsCode, Menu_SendMethodC Global Menu_CtrlEnter, Menu_CtrlSpace, Menu_Enter, Menu_NumberKeys, Menu_RightArrow, Menu_Tab Global MenuAdvGuiHeight, MenuGuiWidth - Global Wlen + Global Length Global WM_SETCURSOR, WM_MOUSEMOVE Menu_CaseCorrection= @@ -106,7 +107,7 @@ ConstructGui() Menu_LearnModeOptions=|On|Off| StringReplace, Menu_LearnModeOptions, Menu_LearnModeOptions, |%LearnMode%|,|%LearnMode%|| StringTrimLeft, Menu_LearnModeOptions, Menu_LearnModeOptions, 1 - Gui, MenuGui:Add, DDL, x%MenuGroup1EditX% y%MenuRowEditY% r5 vMenu_LearnMode, %Menu_LearnModeOptions% + Gui, MenuGui:Add, DDL, x%MenuGroup1EditX% y%MenuRowEditY% r5 vMenu_LearnMode gEditValue, %Menu_LearnModeOptions% Gui, MenuGui:Font, cGreen Gui, MenuGui:Add, Text, x%MenuGroup1of3HelpX% y%MenuRowHelpY% vhLearnMode gHelpMe, %MenuGuiHelpIcon% Gui, MenuGui:Font, cBlack @@ -116,7 +117,7 @@ ConstructGui() Menu_LearnLengthOptions=|1|2|3|4|5|6|7|8|9|10|11|12|13|14|15| StringReplace, Menu_LearnLengthOptions, Menu_LearnLengthOptions, |%LearnLength%|,|%LearnLength%|| StringTrimLeft, Menu_LearnLengthOptions, Menu_LearnLengthOptions, 1 - Gui, MenuGui:Add, DDL, x%MenuGroup2of3EditX% y%MenuRowEditY% r5 vMenu_LearnLength, %Menu_LearnLengthOptions% + Gui, MenuGui:Add, DDL, x%MenuGroup2of3EditX% y%MenuRowEditY% r5 vMenu_LearnLength gEditValue, %Menu_LearnLengthOptions% Gui, MenuGui:Font, cGreen Gui, MenuGui:Add, Text, x%MenuGroup2of3HelpX% y%MenuRowHelpY% vhLearnLength gHelpMe, %MenuGuiHelpIcon% Gui, MenuGui:Font, cBlack @@ -126,7 +127,7 @@ ConstructGui() Menu_LearnCountOptions=|1|2|3|4|5|6|7|8|9|10|11|12|13|14|15| StringReplace, Menu_LearnCountOptions, Menu_LearnCountOptions, |%LearnCount%|,|%LearnCount%|| StringTrimLeft, Menu_LearnCountOptions, Menu_LearnCountOptions, 1 - Gui, MenuGui:Add, DDL, x%MenuGroup3of3EditX% y%MenuRowEditY% r5 vMenu_LearnCount, %Menu_LearnCountOptions% + Gui, MenuGui:Add, DDL, x%MenuGroup3of3EditX% y%MenuRowEditY% r5 vMenu_LearnCount gEditValue, %Menu_LearnCountOptions% Gui, MenuGui:Font, cGreen Gui, MenuGui:Add, Text, x%MenuGroup3of3HelpX% y%MenuRowHelpY% vhLearnCount gHelpMe, %MenuGuiHelpIcon% Gui, MenuGui:Font, cBlack @@ -140,16 +141,16 @@ ConstructGui() Menu_ListBoxRowsOptions=|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20| StringReplace, Menu_ListBoxRowsOptions, Menu_ListBoxRowsOptions, |%ListBoxRows%|,|%ListBoxRows%|| StringTrimLeft, Menu_ListBoxRowsOptions, Menu_ListBoxRowsOptions, 1 - Gui, MenuGui:Add, DDL, x%MenuGroup1EditX% y%MenuRowEditY% r5 vListBoxRows, %Menu_ListBoxRowsOptions% + Gui, MenuGui:Add, DDL, x%MenuGroup1EditX% y%MenuRowEditY% r5 vListBoxRows gEditValue, %Menu_ListBoxRowsOptions% Gui, MenuGui:Font, cGreen Gui, MenuGui:Add, Text, x%MenuGroup1of3HelpX% y%MenuRowHelpY% vhListBoxRows gHelpMe, %MenuGuiHelpIcon% Gui, MenuGui:Font, cBlack Gui, MenuGui:Add, GroupBox, x%MenuGroup2of3BoxX% y%MenuRowY% w%MenuThreeColGroupWidth% h%MenuRowHeight% , Show wordlist after X characters Menu_LengthOptions=|1|2|3|4|5|6|7|8|9|10|11|12|13|14|15| - StringReplace, Menu_LengthOptions, Menu_LengthOptions, |%Wlen%|,|%Wlen%|| + StringReplace, Menu_LengthOptions, Menu_LengthOptions, |%Length%|,|%Length%|| StringTrimLeft, Menu_LengthOptions, Menu_LengthOptions, 1 - Gui, MenuGui:Add, DDL, x%MenuGroup2of3EditX% y%MenuRowEditY% r5 vLength, %Menu_LengthOptions% + Gui, MenuGui:Add, DDL, x%MenuGroup2of3EditX% y%MenuRowEditY% r5 vLength gEditValue, %Menu_LengthOptions% Gui, MenuGui:Font, cGreen Gui, MenuGui:Add, Text, x%MenuGroup2of3HelpX% y%MenuRowHelpY% vhLength gHelpMe, %MenuGuiHelpIcon% Gui, MenuGui:Font, cBlack @@ -170,7 +171,7 @@ ConstructGui() If (A_Index = Menu_SendCount) Menu_SendMethodOptions .= "|" } - Gui, MenuGui:Add, DDL, x%MenuGroup3of3EditX% y%MenuRowEditY% w%MenuThreeColEditWidth% r5 vMenu_SendMethodC altsubmit, %Menu_SendMethodOptions% + Gui, MenuGui:Add, DDL, x%MenuGroup3of3EditX% y%MenuRowEditY% w%MenuThreeColEditWidth% r5 vMenu_SendMethodC gEditValue altsubmit, %Menu_SendMethodOptions% Gui, MenuGui:Font, cGreen Gui, MenuGui:Add, Text, x%MenuGroup3of3HelpX% y%MenuRowHelpY% vhSendMethod gHelpMe, %MenuGuiHelpIcon% Gui, MenuGui:Font, cBlack @@ -210,12 +211,12 @@ ConstructGui() } MenuCheckmarkIndent := MenuTwoColEditWidth/3 + MenuEditIndentX - Gui, MenuGui:Add, Checkbox, x%MenuGroup1EditX% yp+%MenuTextMenuRowY% vMenu_CtrlEnter %Menu_CheckedE%, Ctrl + Enter - Gui, MenuGui:Add, Checkbox, xp%MenuCheckmarkIndent% yp vMenu_Tab %Menu_CheckedT%, Tab - Gui, MenuGui:Add, Checkbox, xp%MenuCheckmarkIndent% yp vMenu_RightArrow %Menu_CheckedR%, Right Arrow - Gui, MenuGui:Add, Checkbox, x%MenuGroup1EditX% yp+%MenuTextMenuRowY% vMenu_CtrlSpace %Menu_CheckedS%, Ctrl + Space - Gui, MenuGui:Add, Checkbox, xp%MenuCheckmarkIndent% yp vMenu_NumberKeys %Menu_CheckedN%, Number Keys - Gui, MenuGui:Add, Checkbox, xp%MenuCheckmarkIndent% yp vMenu_Enter %Menu_CheckedU%, Enter + Gui, MenuGui:Add, Checkbox, x%MenuGroup1EditX% yp+%MenuTextMenuRowY% vMenu_CtrlEnter gEditValue %Menu_CheckedE%, Ctrl + Enter + Gui, MenuGui:Add, Checkbox, xp%MenuCheckmarkIndent% yp vMenu_Tab gEditValue %Menu_CheckedT%, Tab + Gui, MenuGui:Add, Checkbox, xp%MenuCheckmarkIndent% yp vMenu_RightArrow gEditValue %Menu_CheckedR%, Right Arrow + Gui, MenuGui:Add, Checkbox, x%MenuGroup1EditX% yp+%MenuTextMenuRowY% vMenu_CtrlSpace gEditValue %Menu_CheckedS%, Ctrl + Space + Gui, MenuGui:Add, Checkbox, xp%MenuCheckmarkIndent% yp vMenu_NumberKeys gEditValue %Menu_CheckedN%, Number Keys + Gui, MenuGui:Add, Checkbox, xp%MenuCheckmarkIndent% yp vMenu_Enter gEditValue %Menu_CheckedU%, Enter Gui, MenuGui:Font, cGreen Gui, MenuGui:Add, Text, x%MenuGroup1of2HelpX% y%MenuRowHelpY% vhDisabledAutoCompleteKeys gHelpMe, %MenuGuiHelpIcon% @@ -235,7 +236,7 @@ ConstructGui() } } - Gui, MenuGui:Add, DDL, x%MenuGroup2of2EditX% y%MenuRowEditY% w%MenuTwoColEditWidth% r5 vArrowKeyMethod altsubmit, %Menu_ArrowKeyMethodOptions% + Gui, MenuGui:Add, DDL, x%MenuGroup2of2EditX% y%MenuRowEditY% w%MenuTwoColEditWidth% r5 vArrowKeyMethod gEditValue altsubmit, %Menu_ArrowKeyMethodOptions% Gui, MenuGui:Font, cGreen Gui, MenuGui:Add, Text, x%MenuGroup2of2HelpX% y%MenuRowHelpY% vhArrowKeyMethod gHelpMe, %MenuGuiHelpIcon% Gui, MenuGui:Font, cBlack @@ -253,7 +254,7 @@ ConstructGui() Menu_CaseCorrection=On StringReplace, Menu_CaseCorrectionOptions, Menu_CaseCorrectionOptions, |%Menu_CaseCorrection%|,|%Menu_CaseCorrection%|| StringTrimLeft, Menu_CaseCorrectionOptions, Menu_CaseCorrectionOptions, 1 - Gui, MenuGui:Add, DDL, x%MenuGroup1EditX% y%MenuRowEditY% r5 vMenu_CaseCorrection, %Menu_CaseCorrectionOptions% + Gui, MenuGui:Add, DDL, x%MenuGroup1EditX% y%MenuRowEditY% r5 vMenu_CaseCorrection gEditValue, %Menu_CaseCorrectionOptions% Gui, MenuGui:Font, cGreen Gui, MenuGui:Add, Text, x%MenuGroup1of3HelpX% y%MenuRowHelpY% vhNoBackSpace gHelpMe, %MenuGuiHelpIcon% Gui, MenuGui:Font, cBlack @@ -263,7 +264,7 @@ ConstructGui() Menu_DetectMouseClickMoveOptions=|On|Off| StringReplace, Menu_DetectMouseClickMoveOptions, Menu_DetectMouseClickMoveOptions, |%DetectMouseClickMove%|,|%DetectMouseClickMove%|| StringTrimLeft, Menu_DetectMouseClickMoveOptions, Menu_DetectMouseClickMoveOptions, 1 - Gui, MenuGui:Add, DDL, x%MenuGroup2of3EditX% y%MenuRowEditY% r5 vDetectMouseClickMove, %Menu_DetectMouseClickMoveOptions% + Gui, MenuGui:Add, DDL, x%MenuGroup2of3EditX% y%MenuRowEditY% r5 vDetectMouseClickMove gEditValue, %Menu_DetectMouseClickMoveOptions% Gui, MenuGui:Font, cGreen Gui, MenuGui:Add, Text, x%MenuGroup2of3HelpX% y%MenuRowHelpY% vhDetectMouseClickMove gHelpMe, %MenuGuiHelpIcon% Gui, MenuGui:Font, cBlack @@ -272,7 +273,7 @@ ConstructGui() Menu_AutoSpaceOptions=|On|Off| StringReplace, Menu_AutoSpaceOptions, Menu_AutoSpaceOptions, |%AutoSpace%|,|%AutoSpace%|| StringTrimLeft, Menu_AutoSpaceOptions, Menu_AutoSpaceOptions, 1 - Gui, MenuGui:Add, DDL, x%MenuGroup3of3EditX% y%MenuRowEditY% r5 vAutoSpace, %Menu_AutoSpaceOptions% + Gui, MenuGui:Add, DDL, x%MenuGroup3of3EditX% y%MenuRowEditY% r5 vAutoSpace gEditValue, %Menu_AutoSpaceOptions% Gui, MenuGui:Font, cGreen Gui, MenuGui:Add, Text, x%MenuGroup3of3HelpX% y%MenuRowHelpY% vhAutoSpace gHelpMe, %MenuGuiHelpIcon% Gui, MenuGui:Font, cBlack @@ -284,7 +285,7 @@ ConstructGui() MenuRowHelpY := MenuRowY - MenuHelpIndentY MenuRowEditY := MenuRowY + MenuEditIndentY - Gui, MenuGui:Add, Text, x%MenuGroup1BoxX% y%MenuRowY% w%MenuOneColGroupWidth% , *Changing these values requires a restart of TypingAid + Gui, MenuGui:Add, Text, x%MenuGroup1BoxX% y%MenuRowY% w%MenuOneColGroupWidth% , *Changing these values requires a restart of TypingAid Gui, MenuGui:Tab, 2 ; listbox --------------------------------------------------------- @@ -299,7 +300,7 @@ ConstructGui() Menu_ListBoxOffsetOptions=|1|2|3|4|5|6|7|8|9|10|11|12|13|14|15| StringReplace, Menu_ListBoxOffsetOptions, Menu_ListBoxOffsetOptions, |%ListBoxOffset%|,|%ListBoxOffset%|| StringTrimLeft, Menu_ListBoxOffsetOptions, Menu_ListBoxOffsetOptions, 1 - Gui, MenuGui:Add, DDL, x%MenuGroup1EditX% y%MenuRowEditY% r5 vListBoxOffset, %Menu_ListBoxOffsetOptions% + Gui, MenuGui:Add, DDL, x%MenuGroup1EditX% y%MenuRowEditY% r5 vListBoxOffset gEditValue, %Menu_ListBoxOffsetOptions% Gui, MenuGui:Font, cGreen Gui, MenuGui:Add, Text, x%MenuGroup1of3HelpX% y%MenuRowHelpY% vhListBoxOffset gHelpMe, %MenuGuiHelpIcon% Gui, MenuGui:Font, cBlack @@ -308,7 +309,7 @@ ConstructGui() Menu_ListBoxFontFixedOptions=|On|Off| StringReplace, Menu_ListBoxFontFixedOptions, Menu_ListBoxFontFixedOptions, |%ListBoxFontFixed%|,|%ListBoxFontFixed%|| StringTrimLeft, Menu_ListBoxFontFixedOptions, Menu_ListBoxFontFixedOptions, 1 - Gui, MenuGui:Add, DDL, x%MenuGroup2of3EditX% y%MenuRowEditY% r5 vListBoxFontFixed, %Menu_ListBoxFontFixedOptions% + Gui, MenuGui:Add, DDL, x%MenuGroup2of3EditX% y%MenuRowEditY% r5 vListBoxFontFixed gEditValue, %Menu_ListBoxFontFixedOptions% Gui, MenuGui:Font, cGreen Gui, MenuGui:Add, Text, x%MenuGroup2of3HelpX% y%MenuRowHelpY% vhListBoxFontFixed gHelpMe, %MenuGuiHelpIcon% Gui, MenuGui:Font, cBlack @@ -317,7 +318,7 @@ ConstructGui() Menu_ListBoxFontSizeOptions=|8|9|10|11|12|13|14|15|16|17|18|19|20| StringReplace, Menu_ListBoxFontSizeOptions, Menu_ListBoxFontSizeOptions, |%ListBoxFontSize%|,|%ListBoxFontSize%|| StringTrimLeft, Menu_ListBoxFontSizeOptions, Menu_ListBoxFontSizeOptions, 1 - Gui, MenuGui:Add, DDL, x%MenuGroup3of3EditX% y%MenuRowEditY% r5 vListBoxFontSize, %Menu_ListBoxFontSizeOptions% + Gui, MenuGui:Add, DDL, x%MenuGroup3of3EditX% y%MenuRowEditY% r5 vListBoxFontSize gEditValue, %Menu_ListBoxFontSizeOptions% Gui, MenuGui:Font, cGreen Gui, MenuGui:Add, Text, x%MenuGroup3of3HelpX% y%MenuRowHelpY% vhListBoxFontSize gHelpMe, %MenuGuiHelpIcon% Gui, MenuGui:Font, cBlack @@ -329,7 +330,7 @@ ConstructGui() Gui, MenuGui:Add, GroupBox, x%MenuGroup1BoxX% y%MenuRowY% w%MenuThreeColGroupWidth% h%MenuRowHeight% , List opacity Gui, MenuGui:Add, Edit, xp+10 yp+20 w%MenuThreeColEditWidth%, %ListBoxOpacity% - Gui, MenuGui:Add, UpDown, xp+10 yp+20 w%MenuThreeColEditWidth% vListBoxOpacity Range0-255, %ListBoxOpacity% + Gui, MenuGui:Add, UpDown, xp+10 yp+20 w%MenuThreeColEditWidth% vListBoxOpacity gEditValue Range0-255, %ListBoxOpacity% Gui, MenuGui:Font, cGreen Gui, MenuGui:Add, Text, x%MenuGroup1of3HelpX% y%MenuRowHelpY% vhListBoxOpacity gHelpMe, %MenuGuiHelpIcon% Gui, MenuGui:Font, cBlack @@ -338,7 +339,7 @@ ConstructGui() Menu_ListBoxCharacterWidthOptions=||5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20| StringReplace, Menu_ListBoxCharacterWidthOptions, Menu_ListBoxCharacterWidthOptions, |%ListBoxCharacterWidth%|,|%ListBoxCharacterWidth%|| StringTrimLeft, Menu_ListBoxCharacterWidthOptions, Menu_ListBoxCharacterWidthOptions, 1 - Gui, MenuGui:Add, DDL, x%MenuGroup2of3EditX% y%MenuRowEditY% r5 vListBoxCharacterWidth, %Menu_ListBoxCharacterWidthOptions% + Gui, MenuGui:Add, DDL, x%MenuGroup2of3EditX% y%MenuRowEditY% r5 vListBoxCharacterWidth gEditValue, %Menu_ListBoxCharacterWidthOptions% Gui, MenuGui:Font, cGreen Gui, MenuGui:Add, Text, x%MenuGroup2of3HelpX% y%MenuRowHelpY% vhListBoxCharacterWidth gHelpMe, %MenuGuiHelpIcon% Gui, MenuGui:Font, cBlack @@ -348,7 +349,7 @@ ConstructGui() sort, MenuFontList, D| If (MenuListBoxFont = "") or (MenuListBoxFont = " ") StringReplace, MenuFontList, MenuFontList, |%ListBoxFontOverride%|, |%ListBoxFontOverride%|| - Gui, MenuGui:Add, DDL, x%MenuGroup3of3EditX% y%MenuRowEditY% r10 w200 vListBoxFontOverride, %MenuFontList% + Gui, MenuGui:Add, DDL, x%MenuGroup3of3EditX% y%MenuRowEditY% r10 w200 vListBoxFontOverride gEditValue, %MenuFontList% Gui, MenuGui:Font, cGreen Gui, MenuGui:Add, Text, x%MenuGroup3of3HelpX% y%MenuRowHelpY% vhListBoxFontOverride gHelpMe, %MenuGuiHelpIcon% Gui, MenuGui:Font, cBlack @@ -366,7 +367,7 @@ ConstructGui() MenuRowEditY := MenuRowY + MenuEditIndentY Gui, MenuGui:Add, GroupBox, x%MenuGroup1BoxX% y%MenuRowY% w%MenuOneColGroupWidth% h%MenuRowHeight% , Window titles you want TypingAid enabled for - Gui, MenuGui:Add, Edit, x%MenuGroup1EditX% y%MenuRowEditY% w%MenuOneColEditWidthEdit% vIncludeProgramTitles, %IncludeProgramTitles% + Gui, MenuGui:Add, Edit, x%MenuGroup1EditX% y%MenuRowEditY% w%MenuOneColEditWidthEdit% vIncludeProgramTitles gEditValue, %IncludeProgramTitles% Gui, MenuGui:Add, Button, x%MenuOneColEditButton% yp w130 gSetEnableTitles, Edit Gui, MenuGui:Font, cGreen Gui, MenuGui:Add, Text, x%MenuGroup1of1HelpX% y%MenuRowHelpY% vhIncludeProgramTitles gHelpMe, %MenuGuiHelpIcon% @@ -377,7 +378,7 @@ ConstructGui() MenuRowEditY := MenuRowY + MenuEditIndentY Gui, MenuGui:Add, GroupBox, x%MenuGroup1BoxX% y%MenuRowY% w%MenuOneColGroupWidth% h%MenuRowHeight% , Window titles you want TypingAid disabled for - Gui, MenuGui:Add, Edit, x%MenuGroup1EditX% y%MenuRowEditY% w%MenuOneColEditWidthEdit% vExcludeProgramTitles, %ExcludeProgramTitles% + Gui, MenuGui:Add, Edit, x%MenuGroup1EditX% y%MenuRowEditY% w%MenuOneColEditWidthEdit% vExcludeProgramTitles gEditValue, %ExcludeProgramTitles% Gui, MenuGui:Add, Button, x%MenuOneColEditButton% yp w130 gSetDisableTitles, Edit Gui, MenuGui:Font, cGreen Gui, MenuGui:Add, Text, x%MenuGroup1of1HelpX% y%MenuRowHelpY% vhExcludeProgramTitles gHelpMe, %MenuGuiHelpIcon% @@ -388,7 +389,7 @@ ConstructGui() MenuRowEditY := MenuRowY + MenuEditIndentY Gui, MenuGui:Add, GroupBox, x%MenuGroup1BoxX% y%MenuRowY% w%MenuOneColGroupWidth% h%MenuRowHeight% , Processes you want TypingAid enabled for - Gui, MenuGui:Add, Edit, x%MenuGroup1EditX% y%MenuRowEditY% w%MenuOneColEditWidthEdit% vIncludeProgramExecutables, %IncludeProgramExecutables% + Gui, MenuGui:Add, Edit, x%MenuGroup1EditX% y%MenuRowEditY% w%MenuOneColEditWidthEdit% vIncludeProgramExecutables gEditValue, %IncludeProgramExecutables% Gui, MenuGui:Add, Button, x%MenuOneColEditButton% yp w130 gSetEnableProcess, Edit Gui, MenuGui:Font, cGreen Gui, MenuGui:Add, Text, x%MenuGroup1of1HelpX% y%MenuRowHelpY% vhIncludeProgramExecutables gHelpMe, %MenuGuiHelpIcon% @@ -399,7 +400,7 @@ ConstructGui() MenuRowEditY := MenuRowY + MenuEditIndentY Gui, MenuGui:Add, GroupBox, x%MenuGroup1BoxX% y%MenuRowY% w%MenuOneColGroupWidth% h%MenuRowHeight% , Processes you want TypingAid disabled for - Gui, MenuGui:Add, Edit, x%MenuGroup1EditX% y%MenuRowEditY% w%MenuOneColEditWidthEdit% vExcludeProgramExecutables, %ExcludeProgramExecutables% + Gui, MenuGui:Add, Edit, x%MenuGroup1EditX% y%MenuRowEditY% w%MenuOneColEditWidthEdit% vExcludeProgramExecutables gEditValue, %ExcludeProgramExecutables% Gui, MenuGui:Add, Button, x%MenuOneColEditButton% yp w130 gSetDisableProcess, Edit Gui, MenuGui:Font, cGreen Gui, MenuGui:Add, Text, x%MenuGroup1of1HelpX% y%MenuRowHelpY% vhExcludeProgramExecutables gHelpMe, %MenuGuiHelpIcon% @@ -412,7 +413,7 @@ ConstructGui() ;HelperWindowProgramTitles Gui, MenuGui:Add, GroupBox, x%MenuGroup1BoxX% y%MenuRowY% w%MenuOneColGroupWidth% h%MenuRowHeight% , Window titles you want the helper window enabled for - Gui, MenuGui:Add, Edit, x%MenuGroup1EditX% y%MenuRowEditY% w%MenuOneColEditWidthEdit% vHelperWindowProgramTitles, %HelperWindowProgramTitles% + Gui, MenuGui:Add, Edit, x%MenuGroup1EditX% y%MenuRowEditY% w%MenuOneColEditWidthEdit% vHelperWindowProgramTitles gEditValue, %HelperWindowProgramTitles% Gui, MenuGui:Add, Button, x%MenuOneColEditButton% yp w130 gSetHelpTitles, Edit Gui, MenuGui:Font, cGreen Gui, MenuGui:Add, Text, x%MenuGroup1of1HelpX% y%MenuRowHelpY% vhHelperWindowProgramTitles gHelpMe, %MenuGuiHelpIcon% @@ -425,7 +426,7 @@ ConstructGui() ;HelperWindowProgramExecutables Gui, MenuGui:Add, GroupBox, x%MenuGroup1BoxX% y%MenuRowY% w%MenuOneColGroupWidth% h%MenuRowHeight% , Processes you want the helper window enabled for - Gui, MenuGui:Add, Edit, x%MenuGroup1EditX% y%MenuRowEditY% w%MenuOneColEditWidthEdit% vHelperWindowProgramExecutables, %HelperWindowProgramExecutables% + Gui, MenuGui:Add, Edit, x%MenuGroup1EditX% y%MenuRowEditY% w%MenuOneColEditWidthEdit% vHelperWindowProgramExecutables gEditValue, %HelperWindowProgramExecutables% Gui, MenuGui:Add, Button, x%MenuOneColEditButton% yp w130 gSetHelpProcess, Edit Gui, MenuGui:Font, cGreen Gui, MenuGui:Add, Text, x%MenuGroup1of1HelpX% y%MenuRowHelpY% vhHelperWindowProgramExecutables gHelpMe, %MenuGuiHelpIcon% @@ -440,7 +441,7 @@ ConstructGui() MenuRowEditY := MenuRowY + MenuEditIndentY Gui, MenuGui:Add, GroupBox, x%MenuGroup1BoxX% y%MenuRowY% w%MenuOneColGroupWidth% h%MenuRowHeight% , Terminating Characters (see http://www.autohotkey.com/docs/KeyList.htm) - Gui, MenuGui:Add, Edit, x%MenuGroup1EditX% y%MenuRowEditY% w%MenuOneColEditWidth% vTerminatingCharacters, %TerminatingCharacters% + Gui, MenuGui:Add, Edit, x%MenuGroup1EditX% y%MenuRowEditY% w%MenuOneColEditWidth% vTerminatingCharacters gEditValue, %TerminatingCharacters% Gui, MenuGui:Font, cGreen Gui, MenuGui:Add, Text, x%MenuGroup1of1HelpX% y%MenuRowHelpY% vhTerminatingCharacters gHelpMe, %MenuGuiHelpIcon% Gui, MenuGui:Font, cBlack @@ -450,7 +451,7 @@ ConstructGui() MenuRowHelpY := MenuRowY - MenuHelpIndentY Gui, MenuGui:Add, GroupBox, x%MenuGroup1BoxX% y%MenuRowY% w%MenuOneColGroupWidth% h%MenuRowHeight% , Force New Word Characters (comma separated) - Gui, MenuGui:Add, Edit, x%MenuGroup1EditX% y%MenuRowEditY% w%MenuOneColEditWidth% vForceNewWordCharacters, %ForceNewWordCharacters% + Gui, MenuGui:Add, Edit, x%MenuGroup1EditX% y%MenuRowEditY% w%MenuOneColEditWidth% vForceNewWordCharacters gEditValue, %ForceNewWordCharacters% Gui, MenuGui:Font, cGreen Gui, MenuGui:Add, Text, x%MenuGroup1of1HelpX% y%MenuRowHelpY% vhForceNewWordCharacters gHelpMe, %MenuGuiHelpIcon% Gui, MenuGui:Font, cBlack @@ -645,7 +646,7 @@ Return Restore: ; If Learn settings have changed, we need to reload the script. Otherwise, we can just go through the normal save process. ReadPreferences("RestoreDefaults") -IF (Menu_OldValues <> (LearnCount . DelimiterChar . LearnLength . DelimiterChar . LearnMode)) +IF (Menu_RestartValues <> (LearnCount . DelimiterChar . LearnLength . DelimiterChar . LearnMode)) { MsgBox, 1, Restore Defaults, Restoring Defaults will change Learn settings.`r`nChanging Learn settings requires a script restart. Continue? IfMsgBox, Cancel @@ -686,8 +687,12 @@ Return Save: ; should only save preferences.ini if different from defaults +Menu_ChangedPrefs["ArrowKeyMethod"] := ArrowKeyMethod +Menu_ChangedPrefs["DisabledAutoCompleteKeys"] := DisabledAutoCompleteKeys +Menu_ChangedPrefs["NoBackSpace"] := NoBackSpace +Menu_ChangedPrefs["SendMethod"] := SendMethod Gui, MenuGui:Submit -IF (Menu_OldValues <> (Menu_LearnCount . DelimiterChar . Menu_LearnLength . DelimiterChar . Menu_LearnMode)) +IF (Menu_RestartValues <> (Menu_LearnCount . DelimiterChar . Menu_LearnLength . DelimiterChar . Menu_LearnMode)) { MsgBox, 1, Save, Saving will change Learn settings.`r`nChanging Learn settings requires a script restart. Continue? IfMsgBox, Cancel @@ -710,6 +715,9 @@ SaveSettings() Global Menu_ArrowKeyMethodOptionsText, Menu_CaseCorrection, Menu_SendMethodOptionsCode, Menu_SendMethodC Global Menu_CtrlEnter, Menu_CtrlSpace, Menu_Enter, Menu_NumberKeys, Menu_RightArrow, Menu_Tab Global ArrowKeyMethod, DisabledAutoCompleteKeys, NoBackSpace, SendMethod + Global Menu_ChangedPrefs + + Menu_PrefsToSave := Object() Loop, parse, Menu_SendMethodOptionsCode, | ; get sendmethod { @@ -746,7 +754,16 @@ SaveSettings() Else If (Menu_CaseCorrection = "off") NoBackSpace=On - SavePreferences() + ; Determine list of preferences to save + For key, value in Menu_ChangedPrefs + { + IF (%key% <> value) + { + Menu_PrefsToSave.Insert(key) + } + } + + SavePreferences(Menu_PrefsToSave) } Save() @@ -763,6 +780,13 @@ Save() } +EditValue: +IF (A_GuiControl && !(SubStr(A_GuiControl ,1 ,5) == "Menu_") ) +{ + Menu_ChangedPrefs[A_GuiControl] := %A_GuiControl% +} +Return + HelpMe: Loop, Parse, %A_GuiControl%,`r`n { diff --git a/Source/Includes/Wordlist.ahk b/Source/Includes/Wordlist.ahk index f5d7192..ee8e874 100644 --- a/Source/Includes/Wordlist.ahk +++ b/Source/Includes/Wordlist.ahk @@ -287,7 +287,7 @@ CheckValid(Word) Return } - IF ( StrLen(Word) <= wlen ) ; don't add the word if it's not longer than the minimum length + IF ( StrLen(Word) <= Length ) ; don't add the word if it's not longer than the minimum length { Return } diff --git a/Source/TypingAid.ahk b/Source/TypingAid.ahk index 76f2601..e2d9590 100644 --- a/Source/TypingAid.ahk +++ b/Source/TypingAid.ahk @@ -263,7 +263,7 @@ ProcessKey(chr,EndKey) } ;Wait till minimum letters - IF ( StrLen(Word) < wlen ) + IF ( StrLen(Word) < Length ) { CloseListBox() Return From 93e6599e7d4027b26a2d4ef60c44b270744fb3af Mon Sep 17 00:00:00 2001 From: ManiacDC Date: Wed, 28 Jan 2015 08:35:05 -0500 Subject: [PATCH 22/62] Fixed the UI behavior of some settings. Fixed the eventual saving behavior of some settings. --- Source/Includes/Settings.ahk | 90 ++++++++++++------------------------ 1 file changed, 30 insertions(+), 60 deletions(-) diff --git a/Source/Includes/Settings.ahk b/Source/Includes/Settings.ahk index 86d58b0..1a0c774 100644 --- a/Source/Includes/Settings.ahk +++ b/Source/Includes/Settings.ahk @@ -23,7 +23,7 @@ ConstructGui() Global ListBoxCharacterWidth, ListBoxFontFixed, ListBoxFontOverride, ListBoxFontSize, ListBoxOffset, ListBoxOpacity, ListBoxRows Global hListBoxCharacterWidth, hListBoxFontFixed, hListBoxFontOverride, hListBoxFontSize, hListBoxOffset, hListBoxOpacity, hListBoxRows Global Menu_LearnCount, Menu_LearnLength, Menu_LearnMode - Global Menu_ArrowKeyMethodOptionsText, Menu_CaseCorrection, Menu_SendMethodOptionsCode, Menu_SendMethodC + Global Menu_ArrowKeyMethodOptionsText, Menu_CaseCorrection, Menu_ListBoxOpacityUpDown, Menu_SendMethodOptionsCode, Menu_SendMethodC Global Menu_CtrlEnter, Menu_CtrlSpace, Menu_Enter, Menu_NumberKeys, Menu_RightArrow, Menu_Tab Global MenuAdvGuiHeight, MenuGuiWidth Global Length @@ -329,8 +329,8 @@ ConstructGui() Gui, MenuGui:Add, GroupBox, x%MenuGroup1BoxX% y%MenuRowY% w%MenuThreeColGroupWidth% h%MenuRowHeight% , List opacity - Gui, MenuGui:Add, Edit, xp+10 yp+20 w%MenuThreeColEditWidth%, %ListBoxOpacity% - Gui, MenuGui:Add, UpDown, xp+10 yp+20 w%MenuThreeColEditWidth% vListBoxOpacity gEditValue Range0-255, %ListBoxOpacity% + Gui, MenuGui:Add, Edit, xp+10 yp+20 w%MenuThreeColEditWidth% vListBoxOpacity gEditValue, %ListBoxOpacity% + Gui, MenuGui:Add, UpDown, xp+10 yp+20 w%MenuThreeColEditWidth% vMenu_ListBoxOpacityUpDown Range0-255, %ListBoxOpacity% Gui, MenuGui:Font, cGreen Gui, MenuGui:Add, Text, x%MenuGroup1of3HelpX% y%MenuRowHelpY% vhListBoxOpacity gHelpMe, %MenuGuiHelpIcon% Gui, MenuGui:Font, cBlack @@ -562,31 +562,35 @@ Full (untested) for UTF-8 character set. } SetEnableTitles: -GetList(1,0,IncludeProgramTitles) +GetList("IncludeProgramTitles",0,IncludeProgramTitles) Return SetDisableTitles: -GetList(2,0,ExcludeProgramTitles) +GetList("ExcludeProgramTitles",0,ExcludeProgramTitles) Return SetEnableProcess: -GetList(3,1,IncludeProgramExecutables) +GetList("IncludeProgramExecutables",1,IncludeProgramExecutables) Return SetDisableProcess: -GetList(4,1,ExcludeProgramExecutables) +GetList("ExcludeProgramExecutables",1,ExcludeProgramExecutables) Return SetHelpTitles: -GetList(5,0,HelperWindowProgramTitles) +GetList("HelperWindowProgramTitles",0,HelperWindowProgramTitles) Return SetHelpProcess: -GetList(6,1,HelperWindowProgramExecutables) +GetList("HelperWindowProgramExecutables",1,HelperWindowProgramExecutables) Return GetList(TitleType,GetExe, ByRef ActiveList) { + global MenuTitleType + global InProcessList + InProcessList := true + MenuTitleType := TitleType If (GetExe =1) { WinGet, id, list,,, Program Manager @@ -677,7 +681,7 @@ IF (Menu_RestartValues <> (LearnCount . DelimiterChar . LearnLength . DelimiterC } return -Esc:: +MenuGuiGuiEscape: MenuGuiGuiClose: Cancel: Gui, MenuGui:Destroy @@ -692,6 +696,7 @@ Menu_ChangedPrefs["DisabledAutoCompleteKeys"] := DisabledAutoCompleteKeys Menu_ChangedPrefs["NoBackSpace"] := NoBackSpace Menu_ChangedPrefs["SendMethod"] := SendMethod Gui, MenuGui:Submit +ListBoxOpacity := Menu_ListBoxOpacityUpDown IF (Menu_RestartValues <> (Menu_LearnCount . DelimiterChar . Menu_LearnLength . DelimiterChar . Menu_LearnMode)) { MsgBox, 1, Save, Saving will change Learn settings.`r`nChanging Learn settings requires a script restart. Continue? @@ -712,10 +717,12 @@ Return SaveSettings() { - Global Menu_ArrowKeyMethodOptionsText, Menu_CaseCorrection, Menu_SendMethodOptionsCode, Menu_SendMethodC - Global Menu_CtrlEnter, Menu_CtrlSpace, Menu_Enter, Menu_NumberKeys, Menu_RightArrow, Menu_Tab - Global ArrowKeyMethod, DisabledAutoCompleteKeys, NoBackSpace, SendMethod - Global Menu_ChangedPrefs + Global + + Local Menu_PrefsToSave + Local Split + Local key + Local value Menu_PrefsToSave := Object() @@ -866,56 +873,24 @@ HandleMessage( p_w, p_l, p_m, p_hw ) SaveTitleList: ControlGet, MenuTitleList, List, , ListBox1 +InProcessList := false Gui, ProcessList:Destroy -;Gui, MenuGui:Show Gui, MenuGui:-Disabled ; enable main window -WinActivate, TypingAid Settings +Gui, MenuGui:Show StringReplace, MenuTitleList, MenuTitleList, `n, |, All -If (MenuTitleType=1) -{ - IncludeProgramTitles:=MenuTitleList - GuiControl, MenuGui:Text, Edit2, - GuiControl, MenuGui:Text, Edit2, %IncludeProgramTitles% -} -Else If (MenuTitleType=2) -{ - ExcludeProgramTitles:=MenuTitleList - GuiControl, MenuGui:Text, Edit3, - GuiControl, MenuGui:Text, Edit3, %ExcludeProgramTitles% -} -Else If (MenuTitleType=3) -{ - IncludeProgramExecutables:=MenuTitleList - GuiControl, MenuGui:Text, Edit4, - GuiControl, MenuGui:Text, Edit4, %IncludeProgramExecutables% -} -Else If (MenuTitleType=4) -{ - ExcludeProgramExecutables:=MenuTitleList - GuiControl, MenuGui:Text, Edit5, - GuiControl, MenuGui:Text, Edit5, %ExcludeProgramExecutables% -} -Else If (MenuTitleType=5) -{ - HelperWindowProgramTitles:=MenuTitleList - GuiControl, MenuGui:Text, Edit6, - GuiControl, MenuGui:Text, Edit6, %HelperWindowProgramTitles% -} -Else If (MenuTitleType=6) -{ - HelperWindowProgramExecutables:=MenuTitleList - GuiControl, MenuGui:Text, Edit7, - GuiControl, MenuGui:Text, Edit7, %HelperWindowProgramExecutables% -} - +%MenuTitleType% := MenuTitleList +GuiControl, MenuGui:Text, %MenuTitleType%, % %MenuTitleType% Return +ProcessListGuiEscape: +ProcessListGuiClose: CancelTitle: +InProcessList := false Gui, ProcessList:Destroy -Gui, MenuGui:-Disabled ; disable main window -WinActivate, TypingAid Settings +Gui, MenuGui:-Disabled ; enable main window +Gui, MenuGui:Show Return ToEdit: @@ -943,11 +918,6 @@ GuiControl, ProcessList:, ListBox1, | GuiControl, ProcessList:, ListBox1, %MenuTitleList% Return -ProcessListGuiClose: -Gui, ProcessList:Destroy -Gui, MenuGui:Show -Return - ; copied from font explorer http://www.autohotkey.com/forum/viewtopic.php?t=57501&highlight=font Writer_enumFonts() { From d40ad354605121aad5c9cc9157c90c26af61b60a Mon Sep 17 00:00:00 2001 From: ManiacDC Date: Fri, 30 Jan 2015 08:38:43 -0500 Subject: [PATCH 23/62] Added the ability to learn words with no alpha characters using Ctrl-Shift-C or read them in from the Wordlist.txt file. --- Source/Includes/Wordlist.ahk | 34 +++++++++++++++++++--------------- Source/TypingAid.ahk | 2 +- 2 files changed, 20 insertions(+), 16 deletions(-) diff --git a/Source/Includes/Wordlist.ahk b/Source/Includes/Wordlist.ahk index ee8e874..98db343 100644 --- a/Source/Includes/Wordlist.ahk +++ b/Source/Includes/Wordlist.ahk @@ -80,7 +80,7 @@ ReadWordList() LegacyLearnedWords=1 ; Set Flag that we need to convert wordlist file } } else { - AddWordToList(A_LoopField,0) + AddWordToList(A_LoopField,0,"ForceLearn") } } ParseWords = @@ -102,7 +102,7 @@ ReadWordList() Loop, Parse, ParseWords, `n, `r { - AddWordToList(A_LoopField,0) + AddWordToList(A_LoopField,0,"ForceLearn") } ParseWords = wDB.EndTransaction() @@ -158,7 +158,7 @@ ReverseWordNums() ;------------------------------------------------------------------------ -AddWordToList(AddWord,ForceCountNewOnly) +AddWordToList(AddWord,ForceCountNewOnly,ForceLearn=false) { ;AddWord = Word to add to the list ;ForceCountNewOnly = force this word to be permanently learned even if learnmode is off @@ -185,7 +185,7 @@ AddWordToList(AddWord,ForceCountNewOnly) LearnModeTemp = 1 } - if !(CheckValid(AddWord)) + if !(CheckValid(AddWord,ForceLearn)) return ifequal, wordlistdone, 1 @@ -261,7 +261,7 @@ AddWordToList(AddWord,ForceCountNewOnly) Return } -CheckValid(Word) +CheckValid(Word,ForceLearn=false) { Ifequal, Word, ;If we have no word to add, skip out. @@ -270,24 +270,28 @@ CheckValid(Word) if Word is space ;If Word is only whitespace, skip out. Return - ;if Word does not contain at least one alpha character, skip out. - IfEqual, A_IsUnicode, 1 - { - if ( RegExMatch(Word, "S)\pL") = 0 ) - { - return - } - } else if ( RegExMatch(Word, "S)[a-zA-Zà-öø-ÿÀ-ÖØ-ß]") = 0 ) + if ( Substr(Word,1,1) = ";" ) ;If first char is ";", clear word and skip out. { Return } - if ( Substr(Word,1,1) = ";" ) ;If first char is ";", clear word and skip out. + IF ( StrLen(Word) <= Length ) ; don't add the word if it's not longer than the minimum length { Return } - IF ( StrLen(Word) <= Length ) ; don't add the word if it's not longer than the minimum length + ;Anything below this line should not be checked if we want to Force Learning the word (Ctrl-Shift-C or coming from wordlist.txt) + If ForceLearn + Return, 1 + + ;if Word does not contain at least one alpha character, skip out. + IfEqual, A_IsUnicode, 1 + { + if ( RegExMatch(Word, "S)\pL") = 0 ) + { + return + } + } else if ( RegExMatch(Word, "S)[a-zA-Zà-öø-ÿÀ-ÖØ-ß]") = 0 ) { Return } diff --git a/Source/TypingAid.ahk b/Source/TypingAid.ahk index e2d9590..5807e0d 100644 --- a/Source/TypingAid.ahk +++ b/Source/TypingAid.ahk @@ -857,7 +857,7 @@ AddSelectedWordToList() ClipWait, 0 IfNotEqual, Clipboard, { - AddWordToList(Clipboard,1) + AddWordToList(Clipboard,1,"ForceLearn") } Clipboard = %ClipboardSave% } From 82d291c8cdfae6c7a865c7fcc6cc9bd70673037e Mon Sep 17 00:00:00 2001 From: ManiacDC Date: Mon, 2 Feb 2015 07:44:14 -0500 Subject: [PATCH 24/62] More Preferences saving prep --- Source/Includes/Preferences File.ahk | 197 +++++++++++++++------------ 1 file changed, 108 insertions(+), 89 deletions(-) diff --git a/Source/Includes/Preferences File.ahk b/Source/Includes/Preferences File.ahk index 3a99071..0c4eb6b 100644 --- a/Source/Includes/Preferences File.ahk +++ b/Source/Includes/Preferences File.ahk @@ -16,58 +16,67 @@ MaybeWriteHelperWindowPos() ReadPreferences(RestoreDefaults = false,RestorePreferences = false) { - global - - Local Etitle + global DftIncludeProgramExecutables + global DftIncludeProgramTitles + global DftExcludeProgramExecutables + global DftExcludeProgramTitles + global DftLength + global DftNumPresses + global DftLearnMode + global DftLearnCount + global DftLearnLength + global DftDoNotLearnStrings + global DftArrowKeyMethod + global DftDisabledAutoCompleteKeys + global DftDetectMouseClickMove + global DftNoBackSpace + global DftAutoSpace + global DftSuppressMatchingWord + global DftSendMethod + global DftTerminatingCharacters + global DftForceNewWordCharacters + global DftListBoxOffSet + global DftListBoxFontFixed + global DftListBoxFontOverride + global DftListBoxFontSize + global DftListBoxCharacterWidth + global DftListBoxOpacity + global DftListBoxRows + global DftHelperWindowProgramExecutables + global DftHelperWindowProgramTitles + + global IncludeProgramExecutables + global IncludeProgramTitles + global ExcludeProgramExecutables + global ExcludeProgramTitles + global Length + global NumPresses + global LearnMode + global LearnCount + global LearnLength + global DoNotLearnStrings + global ArrowKeyMethod + global DisabledAutoCompleteKeys + global DetectMouseClickMove + global NoBackSpace + global AutoSpace + global SuppressMatchingWord + global SendMethod + global TerminatingCharacters + global ForceNewWordCharacters + global ListBoxOffset + global ListBoxFontFixed + global ListBoxFontOverride + global ListBoxFontSize + global ListBoxCharacterWidth + global ListBoxOpacity + global ListBoxRows + global HelperWindowProgramExecutables + global HelperWindowProgramTitles ;PrefsFile is global so it works in Settings.ahk - Local INI - Local Defaults - Local LastState - Local IniValues - Local CurrentIniValues - Local CurrentIniValues0 - Local CurrentIniValues1 - Local CurrentIniValues2 - Local CurrentIniValues3 - Local CurrentIniValues4 - Local CurrentIniValues5 - Local SpaceVar - Local DftVariable - Local NormalVariable - Local IniSection - Local IniKey - Local DftValue - Local BrokenTerminatingCharacters - - Local DftIncludeProgramExecutables - Local DftIncludeProgramTitles - Local DftExcludeProgramExecutables - Local DftExcludeProgramTitles - ;DftLength should be global so it works in ValidatePreferences - ;DftNumPresses should be global so it works in ValidatePreferences - ;DftLearnMode should be global so it works in ValidatePreferences - ;DftLearnCount should be global so it works in ValidatePreferences - Local DftLearnLength - Local DftDoNotLearnStrings - ;DftArrowKeyMethod should be global so it works in ValidatePreferences - Local DftDisabledAutoCompleteKeys - ;DftDetectMouseClickMove should be globabl so it works in ValidatePreferences - ;DftNoBackSpace should be global so it works in ValidatePreferences - ;DftAutoSpace should be global so it works in ValidatePreferences - Local DftSuppressMatchingWord - ;DftSendMethod should be global so it works in ValidatePreferences - ;DftTerminatingCharacters should be global so it works in the help strings and ValidatePreferences - Local DftForceNewWordCharacters - ;DftListBoxOffSet should be global so it works in ValidatePreferences - ;DftListBoxFontFixed should be global so it works in ValidatePreferences - Local DftListBoxFontOverride - ;DftListBoxFontSize should be global so it works in ValidatePreferences - ;DftListBoxCharacterWidth should be global so it works in ValidatePreferences - ;DftListBoxOpacity should be global so it works in ValidatePreferences - ;DftListBoxRows should be global so it works in ValidatePreferences - Local DftHelperWindowProgramExecutables - Local DftHelperWindowProgramTitles + global PrefsFile + global PrefsSections PrefsFile = %A_ScriptDir%\Preferences.ini Defaults = %A_ScriptDir%\Defaults.ini @@ -95,37 +104,39 @@ ReadPreferences(RestoreDefaults = false,RestorePreferences = false) IniValues = ( - DftIncludeProgramExecutables,IncludeProgramExecutables,IncludePrograms,IncludeProgramExecutables,%SpaceVar% - DftIncludeProgramTitles,IncludeProgramTitles,IncludePrograms,IncludeProgramTitles,%SpaceVar% - DftExcludeProgramExecutables,ExcludeProgramExecutables,ExcludePrograms,ExcludeProgramExecutables,%SpaceVar% - DftExcludeProgramTitles,ExcludeProgramTitles,ExcludePrograms,ExcludeProgramTitles,%SpaceVar% - ,Title,Settings,Title,%SpaceVar% - DftLength,Length,Settings,Length,3 - DftNumPresses,NumPresses,Settings,NumPresses,1 - DftLearnMode,LearnMode,Settings,LearnMode,On - DftLearnCount,LearnCount,Settings,LearnCount,5 - DftLearnLength,LearnLength,Settings,LearnLength,%SpaceVar% - DftDoNotLearnStrings,DoNotLearnStrings,Settings,DoNotLearnStrings,%SpaceVar% - DftArrowKeyMethod,ArrowKeyMethod,Settings,ArrowKeyMethod,First - DftDisabledAutoCompleteKeys,DisabledAutoCompleteKeys,Settings,DisabledAutoCompleteKeys,%SpaceVar% - DftDetectMouseClickMove,DetectMouseClickMove,Settings,DetectMouseClickMove,On - DftNoBackSpace,NoBackSpace,Settings,NoBackSpace,On - DftAutoSpace,AutoSpace,Settings,AutoSpace,Off - DftSuppressMatchingWord,SuppressMatchingWord,Settings,SuppressMatchingWord,Off - DftSendMethod,SendMethod,Settings,SendMethod,1 - DftTerminatingCharacters,TerminatingCharacters,Settings,TerminatingCharacters,`%DftTerminatingCharacters`% - DftForceNewWordCharacters,ForceNewWordCharacters,Settings,ForceNewWordCharacters,%SpaceVar% - DftListBoxOffSet,ListBoxOffset,ListBoxSettings,ListBoxOffset,14 - DftListBoxFontFixed,ListBoxFontFixed,ListBoxSettings,ListBoxFontFixed,Off - DftListBoxFontOverride,ListBoxFontOverride,ListBoxSettings,ListBoxFontOverride,%SpaceVar% - DftListBoxFontSize,ListBoxFontSize,ListBoxSettings,ListBoxFontSize,10 - DftListBoxCharacterWidth,ListBoxCharacterWidth,ListBoxSettings,ListBoxCharacterWidth,%SpaceVar% - DftListBoxOpacity,ListBoxOpacity,ListBoxSettings,ListBoxOpacity,215 - DftListBoxRows,ListBoxRows,ListBoxSettings,ListBoxRows,10 - DftHelperWindowProgramExecutables,HelperWindowProgramExecutables,HelperWindow,HelperWindowProgramExecutables,%SpaceVar% - DftHelperWindowProgramTitles,HelperWindowProgramTitles,HelperWindow,HelperWindowProgramTitles,%SpaceVar% - ,XY,HelperWindow,XY,%SpaceVar% + DftIncludeProgramExecutables,IncludeProgramExecutables,IncludePrograms,%SpaceVar% + DftIncludeProgramTitles,IncludeProgramTitles,IncludePrograms,%SpaceVar% + DftExcludeProgramExecutables,ExcludeProgramExecutables,ExcludePrograms,%SpaceVar% + DftExcludeProgramTitles,ExcludeProgramTitles,ExcludePrograms,%SpaceVar% + ,Title,Settings,%SpaceVar% + DftLength,Length,Settings,3 + DftNumPresses,NumPresses,Settings,1 + DftLearnMode,LearnMode,Settings,On + DftLearnCount,LearnCount,Settings,5 + DftLearnLength,LearnLength,Settings,%SpaceVar% + DftDoNotLearnStrings,DoNotLearnStrings,Settings,%SpaceVar% + DftArrowKeyMethod,ArrowKeyMethod,Settings,First + DftDisabledAutoCompleteKeys,DisabledAutoCompleteKeys,Settings,%SpaceVar% + DftDetectMouseClickMove,DetectMouseClickMove,Settings,On + DftNoBackSpace,NoBackSpace,Settings,On + DftAutoSpace,AutoSpace,Settings,Off + DftSuppressMatchingWord,SuppressMatchingWord,Settings,Off + DftSendMethod,SendMethod,Settings,1 + DftTerminatingCharacters,TerminatingCharacters,Settings,`%DftTerminatingCharacters`% + DftForceNewWordCharacters,ForceNewWordCharacters,Settings,%SpaceVar% + DftListBoxOffSet,ListBoxOffset,ListBoxSettings,14 + DftListBoxFontFixed,ListBoxFontFixed,ListBoxSettings,Off + DftListBoxFontOverride,ListBoxFontOverride,ListBoxSettings,%SpaceVar% + DftListBoxFontSize,ListBoxFontSize,ListBoxSettings,10 + DftListBoxCharacterWidth,ListBoxCharacterWidth,ListBoxSettings,%SpaceVar% + DftListBoxOpacity,ListBoxOpacity,ListBoxSettings,215 + DftListBoxRows,ListBoxRows,ListBoxSettings,10 + DftHelperWindowProgramExecutables,HelperWindowProgramExecutables,HelperWindow,%SpaceVar% + DftHelperWindowProgramTitles,HelperWindowProgramTitles,HelperWindow,%SpaceVar% + ,XY,HelperWindow,%SpaceVar% ) + + Sections := Object() Loop, Parse, IniValues, `n, `r%A_Space% { @@ -133,8 +144,9 @@ ReadPreferences(RestoreDefaults = false,RestorePreferences = false) DftVariable := CurrentIniValues1 NormalVariable := CurrentIniValues2 IniSection := CurrentIniValues3 - IniKey := CurrentIniValues4 - DftValue := CurrentIniValues5 + DftValue := CurrentIniValues4 + + PrefsSections[NormalVariable] := IniSection IF (DftValue == "%DftTerminatingCharacters%") { @@ -145,11 +157,11 @@ ReadPreferences(RestoreDefaults = false,RestorePreferences = false) DftValue := A_Space IF !(RestoreDefaults) - IniRead, %NormalVariable%, %PrefsFile%, %IniSection%, %IniKey%, %A_Space% + IniRead, %NormalVariable%, %PrefsFile%, %IniSection%, %NormalVariable%, %A_Space% IF DftVariable { - IniRead, %DftVariable%, %Defaults%, %IniSection%, %IniKey%, %DftValue% + IniRead, %DftVariable%, %Defaults%, %IniSection%, %NormalVariable%, %DftValue% IfEqual, %NormalVariable%, %NormalVariable% := %DftVariable% } @@ -472,12 +484,19 @@ ParseTerminatingCharacters() SavePreferences(ByRef PrefsToSave) { + global + local index + local element + + for index, element in PrefsToSave + { + MsgBox,,,% element . " | " . %element% . " | " . PrefsToSave[element] + } - - ;for index, element in Menu_PrefsToSave - ;{ - ; Menu_PrefsToSavez%index% := element . " | " . %element% . " | " . Menu_ChangedPrefs[element] - ;} + If (%element% == Dft%element%) + { + IniDelete, %PrefsFile%, PrefsSections[element], %element% + } ;Loop, % Menu_PrefsToSave._MaxIndex() ;{ From 6536c57709fdcd03894f1444b4da621bdcb37105 Mon Sep 17 00:00:00 2001 From: ManiacDC Date: Tue, 3 Feb 2015 07:22:02 -0500 Subject: [PATCH 25/62] Stuff... saves! Didn't test much. removed default construction of the ini file... now it's only created if something is changed. This means no more help text in the ini file. --- Source/Includes/Preferences File.ahk | 157 ++------------------------- 1 file changed, 8 insertions(+), 149 deletions(-) diff --git a/Source/Includes/Preferences File.ahk b/Source/Includes/Preferences File.ahk index 0c4eb6b..d67d732 100644 --- a/Source/Includes/Preferences File.ahk +++ b/Source/Includes/Preferences File.ahk @@ -136,7 +136,7 @@ ReadPreferences(RestoreDefaults = false,RestorePreferences = false) ,XY,HelperWindow,%SpaceVar% ) - Sections := Object() + PrefsSections := Object() Loop, Parse, IniValues, `n, `r%A_Space% { @@ -191,141 +191,6 @@ ReadPreferences(RestoreDefaults = false,RestorePreferences = false) } ConstructHelpStrings() - - If !(FileExist(PrefsFile) || FileExist(Defaults)) - { - INI= - ( -[IncludePrograms] -; -%hIncludeProgramExecutables% -; ex: IncludeProgramExecutables=notepad.exe|iexplore.exe -IncludeProgramExecutables=%DftIncludeProgramExecutables% -; -; -%hIncludeProgramTitles% -; ex: IncludeProgramTitles=Notepad|Internet Explorer -IncludeProgramTitles=%DftIncludeProgramTitles% -; -; -[ExcludePrograms] -; -%hExcludeProgramExecutables% -; ex: ExcludeProgramExecutables=notepad.exe|iexplore.exe -ExcludeProgramExecutables=%DftExcludeProgramExecutables% -; -; -%hExcludeProgramTitles% -; ex: ExcludeProgramTitles=Notepad|Internet Explorer -ExcludeProgramTitles=%DftExcludeProgramTitles% -; -; -[Settings] -; -%hLength% -Length=%DftLength% -; -; -%hNumPresses% -NumPresses=%DftNumPresses% -; -; -%hLearnMode% -LearnMode=%DftLearnMode% -; -; -%hLearnCount% -LearnCount=%DftLearnCount% -; -; -%hLearnLength% -LearnLength=%DftLearnLength% -; -; -%hDoNotLearnStrings% -; ex: DoNotLearnStrings=ord98,fr21 -DoNotLearnStrings=%DftDoNotLearnStrings% -; -; -%hArrowKeyMethod% -ArrowKeyMethod=%DftArrowKeyMethod% -; -; -%hDisabledAutoCompleteKeys% -DisabledAutoCompleteKeys=%DftDisabledAutoCompleteKeys% -; -; -%hDetectMouseClickMove% -DetectMouseClickMove=%DftDetectMouseClickMove% -; -; -%hNoBackSpace% -NoBackSpace=%DftNoBackSpace% -; -; -%hAutoSpace% -AutoSpace=%DftAutoSpace% -; -; -%hSuppressMatchingWord% -SuppressMatchingWord=%DftSuppressMatchingWord% -; -; -%hSendMethod% -SendMethod=%DftSendMethod% -; -; -%hTerminatingCharacters% -TerminatingCharacters=%DftTerminatingCharacters% -; -; -%hForceNewWordCharacters% -ForceNewWordCharacters=%DftForceNewWordCharacters% -; -; -[ListBoxSettings] -; -%hListBoxOffset% -ListBoxOffset=%DftListBoxOffSet% -; -; -%hListBoxFontFixed% -ListBoxFontFixed=%DftListBoxFontFixed% -; -; -%hListBoxFontOverride% -ListBoxFontOverride=%DftListBoxFontOverride% -; -; -%hListBoxFontSize% -ListBoxFontSize=%DftListBoxFontSize% -; -; -%hListBoxCharacterWidth% -ListBoxCharacterWidth=%DftListBoxCharacterWidth% -; -; -%hListBoxOpacity% -ListBoxOpacity=%DftListBoxOpacity% -; -; -%hListBoxRows% -ListBoxRows=%DftListBoxRows% -; -; -[HelperWindow] -; -%hHelperWindowProgramExecutables% -; ex: HelperWindowProgramExecutables=notepad.exe|iexplore.exe -HelperWindowProgramExecutables=%DftHelperWindowProgramExecutables% -; -; -%hHelperWindowProgramTitles% -; ex: HelperWindowProgramTitles=Notepad|Internet Explorer -HelperWindowProgramTitles=%DftHelperWindowProgramTitles% - ) - FileAppendDispatch(INI, PrefsFile, "UTF-16") - } Return } @@ -490,22 +355,16 @@ SavePreferences(ByRef PrefsToSave) for index, element in PrefsToSave { - MsgBox,,,% element . " | " . %element% . " | " . PrefsToSave[element] - } + ;ValidatePreferences()? what about the fact this changes Terminating Characters - If (%element% == Dft%element%) - { - IniDelete, %PrefsFile%, PrefsSections[element], %element% + If (%element% == Dft%element%) + { + IniDelete, %PrefsFile%,% PrefsSections[element], %element% + } else { + IniWrite,% %element%, %PrefsFile%,% PrefsSections[element], %element% + } } - ;Loop, % Menu_PrefsToSave._MaxIndex() - ;{ - ; Menu_PrefsToSavez%A_LoopField% := Menu_PrefsToSave[A_LoopField] - ;} - ;ListVars - ;Pause - - ;ValidatePreferences()? what about the fact this changes Terminating Characters ;do stuff Return } From af480279acb752bab5e79c1f57b911972f804dfb Mon Sep 17 00:00:00 2001 From: ManiacDC Date: Wed, 4 Feb 2015 08:23:52 -0500 Subject: [PATCH 26/62] Preference Validation refinements Converting singlematch variables to object --- Source/Includes/ListBox.ahk | 12 +++--- Source/Includes/Preferences File.ahk | 55 ++++++++++++++++++---------- Source/Includes/Sending.ahk | 2 +- Source/Includes/Settings.ahk | 1 + Source/TypingAid.ahk | 23 +++++------- 5 files changed, 52 insertions(+), 41 deletions(-) diff --git a/Source/Includes/ListBox.ahk b/Source/Includes/ListBox.ahk index b7ebc1c..82c01f0 100644 --- a/Source/Includes/ListBox.ahk +++ b/Source/Includes/ListBox.ahk @@ -70,7 +70,7 @@ SavePriorMatchPosition() { IfEqual, ArrowKeyMethod, LastWord { - OldMatch := singlematch%MatchPos% + OldMatch := singlematch[MatchPos] OldMatchStart = } else { IfEqual, ArrowKeyMethod, LastPosition @@ -125,7 +125,7 @@ SetupMatchPosition() IfLess, MatchStart, 1 MatchStart = 1 } - MatchPos = %OldMatch% + MatchPos := OldMatch } } else IfEqual, ArrowKeyMethod, LastWord @@ -133,9 +133,9 @@ SetupMatchPosition() Pos = Loop, %Number% { - if ( OldMatch == singlematch%A_Index% ) + if ( OldMatch == singlematch[A_Index] ) { - Pos = %A_Index% + Pos := A_Index Break } } @@ -147,7 +147,7 @@ SetupMatchPosition() MatchStart := Pos - (ListBoxRows - 1) IfLess, MatchStart, 1 MatchStart = 1 - MatchPos = %Pos% + MatchPos := Pos } } else { MatchPos = 1 @@ -167,7 +167,7 @@ RebuildMatchList() Local CurrentLength Loop, %Number% { - CurrentLength := AddToMatchList(A_Index,singlematch%A_Index%) + CurrentLength := AddToMatchList(A_Index,singlematch[A_Index]) IfGreater, CurrentLength, %MatchLongestLength% MatchLongestLength := CurrentLength } diff --git a/Source/Includes/Preferences File.ahk b/Source/Includes/Preferences File.ahk index d67d732..d3fd527 100644 --- a/Source/Includes/Preferences File.ahk +++ b/Source/Includes/Preferences File.ahk @@ -72,7 +72,7 @@ ReadPreferences(RestoreDefaults = false,RestorePreferences = false) global ListBoxOpacity global ListBoxRows global HelperWindowProgramExecutables - global HelperWindowProgramTitles + global HelperWindowProgramTitles ;PrefsFile is global so it works in Settings.ahk global PrefsFile @@ -168,6 +168,7 @@ ReadPreferences(RestoreDefaults = false,RestorePreferences = false) } ValidatePreferences() + ParseTerminatingCharacters() ; Legacy support for old Preferences File IfNotEqual, Etitle, @@ -205,8 +206,9 @@ ValidatePreferences() Length := DftLength } - IfEqual, LearnLength, - LearnLength := Length +2 + if (Length < 1) { + Length = 1 + } if NumPresses not in 1,2 NumPresses := DftNumPresses @@ -215,15 +217,22 @@ ValidatePreferences() LearnMode := DftLearnMode If LearnCount is not Integer + { LearnCount := DftLearnCount - - If LearnLength is not Integer + } + + if (LearnCount < 1) + { + LearnCount = 1 + } + + if LearnLength is not Integer { LearnLength := Length + 2 - } else { - If ( LearnLength < ( Length + 1 ) ) - LearnLength := Length + 1 - } + } else If ( LearnLength < ( Length + 1 ) ) + { + LearnLength := Length + 1 + } if DisabledAutoCompleteKeys contains N NumKeyMethod = Off @@ -250,6 +259,9 @@ ValidatePreferences() If AutoSpace not in On,Off AutoSpace := DftAutoSpace + if SuppressMatchingWord not in On,Off + SuppressMatchingWord := DftSuppressMatchingWord + if SendMethod not in 1,2,3,1C,2C,3C,4C SendMethod := DftSendMethod @@ -268,8 +280,6 @@ ValidatePreferences() IfEqual, TerminatingCharacters, TerminatingCharacters := DftTerminatingCharacters - ParseTerminatingCharacters() - if ListBoxOffset is not Integer ListBoxOffset := DftListBoxOffSet @@ -277,11 +287,13 @@ ValidatePreferences() ListBoxFontFixed := DftListBoxFontFixed If ListBoxFontSize is not Integer + { ListBoxFontSize := DftListBoxFontSize - else { - IfLess, ListBoxFontSize, 2 - ListBoxFontSize = 2 - } + } + else IfLess, ListBoxFontSize, 2 + { + ListBoxFontSize = 2 + } if ListBoxCharacterWidth is not Integer ListBoxCharacterWidth := DftListBoxCharacterWidth @@ -291,13 +303,15 @@ ValidatePreferences() If ListBoxOpacity is not Integer ListBoxOpacity := DftListBoxOpacity - else IfLess, ListBoxOpacity, 0 - ListBoxOpacity = 0 - else IfGreater, ListBoxOpacity, 255 - ListBoxOpacity = 255 + + IfLess, ListBoxOpacity, 0 + ListBoxOpacity = 0 + else IfGreater, ListBoxOpacity, 255 + ListBoxOpacity = 255 If ListBoxRows is not Integer ListBoxRows := DftListBoxRows + IfLess, ListBoxRows, 3 ListBoxRows = 3 else IfGreater, ListBoxRows, 30 @@ -352,10 +366,11 @@ SavePreferences(ByRef PrefsToSave) global local index local element + + ValidatePreferences() for index, element in PrefsToSave { - ;ValidatePreferences()? what about the fact this changes Terminating Characters If (%element% == Dft%element%) { diff --git a/Source/Includes/Sending.ahk b/Source/Includes/Sending.ahk index 512e5b4..29316ee 100644 --- a/Source/Includes/Sending.ahk +++ b/Source/Includes/Sending.ahk @@ -25,7 +25,7 @@ SendWord(WordIndex) Local sending ;Local ClipboardSave ;Send the word - sending := singlematch%WordIndex% + sending := singlematch[WordIndex] ; Update Typed Count UpdateWordCount(sending,0) SendFull(sending, StrLen(Word)) diff --git a/Source/Includes/Settings.ahk b/Source/Includes/Settings.ahk index 1a0c774..5a60f66 100644 --- a/Source/Includes/Settings.ahk +++ b/Source/Includes/Settings.ahk @@ -777,6 +777,7 @@ Save() { global InSettings ValidatePreferences() + ParseTerminatingCharacters() InitializeHotKeys() DestroyListBox() InitializeListBox() diff --git a/Source/TypingAid.ahk b/Source/TypingAid.ahk index 5807e0d..877a508 100644 --- a/Source/TypingAid.ahk +++ b/Source/TypingAid.ahk @@ -340,11 +340,12 @@ RecomputeMatches() Matches := wDB.Query("SELECT word FROM Words" . WhereQuery . OrderByQuery . " LIMIT " . LimitTotalMatches . ";") + singlematch := Object() + for each, row in Matches.Rows { number++ - singlematch := row[1] - singlematch%number% = %singlematch% + singlematch[number] := row[1] continue } @@ -606,7 +607,7 @@ CheckWord(Key) Return } - if ( ( (WordIndex + 1 - MatchStart) > ListBoxRows) || ( Match = "" ) || (singlematch%WordIndex% = "") ) ; only continue singlematch is not empty + if ( ( (WordIndex + 1 - MatchStart) > ListBoxRows) || ( Match = "" ) || (singlematch[WordIndex] = "") ) ; only continue singlematch is not empty { SendCompatible(Key,0) ProcessKey(Key,"") @@ -734,7 +735,7 @@ EvaluateUpDown(Key) Return } - IfEqual, singlematch%MatchPos%, ;only continue if singlematch is not empty + if (singlematch[MatchPos] = "") ;only continue if singlematch is not empty { SendKey(Key) MatchPos = %Number% @@ -866,10 +867,10 @@ DeleteSelectedWordFromList() { global - IfNotEqual, singlematch%MatchPos%, ;only continue if singlematch is not empty + if !(singlematch[MatchPos] = "") ;only continue if singlematch is not empty { - DeleteWordFromList(singlematch%MatchPos%) + DeleteWordFromList(singlematch[MatchPos]) RecomputeMatches() Return } @@ -916,14 +917,8 @@ ClearAllVars(ClearWord) OldCaretX= LastInput_id= } - ; Clear all singlematches - Loop, - { - IfEqual, singlematch%A_Index%, - Break - - singlematch%a_index% = - } + + singlematch = sending = key= match= From afb72c3d84f1248f5125b875509c56a7548ed258 Mon Sep 17 00:00:00 2001 From: ManiacDC Date: Mon, 9 Feb 2015 06:52:41 -0500 Subject: [PATCH 27/62] Fixed saving of: LearnMode, LearnLength, LearnCount, and ListBoxCharacterWidth --- Source/Includes/Preferences File.ahk | 13 +++++++++---- Source/Includes/Settings.ahk | 9 ++++----- 2 files changed, 13 insertions(+), 9 deletions(-) diff --git a/Source/Includes/Preferences File.ahk b/Source/Includes/Preferences File.ahk index d3fd527..47a996c 100644 --- a/Source/Includes/Preferences File.ahk +++ b/Source/Includes/Preferences File.ahk @@ -226,9 +226,14 @@ ValidatePreferences() LearnCount = 1 } + if DftLearnLength is not Integer + { + DftLearnLength := Length + 2 + } + if LearnLength is not Integer { - LearnLength := Length + 2 + LearnLength := DftLearnLength } else If ( LearnLength < ( Length + 1 ) ) { LearnLength := Length + 1 @@ -295,11 +300,11 @@ ValidatePreferences() ListBoxFontSize = 2 } + IfEqual, DftListBoxCharacterWidth, + DftListBoxCharacterWidth := Ceil(ListBoxFontSize * 0.8 ) + if ListBoxCharacterWidth is not Integer ListBoxCharacterWidth := DftListBoxCharacterWidth - - IfEqual, ListBoxCharacterWidth, - ListBoxCharacterWidth := Ceil(ListBoxFontSize * 0.8 ) If ListBoxOpacity is not Integer ListBoxOpacity := DftListBoxOpacity diff --git a/Source/Includes/Settings.ahk b/Source/Includes/Settings.ahk index 5a60f66..6e12f2e 100644 --- a/Source/Includes/Settings.ahk +++ b/Source/Includes/Settings.ahk @@ -22,7 +22,6 @@ ConstructGui() Global hExcludeProgramExecutables, hExcludeProgramTitles, hIncludeProgramExecutables, hIncludeProgramTitles, hHelperWindowProgramExecutables, hHelperWindowProgramTitles Global ListBoxCharacterWidth, ListBoxFontFixed, ListBoxFontOverride, ListBoxFontSize, ListBoxOffset, ListBoxOpacity, ListBoxRows Global hListBoxCharacterWidth, hListBoxFontFixed, hListBoxFontOverride, hListBoxFontSize, hListBoxOffset, hListBoxOpacity, hListBoxRows - Global Menu_LearnCount, Menu_LearnLength, Menu_LearnMode Global Menu_ArrowKeyMethodOptionsText, Menu_CaseCorrection, Menu_ListBoxOpacityUpDown, Menu_SendMethodOptionsCode, Menu_SendMethodC Global Menu_CtrlEnter, Menu_CtrlSpace, Menu_Enter, Menu_NumberKeys, Menu_RightArrow, Menu_Tab Global MenuAdvGuiHeight, MenuGuiWidth @@ -107,7 +106,7 @@ ConstructGui() Menu_LearnModeOptions=|On|Off| StringReplace, Menu_LearnModeOptions, Menu_LearnModeOptions, |%LearnMode%|,|%LearnMode%|| StringTrimLeft, Menu_LearnModeOptions, Menu_LearnModeOptions, 1 - Gui, MenuGui:Add, DDL, x%MenuGroup1EditX% y%MenuRowEditY% r5 vMenu_LearnMode gEditValue, %Menu_LearnModeOptions% + Gui, MenuGui:Add, DDL, x%MenuGroup1EditX% y%MenuRowEditY% r5 vLearnMode gEditValue, %Menu_LearnModeOptions% Gui, MenuGui:Font, cGreen Gui, MenuGui:Add, Text, x%MenuGroup1of3HelpX% y%MenuRowHelpY% vhLearnMode gHelpMe, %MenuGuiHelpIcon% Gui, MenuGui:Font, cBlack @@ -117,7 +116,7 @@ ConstructGui() Menu_LearnLengthOptions=|1|2|3|4|5|6|7|8|9|10|11|12|13|14|15| StringReplace, Menu_LearnLengthOptions, Menu_LearnLengthOptions, |%LearnLength%|,|%LearnLength%|| StringTrimLeft, Menu_LearnLengthOptions, Menu_LearnLengthOptions, 1 - Gui, MenuGui:Add, DDL, x%MenuGroup2of3EditX% y%MenuRowEditY% r5 vMenu_LearnLength gEditValue, %Menu_LearnLengthOptions% + Gui, MenuGui:Add, DDL, x%MenuGroup2of3EditX% y%MenuRowEditY% r5 vLearnLength gEditValue, %Menu_LearnLengthOptions% Gui, MenuGui:Font, cGreen Gui, MenuGui:Add, Text, x%MenuGroup2of3HelpX% y%MenuRowHelpY% vhLearnLength gHelpMe, %MenuGuiHelpIcon% Gui, MenuGui:Font, cBlack @@ -127,7 +126,7 @@ ConstructGui() Menu_LearnCountOptions=|1|2|3|4|5|6|7|8|9|10|11|12|13|14|15| StringReplace, Menu_LearnCountOptions, Menu_LearnCountOptions, |%LearnCount%|,|%LearnCount%|| StringTrimLeft, Menu_LearnCountOptions, Menu_LearnCountOptions, 1 - Gui, MenuGui:Add, DDL, x%MenuGroup3of3EditX% y%MenuRowEditY% r5 vMenu_LearnCount gEditValue, %Menu_LearnCountOptions% + Gui, MenuGui:Add, DDL, x%MenuGroup3of3EditX% y%MenuRowEditY% r5 vLearnCount gEditValue, %Menu_LearnCountOptions% Gui, MenuGui:Font, cGreen Gui, MenuGui:Add, Text, x%MenuGroup3of3HelpX% y%MenuRowHelpY% vhLearnCount gHelpMe, %MenuGuiHelpIcon% Gui, MenuGui:Font, cBlack @@ -697,7 +696,7 @@ Menu_ChangedPrefs["NoBackSpace"] := NoBackSpace Menu_ChangedPrefs["SendMethod"] := SendMethod Gui, MenuGui:Submit ListBoxOpacity := Menu_ListBoxOpacityUpDown -IF (Menu_RestartValues <> (Menu_LearnCount . DelimiterChar . Menu_LearnLength . DelimiterChar . Menu_LearnMode)) +IF (Menu_RestartValues <> (LearnCount . DelimiterChar . LearnLength . DelimiterChar . LearnMode)) { MsgBox, 1, Save, Saving will change Learn settings.`r`nChanging Learn settings requires a script restart. Continue? IfMsgBox, Cancel From ae9fc2c4634db36b7538280138c1be7d24fec01e Mon Sep 17 00:00:00 2001 From: ManiacDC Date: Tue, 10 Feb 2015 07:51:45 -0500 Subject: [PATCH 28/62] Fixed Restore Defaults Fixed saving Include/Exclude Programs --- Source/Includes/Preferences File.ahk | 4 ++- Source/Includes/Settings.ahk | 45 ++++++++++++++++++---------- 2 files changed, 32 insertions(+), 17 deletions(-) diff --git a/Source/Includes/Preferences File.ahk b/Source/Includes/Preferences File.ahk index 47a996c..7ad9550 100644 --- a/Source/Includes/Preferences File.ahk +++ b/Source/Includes/Preferences File.ahk @@ -162,8 +162,10 @@ ReadPreferences(RestoreDefaults = false,RestorePreferences = false) IF DftVariable { IniRead, %DftVariable%, %Defaults%, %IniSection%, %NormalVariable%, %DftValue% - IfEqual, %NormalVariable%, + IF (RestoreDefaults || %NormalVariable% == "") + { %NormalVariable% := %DftVariable% + } } } diff --git a/Source/Includes/Settings.ahk b/Source/Includes/Settings.ahk index 6e12f2e..6f84ae3 100644 --- a/Source/Includes/Settings.ahk +++ b/Source/Includes/Settings.ahk @@ -647,6 +647,11 @@ IfMsgBox Yes Return Restore: +MsgBox, 1, Restore Defaults, This will restore all settings to default. Continue? + +IfMsgBox, Cancel + return + ; If Learn settings have changed, we need to reload the script. Otherwise, we can just go through the normal save process. ReadPreferences("RestoreDefaults") IF (Menu_RestartValues <> (LearnCount . DelimiterChar . LearnLength . DelimiterChar . LearnMode)) @@ -657,17 +662,8 @@ IF (Menu_RestartValues <> (LearnCount . DelimiterChar . LearnLength . DelimiterC ReadPreferences(,"RestorePreferences") return } - try { - FileCopy, %PrefsFile%, %PrefsFile%-%A_Now%.bak, 1 - FileDelete, %PrefsFile% - } catch { - MsgBox,,Restore Defaults,Unable to back up preferences! Canceling... - ReadPreferences(,"RestorePreferences") - return - } - Reload - return -} else { + IfExist, %PrefsFile% + { try { FileCopy, %PrefsFile%, %PrefsFile%-%A_Now%.bak, 1 FileDelete, %PrefsFile% @@ -676,8 +672,27 @@ IF (Menu_RestartValues <> (LearnCount . DelimiterChar . LearnLength . DelimiterC ReadPreferences(,"RestorePreferences") return } + } + MsgBox,,Restore Defaults, Defaults have been restored. Restarting script... + Reload + return +} else { + + IfExist, %PrefsFile% + { + try { + FileCopy, %PrefsFile%, %PrefsFile%-%A_Now%.bak, 1 + FileDelete, %PrefsFile% + } catch { + MsgBox,,Restore Defaults,Unable to back up preferences! Canceling... + ReadPreferences(,"RestorePreferences") + return + } + } Save() + MsgBox,,Restore Defaults, Defaults have been restored. } +gosub, Cancel return MenuGuiGuiEscape: @@ -711,7 +726,7 @@ IF (Menu_RestartValues <> (LearnCount . DelimiterChar . LearnLength . DelimiterC SaveSettings() Save() } -Gui, MenuGui:Destroy +gosub, Cancel Return SaveSettings() @@ -781,8 +796,6 @@ Save() DestroyListBox() InitializeListBox() - InSettings := false - Menu, Tray, Enable, Settings Return } @@ -879,8 +892,8 @@ Gui, MenuGui:-Disabled ; enable main window Gui, MenuGui:Show StringReplace, MenuTitleList, MenuTitleList, `n, |, All -%MenuTitleType% := MenuTitleList -GuiControl, MenuGui:Text, %MenuTitleType%, % %MenuTitleType% +GuiControl, MenuGui:Text, %MenuTitleType%, %MenuTitleList% +Menu_ChangedPrefs[MenuTitleType] := %MenuTitleType% Return From 1b1da30167e65d60251f910810d22931e82bb836 Mon Sep 17 00:00:00 2001 From: ManiacDC Date: Thu, 12 Feb 2015 09:38:28 -0500 Subject: [PATCH 29/62] Changed Learn settings so changing them no longer requires a script restart --- Source/Includes/Settings.ahk | 128 +++++++++++++++++--------------- Source/Includes/Wordlist.ahk | 138 +++++++++++++++++------------------ Source/TypingAid.ahk | 106 +++++++++++++++------------ 3 files changed, 191 insertions(+), 181 deletions(-) diff --git a/Source/Includes/Settings.ahk b/Source/Includes/Settings.ahk index 6f84ae3..4084372 100644 --- a/Source/Includes/Settings.ahk +++ b/Source/Includes/Settings.ahk @@ -5,7 +5,7 @@ LaunchSettings: Menu, Tray, Disable, Settings InSettings := true ClearAllVars(True) -Menu_RestartValues := LearnCount . DelimiterChar . LearnLength . DelimiterChar . LearnMode +Menu_OldLearnCount := LearnCount Menu_ChangedPrefs := Object() ConstructGui() Return @@ -102,7 +102,7 @@ ConstructGui() Gui, MenuGui:Tab, 1 ; General Settings - Gui, MenuGui:Add, GroupBox, x%MenuGroup1BoxX% y%MenuRowY% w%MenuThreeColGroupWidth% h%MenuRowHeight% , Learn new words as you type* + Gui, MenuGui:Add, GroupBox, x%MenuGroup1BoxX% y%MenuRowY% w%MenuThreeColGroupWidth% h%MenuRowHeight% , Learn new words as you type Menu_LearnModeOptions=|On|Off| StringReplace, Menu_LearnModeOptions, Menu_LearnModeOptions, |%LearnMode%|,|%LearnMode%|| StringTrimLeft, Menu_LearnModeOptions, Menu_LearnModeOptions, 1 @@ -112,7 +112,7 @@ ConstructGui() Gui, MenuGui:Font, cBlack - Gui, MenuGui:Add, GroupBox, x%MenuGroup2of3BoxX% y%MenuRowY% w%MenuThreeColGroupWidth% h%MenuRowHeight% , Minimum length of word to learn* + Gui, MenuGui:Add, GroupBox, x%MenuGroup2of3BoxX% y%MenuRowY% w%MenuThreeColGroupWidth% h%MenuRowHeight% , Minimum length of word to learn Menu_LearnLengthOptions=|1|2|3|4|5|6|7|8|9|10|11|12|13|14|15| StringReplace, Menu_LearnLengthOptions, Menu_LearnLengthOptions, |%LearnLength%|,|%LearnLength%|| StringTrimLeft, Menu_LearnLengthOptions, Menu_LearnLengthOptions, 1 @@ -122,7 +122,7 @@ ConstructGui() Gui, MenuGui:Font, cBlack - Gui, MenuGui:Add, GroupBox, x%MenuGroup3of3BoxX% y%MenuRowY% w%MenuThreeColGroupWidth% h%MenuRowHeight%, Add to wordlist after X times* + Gui, MenuGui:Add, GroupBox, x%MenuGroup3of3BoxX% y%MenuRowY% w%MenuThreeColGroupWidth% h%MenuRowHeight%, Add to wordlist after X times Menu_LearnCountOptions=|1|2|3|4|5|6|7|8|9|10|11|12|13|14|15| StringReplace, Menu_LearnCountOptions, Menu_LearnCountOptions, |%LearnCount%|,|%LearnCount%|| StringTrimLeft, Menu_LearnCountOptions, Menu_LearnCountOptions, 1 @@ -278,14 +278,7 @@ ConstructGui() Gui, MenuGui:Font, cBlack ;NumPresses - ; - - MenuRowY := MenuTabHeight-20 - MenuRowHelpY := MenuRowY - MenuHelpIndentY - MenuRowEditY := MenuRowY + MenuEditIndentY - - Gui, MenuGui:Add, Text, x%MenuGroup1BoxX% y%MenuRowY% w%MenuOneColGroupWidth% , *Changing these values requires a restart of TypingAid - + ; Gui, MenuGui:Tab, 2 ; listbox --------------------------------------------------------- @@ -648,38 +641,37 @@ Return Restore: MsgBox, 1, Restore Defaults, This will restore all settings to default. Continue? - IfMsgBox, Cancel return +RestoreDefaults() +gosub, Cancel +return -; If Learn settings have changed, we need to reload the script. Otherwise, we can just go through the normal save process. -ReadPreferences("RestoreDefaults") -IF (Menu_RestartValues <> (LearnCount . DelimiterChar . LearnLength . DelimiterChar . LearnMode)) +RestoreDefaults() { - MsgBox, 1, Restore Defaults, Restoring Defaults will change Learn settings.`r`nChanging Learn settings requires a script restart. Continue? - IfMsgBox, Cancel - { - ReadPreferences(,"RestorePreferences") - return - } - IfExist, %PrefsFile% + global LearnCount + global Menu_OldLearnCount + global PrefsFile + + ReadPreferences("RestoreDefaults") + + IF ( Menu_OldLearnCount < LearnCount ) { - try { - FileCopy, %PrefsFile%, %PrefsFile%-%A_Now%.bak, 1 - FileDelete, %PrefsFile% - } catch { - MsgBox,,Restore Defaults,Unable to back up preferences! Canceling... - ReadPreferences(,"RestorePreferences") - return + MsgBox, 1, Restore Defaults, Restoring Defaults will increase the Learn Count value.`r`nThis will permanently delete any words from the Learned Words`r`nwhich have been typed less times than the new Learn Count. Continue? + IfMsgBox, Cancel + { + ReturnValue := "Cancel" } } - MsgBox,,Restore Defaults, Defaults have been restored. Restarting script... - Reload - return -} else { + + if (ReturnValue == "Cancel") + { + ReadPreferences(,"RestorePreferences") + return + } else { IfExist, %PrefsFile% - { + { try { FileCopy, %PrefsFile%, %PrefsFile%-%A_Now%.bak, 1 FileDelete, %PrefsFile% @@ -689,11 +681,13 @@ IF (Menu_RestartValues <> (LearnCount . DelimiterChar . LearnLength . DelimiterC return } } - Save() + + ApplyChanges() MsgBox,,Restore Defaults, Defaults have been restored. + } + + return } -gosub, Cancel -return MenuGuiGuiEscape: MenuGuiGuiClose: @@ -704,30 +698,40 @@ Menu, Tray, Enable, Settings Return Save: -; should only save preferences.ini if different from defaults -Menu_ChangedPrefs["ArrowKeyMethod"] := ArrowKeyMethod -Menu_ChangedPrefs["DisabledAutoCompleteKeys"] := DisabledAutoCompleteKeys -Menu_ChangedPrefs["NoBackSpace"] := NoBackSpace -Menu_ChangedPrefs["SendMethod"] := SendMethod -Gui, MenuGui:Submit -ListBoxOpacity := Menu_ListBoxOpacityUpDown -IF (Menu_RestartValues <> (LearnCount . DelimiterChar . LearnLength . DelimiterChar . LearnMode)) -{ - MsgBox, 1, Save, Saving will change Learn settings.`r`nChanging Learn settings requires a script restart. Continue? - IfMsgBox, Cancel +Save() +return + +Save() +{ + global LearnCount, ListBoxOpacity + global Menu_ChangedPrefs, Menu_ListBoxOpacityUpDown, Menu_OldLearnCount + ; should only save preferences.ini if different from defaults + Menu_ChangedPrefs["ArrowKeyMethod"] := ArrowKeyMethod + Menu_ChangedPrefs["DisabledAutoCompleteKeys"] := DisabledAutoCompleteKeys + Menu_ChangedPrefs["NoBackSpace"] := NoBackSpace + Menu_ChangedPrefs["SendMethod"] := SendMethod + Gui, MenuGui:Submit + ListBoxOpacity := Menu_ListBoxOpacityUpDown + + IF (Menu_OldLearnCount < LearnCount ) + { + MsgBox, 1, Save, Saving will increase the Learn Count value.`r`nThis will permanently delete any words from the Learned Words`r`nwhich have been typed less times than the new Learn Count. Continue? + IfMsgBox, Cancel + { + ReturnValue := "Cancel" + } + } + + If ( ReturnValue == "Cancel" ) { ReadPreferences(,"RestorePreferences") - Gui, MenuGui:Destroy - return + } else { + SaveSettings() + ApplyChanges() } - SaveSettings() - Reload -} else { - SaveSettings() - Save() + gosub, Cancel + Return } -gosub, Cancel -Return SaveSettings() { @@ -787,10 +791,14 @@ SaveSettings() SavePreferences(Menu_PrefsToSave) } -Save() +ApplyChanges() { - global InSettings + global LearnCount, Menu_LearnCount ValidatePreferences() + if ( Menu_OldLearnCount < LearnCount ) + { + CleanupWordList() + } ParseTerminatingCharacters() InitializeHotKeys() DestroyListBox() diff --git a/Source/Includes/Wordlist.ahk b/Source/Includes/Wordlist.ahk index 98db343..873abfd 100644 --- a/Source/Includes/Wordlist.ahk +++ b/Source/Includes/Wordlist.ahk @@ -60,8 +60,7 @@ ReadWordList() } } else { - wDB.Query("DELETE FROM Words WHERE count IS NULL;") - wDB.Query("DELETE FROM Words WHERE count < " . LearnCount . ";") + CleanupWordList("AllWords") } wDB.BeginTransaction() @@ -74,8 +73,7 @@ ReadWordList() IfEqual, WordlistConverted, 1 { break - } Else IfEqual, LearnMode, On - { + } Else { LearnedWordsCount=0 LegacyLearnedWords=1 ; Set Flag that we need to convert wordlist file } @@ -134,10 +132,6 @@ ReverseWordNums() Local WhereQuery - ;We don't need to deal with any counters if LearnMode is off - IfEqual, LearnMode, Off, - Return - LearnedWordsCount+= (LearnCount - 1) LearnedWordsTable := wDB.Query("SELECT word FROM Words WHERE count IS NOT NULL;") @@ -162,12 +156,12 @@ AddWordToList(AddWord,ForceCountNewOnly,ForceLearn=false) { ;AddWord = Word to add to the list ;ForceCountNewOnly = force this word to be permanently learned even if learnmode is off + ;ForceLearn = disables some checks in CheckValid global Local CharTerminateList Local AddWordInList Local CountWord Local pos - Local LearnModeTemp Local WhereQuery Local QueryResult Local CountValue @@ -176,23 +170,9 @@ AddWordToList(AddWord,ForceCountNewOnly,ForceLearn=false) Local AddWordIndex StringUpper, AddWordIndex, AddWord - - IfEqual, LearnMode, On - { - LearnModeTemp = 1 - } else { - IfEqual, ForceCountNewOnly, 1 - LearnModeTemp = 1 - } if !(CheckValid(AddWord,ForceLearn)) return - - ifequal, wordlistdone, 1 - { - IfNotEqual, LearnModeTemp, 1 - Return - } IfEqual, WordListDone, 0 ;if this is read from the wordlist { @@ -200,63 +180,61 @@ AddWordToList(AddWord,ForceCountNewOnly,ForceLearn=false) { wDB.Query("INSERT INTO words VALUES ('" . AddWordIndex . "','" . AddWord . "','" . LearnedWordsCount++ . "');") } else { - wDB.Query("INSERT INTO words (wordindexed,word) VALUES ('" . AddWordIndex . "','" . AddWord . "');") - } + wDB.Query("INSERT INTO words (wordindexed,word) VALUES ('" . AddWordIndex . "','" . AddWord . "');") + } - } else { ; If this is an on-the-fly learned word - AddWordInList := wDB.Query("SELECT * FROM words WHERE word = '" . AddWord . "';") - - IF !( AddWordInList.Count() ) ; if the word is not in the list - { + } else if (LearnMode = "On" || ForceCountNewOnly == 1) + { + ; If this is an on-the-fly learned word + AddWordInList := wDB.Query("SELECT * FROM words WHERE word = '" . AddWord . "';") + + IF !( AddWordInList.Count() ) ; if the word is not in the list + { + + IfNotEqual, ForceCountNewOnly, 1 + { + IF (StrLen(AddWord) < LearnLength) ; don't add the word if it's not longer than the minimum length for learning if we aren't force learning it + Return - IfNotEqual, ForceCountNewOnly, 1 - { - IF ( StrLen(AddWord) < LearnLength ) ; don't add the word if it's not longer than the minimum length for learning if we aren't force learning it - Return - - if AddWord contains %ForceNewWordCharacters% - Return + if AddWord contains %ForceNewWordCharacters% + Return - if AddWord contains %DoNotLearnStrings% - Return + if AddWord contains %DoNotLearnStrings% + Return - } - - IfEqual, ForceCountNewOnly, 1 + CountValue = 1 + + } else { + CountValue = %LearnCount% ;set the count to LearnCount so it gets written to the file + } + + IfEqual, LearnMode, On + { + wDB.Query("INSERT INTO words VALUES ('" . AddWordIndex . "','" . AddWord . "','" . CountValue . "');") + } else { + wDB.Query("INSERT INTO words (wordindexed,word) VALUES ('" . AddWordIndex . "','" . AddWord . "');") + } + } else { + IfEqual, LearnMode, On + { + IfEqual, ForceCountNewOnly, 1 + { + For each, row in AddWordInList.Rows { - CountValue = %LearnCount% ;set the count to LearnCount so it gets written to the file - } else { - CountValue = 1 ;set the count to one as it's the first time we typed it - } + CountValue := row[3] + break + } - IfEqual, LearnMode, On + IF ( CountValue < LearnCount ) { - wDB.Query("INSERT INTO words VALUES ('" . AddWordIndex . "','" . AddWord . "','" . CountValue . "');") - } else { - wDB.Query("INSERT INTO words (wordindexed,word) VALUES ('" . AddWordIndex . "','" . AddWord . "');") - } + wDB.QUERY("UPDATE words SET count = ('" . LearnCount . "') WHERE word = '" . AddWord . "');") + } } else { - IfEqual, LearnMode, On - { - IfEqual, ForceCountNewOnly, 1 - { - - For each, row in AddWordInList.Rows - { - CountValue := row[3] - break - } - - IF ( CountValue < LearnCount ) - { - wDB.QUERY("UPDATE words SET count = ('" . LearnCount . "') WHERE word = '" . AddWord . "');") - } - } else { - UpdateWordCount(AddWord,0) ;Increment the word count if it's already in the list and we aren't forcing it on - } - } - } + UpdateWordCount(AddWord,0) ;Increment the word count if it's already in the list and we aren't forcing it on + } } + } + } Return } @@ -341,6 +319,21 @@ UpdateWordCount(word,SortOnly) ;------------------------------------------------------------------------ +CleanupWordList(AllWords=false) +{ + global LearnCount + global wDB + QueryString := "DELETE FROM Words WHERE count < " . LearnCount + if (AllWords == "AllWords") + { + QueryString .= " OR count IS NULL" + } + QueryString .= ";" + wDB.Query(QueryString) +} + +;------------------------------------------------------------------------ + MaybeUpdateWordlist() { global @@ -355,8 +348,7 @@ MaybeUpdateWordlist() IfEqual, WordListDone, 1 { - wDB.Query("DELETE FROM Words WHERE count IS NULL;") - wDB.Query("DELETE FROM Words WHERE count < " . LearnCount . ";") + CleanupWordList("AllWords") SortWordList := wDB.Query("SELECT Word FROM Words ORDER BY count DESC;") diff --git a/Source/TypingAid.ahk b/Source/TypingAid.ahk index 877a508..e156a2e 100644 --- a/Source/TypingAid.ahk +++ b/Source/TypingAid.ahk @@ -94,24 +94,6 @@ BlockInput, Send ;Read in the WordList ReadWordList() -;Setup toggle-able hotkeys - -;Can't disable mouse buttons as we need to check to see if we have clicked the ListBox window - -EnabledKeyboardHotKeys = - -; If we disable the number keys they never get to the input for some reason, -; so we need to keep them enabled as hotkeys - -IfNotEqual, LearnMode, On -{ - Hotkey, $^+Delete, Off - ; We only want Ctrl-Shift-Delete enabled when the listbox is showing. - EnabledKeyboardHotKeys .= "$^+Delete" . DelimiterChar - - HotKey, $^+c, Off -} - InitializeHotKeys() DisableKeyboardHotKeys() @@ -323,20 +305,28 @@ RecomputeMatches() WhereQuery := " WHERE wordindexed GLOB '" . WordMatch . "*' " . SuppressMatchingWordQuery - NormalizeTable := wDB.Query("SELECT MIN(count) AS normalize FROM Words" . WhereQuery . "AND count IS NOT NULL LIMIT " . LimitTotalMatches . ";") - - for each, row in NormalizeTable.Rows + IfEqual, LearnMode, Off { - Normalize := row[1] - } + WhereQuery .= " AND count IS NULL" + OrderByQuery := " ORDER BY ROWID, Word" + } else { - IfEqual, Normalize, - { - Normalize := 0 + NormalizeTable := wDB.Query("SELECT MIN(count) AS normalize FROM Words" . WhereQuery . "AND count IS NOT NULL LIMIT " . LimitTotalMatches . ";") + + for each, row in NormalizeTable.Rows + { + Normalize := row[1] + } + + IfEqual, Normalize, + { + Normalize := 0 + } + + WordLen := StrLen(Word) + OrderByQuery := " ORDER BY CASE WHEN count IS NULL then ROWID else 'z' end, CASE WHEN count IS NOT NULL then ( (count - " . Normalize . ") * ( 1 - ( '0.75' / (LENGTH(word) - " . WordLen . ")))) end DESC, Word" } - WordLen := StrLen(Word) - OrderByQuery := " ORDER BY CASE WHEN count IS NULL then ROWID else 'z' end, CASE WHEN count IS NOT NULL then ( (count - " . Normalize . ") * ( 1 - ( '0.75' / (LENGTH(word) - " . WordLen . ")))) end DESC, Word" Matches := wDB.Query("SELECT word FROM Words" . WhereQuery . OrderByQuery . " LIMIT " . LimitTotalMatches . ";") @@ -436,6 +426,26 @@ InitializeHotKeys() global EnabledKeyboardHotKeys = + + ;Setup toggle-able hotkeys + + ;Can't disable mouse buttons as we need to check to see if we have clicked the ListBox window + + + ; If we disable the number keys they never get to the input for some reason, + ; so we need to keep them enabled as hotkeys + + IfNotEqual, LearnMode, On + { + Hotkey, $^+Delete, Off + + HotKey, $^+c, Off + } else { + HotKey, $^+c, On + Hotkey, $^+Delete, Off + ; We only want Ctrl-Shift-Delete enabled when the listbox is showing. + EnabledKeyboardHotKeys .= "$^+Delete" . DelimiterChar + } IfEqual, ArrowKeyMethod, Off { @@ -448,26 +458,26 @@ InitializeHotKeys() Hotkey, $PgUp, Off Hotkey, $PgDn, Off } else { - EnabledKeyboardHotKeys .= "$Up" . DelimiterChar - EnabledKeyboardHotKeys .= "$Down" . DelimiterChar - EnabledKeyboardHotKeys .= "$PgUp" . DelimiterChar - EnabledKeyboardHotKeys .= "$PgDn" . DelimiterChar - If DisabledAutoCompleteKeys contains E - Hotkey, $^Enter, Off - else EnabledKeyboardHotKeys .= "$^Enter" . DelimiterChar - If DisabledAutoCompleteKeys contains S - HotKey, $^Space, Off - else EnabledKeyboardHotKeys .= "$^Space" . DelimiterChar - If DisabledAutoCompleteKeys contains T - HotKey, $Tab, Off - else EnabledKeyboardHotKeys .= "$Tab" . DelimiterChar - If DisabledAutoCompleteKeys contains R - HotKey, $Right, Off - else EnabledKeyboardHotKeys .= "$Right" . DelimiterChar - If DisabledAutoCompleteKeys contains U - HotKey, $Enter, Off - else EnabledKeyboardHotKeys .= "$Enter" . DelimiterChar - } + EnabledKeyboardHotKeys .= "$Up" . DelimiterChar + EnabledKeyboardHotKeys .= "$Down" . DelimiterChar + EnabledKeyboardHotKeys .= "$PgUp" . DelimiterChar + EnabledKeyboardHotKeys .= "$PgDn" . DelimiterChar + If DisabledAutoCompleteKeys contains E + Hotkey, $^Enter, Off + else EnabledKeyboardHotKeys .= "$^Enter" . DelimiterChar + If DisabledAutoCompleteKeys contains S + HotKey, $^Space, Off + else EnabledKeyboardHotKeys .= "$^Space" . DelimiterChar + If DisabledAutoCompleteKeys contains T + HotKey, $Tab, Off + else EnabledKeyboardHotKeys .= "$Tab" . DelimiterChar + If DisabledAutoCompleteKeys contains R + HotKey, $Right, Off + else EnabledKeyboardHotKeys .= "$Right" . DelimiterChar + If DisabledAutoCompleteKeys contains U + HotKey, $Enter, Off + else EnabledKeyboardHotKeys .= "$Enter" . DelimiterChar + } ; remove last ascii 2 StringTrimRight, EnabledKeyboardHotKeys, EnabledKeyboardHotKeys, 1 From 40ac52b2a508d11f9b59b2acaf6aa0cac074890a Mon Sep 17 00:00:00 2001 From: ManiacDC Date: Fri, 13 Feb 2015 08:19:15 -0500 Subject: [PATCH 30/62] Changing the LearnCount no longer immediately truncates the wordlist. It happens upon exiting the script now. Fixed ListBoxCharacterWidth not showing up as blank in Settings Increased number of options for ListBoxOffset Fixed having length of 1 not work with ForceNewWordCharacters --- Source/Includes/ListBox.ahk | 2 +- Source/Includes/Preferences File.ahk | 16 +++++++++++++--- Source/Includes/Settings.ahk | 11 +++-------- Source/Includes/Wordlist.ahk | 16 +++++----------- Source/TypingAid.ahk | 1 - 5 files changed, 22 insertions(+), 24 deletions(-) diff --git a/Source/Includes/ListBox.ahk b/Source/Includes/ListBox.ahk index 82c01f0..dc80151 100644 --- a/Source/Includes/ListBox.ahk +++ b/Source/Includes/ListBox.ahk @@ -229,7 +229,7 @@ ShowListBox() BorderWidthX = 1 ;Use 8 pixels for each character in width - ListBoxSizeX := ListBoxCharacterWidth * MatchLongestLength + ListBoxCharacterWidth + ScrollBarWidth + (BorderWidthX *2) + ListBoxSizeX := ListBoxCharacterWidthComputed * MatchLongestLength + ListBoxCharacterWidthComputed + ScrollBarWidth + (BorderWidthX *2) ListBoxPosX := HCaretX() ; + ListBoxOffset Move ListBox down a little so as not to hide the caret. diff --git a/Source/Includes/Preferences File.ahk b/Source/Includes/Preferences File.ahk index 7ad9550..cc5a704 100644 --- a/Source/Includes/Preferences File.ahk +++ b/Source/Includes/Preferences File.ahk @@ -302,11 +302,22 @@ ValidatePreferences() ListBoxFontSize = 2 } - IfEqual, DftListBoxCharacterWidth, - DftListBoxCharacterWidth := Ceil(ListBoxFontSize * 0.8 ) + if DftListBoxCharacterWidth is not Integer + { + DftListBoxCharacterWidth = + } if ListBoxCharacterWidth is not Integer + { ListBoxCharacterWidth := DftListBoxCharacterWidth + } + + if ListBoxCharacterWidth is Integer + { + ListBoxCharacterWidthComputed := ListBoxCharacterWidth + } else { + ListBoxCharacterWidthComputed := Ceil(ListBoxFontSize * 0.8) + } If ListBoxOpacity is not Integer ListBoxOpacity := DftListBoxOpacity @@ -387,7 +398,6 @@ SavePreferences(ByRef PrefsToSave) } } - ;do stuff Return } diff --git a/Source/Includes/Settings.ahk b/Source/Includes/Settings.ahk index 4084372..869f3d9 100644 --- a/Source/Includes/Settings.ahk +++ b/Source/Includes/Settings.ahk @@ -289,7 +289,7 @@ ConstructGui() Gui, MenuGui:Add, GroupBox, x%MenuGroup1BoxX% y%MenuRowY% w%MenuThreeColGroupWidth% h%MenuRowHeight% , List appears X pixels below cursor - Menu_ListBoxOffsetOptions=|1|2|3|4|5|6|7|8|9|10|11|12|13|14|15| + Menu_ListBoxOffsetOptions=|1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20|21|22|23|24|25|26|27|28|29|30|31|32 StringReplace, Menu_ListBoxOffsetOptions, Menu_ListBoxOffsetOptions, |%ListBoxOffset%|,|%ListBoxOffset%|| StringTrimLeft, Menu_ListBoxOffsetOptions, Menu_ListBoxOffsetOptions, 1 Gui, MenuGui:Add, DDL, x%MenuGroup1EditX% y%MenuRowEditY% r5 vListBoxOffset gEditValue, %Menu_ListBoxOffsetOptions% @@ -657,7 +657,7 @@ RestoreDefaults() IF ( Menu_OldLearnCount < LearnCount ) { - MsgBox, 1, Restore Defaults, Restoring Defaults will increase the Learn Count value.`r`nThis will permanently delete any words from the Learned Words`r`nwhich have been typed less times than the new Learn Count. Continue? + MsgBox, 1, Restore Defaults, Restoring Defaults will increase the Learn Count value.`r`nWhen exiting TypingAid, this will permanently delete any words`r`nfrom the Learned Words which have been typed less times`r`nthan the new Learn Count. Continue? IfMsgBox, Cancel { ReturnValue := "Cancel" @@ -715,7 +715,7 @@ Save() IF (Menu_OldLearnCount < LearnCount ) { - MsgBox, 1, Save, Saving will increase the Learn Count value.`r`nThis will permanently delete any words from the Learned Words`r`nwhich have been typed less times than the new Learn Count. Continue? + MsgBox, 1, Save, Saving will increase the Learn Count value.`r`nWhen exiting TypingAid, this will permanently delete any words`r`nfrom the Learned Words which have been typed less times`r`nthan the new Learn Count. Continue? IfMsgBox, Cancel { ReturnValue := "Cancel" @@ -793,12 +793,7 @@ SaveSettings() ApplyChanges() { - global LearnCount, Menu_LearnCount ValidatePreferences() - if ( Menu_OldLearnCount < LearnCount ) - { - CleanupWordList() - } ParseTerminatingCharacters() InitializeHotKeys() DestroyListBox() diff --git a/Source/Includes/Wordlist.ahk b/Source/Includes/Wordlist.ahk index 873abfd..c549778 100644 --- a/Source/Includes/Wordlist.ahk +++ b/Source/Includes/Wordlist.ahk @@ -60,7 +60,7 @@ ReadWordList() } } else { - CleanupWordList("AllWords") + CleanupWordList() } wDB.BeginTransaction() @@ -205,7 +205,7 @@ AddWordToList(AddWord,ForceCountNewOnly,ForceLearn=false) CountValue = 1 } else { - CountValue = %LearnCount% ;set the count to LearnCount so it gets written to the file + CountValue := LearnCount ;set the count to LearnCount so it gets written to the file } IfEqual, LearnMode, On @@ -319,17 +319,11 @@ UpdateWordCount(word,SortOnly) ;------------------------------------------------------------------------ -CleanupWordList(AllWords=false) +CleanupWordList() { global LearnCount global wDB - QueryString := "DELETE FROM Words WHERE count < " . LearnCount - if (AllWords == "AllWords") - { - QueryString .= " OR count IS NULL" - } - QueryString .= ";" - wDB.Query(QueryString) + wDB.Query("DELETE FROM Words WHERE count < " . LearnCount . " OR count IS NULL;") } ;------------------------------------------------------------------------ @@ -348,7 +342,7 @@ MaybeUpdateWordlist() IfEqual, WordListDone, 1 { - CleanupWordList("AllWords") + CleanupWordList() SortWordList := wDB.Query("SELECT Word FROM Words ORDER BY count DESC;") diff --git a/Source/TypingAid.ahk b/Source/TypingAid.ahk index e156a2e..4edd8b1 100644 --- a/Source/TypingAid.ahk +++ b/Source/TypingAid.ahk @@ -230,7 +230,6 @@ ProcessKey(chr,EndKey) AddWordToList(Word,0) ClearAllVars(true) Word = %chr% - Return } else { Word .= chr } From 8f0690816d10d4a504047474cd80156674ead00c Mon Sep 17 00:00:00 2001 From: ManiacDC Date: Fri, 13 Feb 2015 09:37:10 -0500 Subject: [PATCH 31/62] Script title changes based on exe name --- Source/Includes/Preferences File.ahk | 26 +++++++------- Source/Includes/Settings.ahk | 52 ++++++++++++++++------------ Source/TypingAid.ahk | 18 +++++++--- 3 files changed, 56 insertions(+), 40 deletions(-) diff --git a/Source/Includes/Preferences File.ahk b/Source/Includes/Preferences File.ahk index cc5a704..7ae137a 100644 --- a/Source/Includes/Preferences File.ahk +++ b/Source/Includes/Preferences File.ahk @@ -407,26 +407,26 @@ ConstructHelpStrings() hIncludeProgramExecutables= ( -;IncludeProgramExecutables is a list of executable (.exe) files that TypingAid should be enabled for. -;If one the executables matches the current program, TypingAid is enabled for that program. +;IncludeProgramExecutables is a list of executable (.exe) files that %ScriptTitle% should be enabled for. +;If one the executables matches the current program, %ScriptTitle% is enabled for that program. ) hIncludeProgramTitles= ( -;IncludeProgramTitles is a list of strings (separated by | ) to find in the title of the window you want TypingAid enabled for. -;If one of the strings is found in the title, TypingAid is enabled for that window. +;IncludeProgramTitles is a list of strings (separated by | ) to find in the title of the window you want %ScriptTitle% enabled for. +;If one of the strings is found in the title, %ScriptTitle% is enabled for that window. ) hExcludeProgramExecutables= ( -;ExcludeProgramExecutables is a list of executable (.exe) files that TypingAid should be disabled for. -;If one the executables matches the current program, TypingAid is disabled for that program. +;ExcludeProgramExecutables is a list of executable (.exe) files that %ScriptTitle% should be disabled for. +;If one the executables matches the current program, %ScriptTitle% is disabled for that program. ) hExcludeProgramTitles= ( -;ExcludeProgramTitles is a list of strings (separated by | ) to find in the title of the window you want TypingAid disabled for. -;If one of the strings is found in the title, TypingAid is disabled for that window. +;ExcludeProgramTitles is a list of strings (separated by | ) to find in the title of the window you want %ScriptTitle% disabled for. +;If one of the strings is found in the title, %ScriptTitle% is disabled for that window. ) hLength= @@ -490,13 +490,13 @@ hDisabledAutoCompleteKeys= hDetectMouseClickMove= ( ;DetectMouseClickMove is used to detect when the cursor is moved with the mouse. -; On - TypingAid will not work when used with an On-Screen keyboard. -; Off - TypingAid will not detect when the cursor is moved within the same line using the mouse, and scrolling the text will clear the list. +; On - %ScriptTitle% will not work when used with an On-Screen keyboard. +; Off - %ScriptTitle% will not detect when the cursor is moved within the same line using the mouse, and scrolling the text will clear the list. ) hNoBackSpace= ( -;NoBackSpace is used to make TypingAid not backspace any of the previously typed characters +;NoBackSpace is used to make %ScriptTitle% not backspace any of the previously typed characters ;(ie, do not change the case of any previously typed characters). ; On - characters you have already typed will not be changed ; Off - characters you have already typed will be backspaced and replaced with the case of the word you have chosen. @@ -543,7 +543,7 @@ hTerminatingCharacters= ;For support of special characters, remove the key that is used to type the diacritic symbol (or the character) from the right hand side. ;For example, if on your keyboard layout, " is used before typing ë, ; is used to type ñ, remove them from the right hand side. ; -;After this, TypingAid can recognize the special character. The side-effect is that, it cannot complete words typed after +;After this, %ScriptTitle% can recognize the special character. The side-effect is that, it cannot complete words typed after ;the symbol, (e.g. "word... ) If you need to complete a word after a quotation mark, first type two quotation marks "" then ;press left and type the word in the middle. ; @@ -602,7 +602,7 @@ hListBoxCharacterWidth= ; 1. Changing the Font DPI in Windows ; 2. Changing the ListBoxFontFixed setting ; 3. Changing the ListBoxFontSize setting -;Leave this blank to let TypingAid try to compute the width. +;Leave this blank to let %ScriptTitle% try to compute the width. ) hListBoxOpacity= diff --git a/Source/Includes/Settings.ahk b/Source/Includes/Settings.ahk index 869f3d9..1f01e4c 100644 --- a/Source/Includes/Settings.ahk +++ b/Source/Includes/Settings.ahk @@ -1,4 +1,4 @@ -; GUI for TypingAid 2.15 configuration +; GUI for TypingAid configuration ; by HugoV / Maniac LaunchSettings: @@ -26,7 +26,7 @@ ConstructGui() Global Menu_CtrlEnter, Menu_CtrlSpace, Menu_Enter, Menu_NumberKeys, Menu_RightArrow, Menu_Tab Global MenuAdvGuiHeight, MenuGuiWidth Global Length - Global WM_SETCURSOR, WM_MOUSEMOVE + Global WM_SETCURSOR, WM_MOUSEMOVE, ScriptTitle Menu_CaseCorrection= Menu_ArrowKeyMethodOptionsText= @@ -358,7 +358,7 @@ ConstructGui() MenuRowHelpY := MenuRowY - MenuHelpIndentY MenuRowEditY := MenuRowY + MenuEditIndentY - Gui, MenuGui:Add, GroupBox, x%MenuGroup1BoxX% y%MenuRowY% w%MenuOneColGroupWidth% h%MenuRowHeight% , Window titles you want TypingAid enabled for + Gui, MenuGui:Add, GroupBox, x%MenuGroup1BoxX% y%MenuRowY% w%MenuOneColGroupWidth% h%MenuRowHeight% , Window titles you want %ScriptTitle% enabled for Gui, MenuGui:Add, Edit, x%MenuGroup1EditX% y%MenuRowEditY% w%MenuOneColEditWidthEdit% vIncludeProgramTitles gEditValue, %IncludeProgramTitles% Gui, MenuGui:Add, Button, x%MenuOneColEditButton% yp w130 gSetEnableTitles, Edit Gui, MenuGui:Font, cGreen @@ -369,7 +369,7 @@ ConstructGui() MenuRowHelpY := MenuRowY - MenuHelpIndentY MenuRowEditY := MenuRowY + MenuEditIndentY - Gui, MenuGui:Add, GroupBox, x%MenuGroup1BoxX% y%MenuRowY% w%MenuOneColGroupWidth% h%MenuRowHeight% , Window titles you want TypingAid disabled for + Gui, MenuGui:Add, GroupBox, x%MenuGroup1BoxX% y%MenuRowY% w%MenuOneColGroupWidth% h%MenuRowHeight% , Window titles you want %ScriptTitle% disabled for Gui, MenuGui:Add, Edit, x%MenuGroup1EditX% y%MenuRowEditY% w%MenuOneColEditWidthEdit% vExcludeProgramTitles gEditValue, %ExcludeProgramTitles% Gui, MenuGui:Add, Button, x%MenuOneColEditButton% yp w130 gSetDisableTitles, Edit Gui, MenuGui:Font, cGreen @@ -380,7 +380,7 @@ ConstructGui() MenuRowHelpY := MenuRowY - MenuHelpIndentY MenuRowEditY := MenuRowY + MenuEditIndentY - Gui, MenuGui:Add, GroupBox, x%MenuGroup1BoxX% y%MenuRowY% w%MenuOneColGroupWidth% h%MenuRowHeight% , Processes you want TypingAid enabled for + Gui, MenuGui:Add, GroupBox, x%MenuGroup1BoxX% y%MenuRowY% w%MenuOneColGroupWidth% h%MenuRowHeight% , Processes you want %ScriptTitle% enabled for Gui, MenuGui:Add, Edit, x%MenuGroup1EditX% y%MenuRowEditY% w%MenuOneColEditWidthEdit% vIncludeProgramExecutables gEditValue, %IncludeProgramExecutables% Gui, MenuGui:Add, Button, x%MenuOneColEditButton% yp w130 gSetEnableProcess, Edit Gui, MenuGui:Font, cGreen @@ -391,7 +391,7 @@ ConstructGui() MenuRowHelpY := MenuRowY - MenuHelpIndentY MenuRowEditY := MenuRowY + MenuEditIndentY - Gui, MenuGui:Add, GroupBox, x%MenuGroup1BoxX% y%MenuRowY% w%MenuOneColGroupWidth% h%MenuRowHeight% , Processes you want TypingAid disabled for + Gui, MenuGui:Add, GroupBox, x%MenuGroup1BoxX% y%MenuRowY% w%MenuOneColGroupWidth% h%MenuRowHeight% , Processes you want %ScriptTitle% disabled for Gui, MenuGui:Add, Edit, x%MenuGroup1EditX% y%MenuRowEditY% w%MenuOneColEditWidthEdit% vExcludeProgramExecutables gEditValue, %ExcludeProgramExecutables% Gui, MenuGui:Add, Button, x%MenuOneColEditButton% yp w130 gSetDisableProcess, Edit Gui, MenuGui:Font, cGreen @@ -458,7 +458,7 @@ ConstructGui() hIntro= ( -TypingAid is a simple, compact, and handy auto-completion utility. +%ScriptTitle% is a simple, compact, and handy auto-completion utility. It is customizable enough to be useful for regular typing and for programming. @@ -477,8 +477,8 @@ To allow for distribution of standardized preferences, a Defaults.ini may be dis Customizable features include (see also detailed description below) - * List of programs for which you want TypingAid enabled. - * List of programs for which you do not want TypingAid enabled. + * List of programs for which you want %ScriptTitle% enabled. + * List of programs for which you do not want %ScriptTitle% enabled. * Number of characters before the list of words appears. * Number of times you must press a number hotkey to select the associated word (options are 1 and 2, 2 has had minimal testing). * Enable or disable learning mode. @@ -539,17 +539,20 @@ Full (untested) for UTF-8 character set. Gui, MenuGui:Add, Button, xp+%MenuRowThreeButtonNext% yp w%MenuRowThreeButtonWidth% gRestore, Restore default Gui, MenuGui:Add, Button, xp+%MenuRowThreeButtonNext% yp w%MenuRowThreeButtonWidth% gCancel , Cancel - Gui, MenuGui:Font, cBlack bold - Gui, MenuGui:Add, Text, x%MenuGroup2of2EditX% Yp-10 gVisitForum, TypingAid - Gui, MenuGui:Font, cBlack normal - - Gui, MenuGui:Add, Text, xp+60 Yp gVisitForum, is free software, support forum at - Gui, MenuGui:Font, cGreen - Gui, MenuGui:Add, Text, x%MenuGroup2of2EditX% Yp+%MenuTextMenuRowY% gVisitForum, www.autohotkey.com (click here) - Gui, MenuGui:Font, cBlack + if (ScriptTitle == "TypingAid") + { + Gui, MenuGui:Font, cBlack bold + Gui, MenuGui:Add, Text, x%MenuGroup2of2EditX% Yp-10 gVisitForum, %ScriptTitle% + Gui, MenuGui:Font, cBlack normal + + Gui, MenuGui:Add, Text, xp+60 Yp gVisitForum, is free software, support forum at + Gui, MenuGui:Font, cGreen + Gui, MenuGui:Add, Text, x%MenuGroup2of2EditX% Yp+%MenuTextMenuRowY% gVisitForum, www.autohotkey.com (click here) + Gui, MenuGui:Font, cBlack + } Gui, Menugui:+OwnDialogs - Gui, MenuGui:Show, h%MenuGuiHeight% w%MenuGuiWidth%, TypingAid Settings + Gui, MenuGui:Show, h%MenuGuiHeight% w%MenuGuiWidth%, %ScriptTitle% Settings Return } @@ -581,6 +584,7 @@ GetList(TitleType,GetExe, ByRef ActiveList) { global MenuTitleType global InProcessList + global ScriptTitle InProcessList := true MenuTitleType := TitleType If (GetExe =1) @@ -623,7 +627,7 @@ GetList(TitleType,GetExe, ByRef ActiveList) Gui, ProcessList:Add, Text, x10 yp+170, a) Select a program or window from the list or type a name in the`n%A_Space%%A_Space%%A_Space%%A_Space%%A_Space%'Edit' control (you may need to edit it further)`nb) Click ADD to add it to the list`nc) To remove a program/title, select an item from the 'current list' and`n%A_Space%%A_Space%%A_Space%%A_Space%click DEL. Gui, ProcessList:Add, Button, x10 yp+90 w190 gSaveTitleList, Save Gui, ProcessList:Add, Button, xp+210 yp w190 gCancelTitle, Cancel - Gui, ProcessList:Show, w420 h380, TypingAid Settings + Gui, ProcessList:Show, w420 h380, %ScriptTitle% Settings Return } @@ -634,7 +638,7 @@ Gui, MenuGui:Show, h%MenuAdvGuiHeight% w%MenuGuiWidth% y%MenuGuiYPos% x%MenuGuiX Return VisitForum: -MsgBox , 36 , Visit TypingAid forum (www.autohotkey.com), Do you want to visit the TypingAid forum on www.autohotkey.com? +MsgBox , 36 , Visit %ScriptTitle% forum (www.autohotkey.com), Do you want to visit the %ScriptTitle% forum on www.autohotkey.com? IfMsgBox Yes Run, http://www.autohotkey.com/board/topic/49517-ahk-11typingaid-v2198-word-autocompletion-utility/ Return @@ -652,12 +656,13 @@ RestoreDefaults() global LearnCount global Menu_OldLearnCount global PrefsFile + global ScriptTitle ReadPreferences("RestoreDefaults") IF ( Menu_OldLearnCount < LearnCount ) { - MsgBox, 1, Restore Defaults, Restoring Defaults will increase the Learn Count value.`r`nWhen exiting TypingAid, this will permanently delete any words`r`nfrom the Learned Words which have been typed less times`r`nthan the new Learn Count. Continue? + MsgBox, 1, Restore Defaults, Restoring Defaults will increase the Learn Count value.`r`nWhen exiting %ScriptTitle%, this will permanently delete any words`r`nfrom the Learned Words which have been typed less times`r`nthan the new Learn Count. Continue? IfMsgBox, Cancel { ReturnValue := "Cancel" @@ -705,6 +710,7 @@ Save() { global LearnCount, ListBoxOpacity global Menu_ChangedPrefs, Menu_ListBoxOpacityUpDown, Menu_OldLearnCount + global ScriptTitle ; should only save preferences.ini if different from defaults Menu_ChangedPrefs["ArrowKeyMethod"] := ArrowKeyMethod Menu_ChangedPrefs["DisabledAutoCompleteKeys"] := DisabledAutoCompleteKeys @@ -715,7 +721,7 @@ Save() IF (Menu_OldLearnCount < LearnCount ) { - MsgBox, 1, Save, Saving will increase the Learn Count value.`r`nWhen exiting TypingAid, this will permanently delete any words`r`nfrom the Learned Words which have been typed less times`r`nthan the new Learn Count. Continue? + MsgBox, 1, Save, Saving will increase the Learn Count value.`r`nWhen exiting %ScriptTitle%, this will permanently delete any words`r`nfrom the Learned Words which have been typed less times`r`nthan the new Learn Count. Continue? IfMsgBox, Cancel { ReturnValue := "Cancel" @@ -821,7 +827,7 @@ Loop, Parse, %A_GuiControl%,`r`n Menu_Help .= A_LoopField . "`r`n" } } -MsgBox , 32 , TypingAid Help, %Menu_Help% +MsgBox , 32 , %ScriptTitle% Help, %Menu_Help% Menu_Help= Return diff --git a/Source/TypingAid.ahk b/Source/TypingAid.ahk index 4edd8b1..5611995 100644 --- a/Source/TypingAid.ahk +++ b/Source/TypingAid.ahk @@ -27,13 +27,14 @@ ListLines Off CoordMode, Caret, Screen CoordMode, Mouse, Screen +SplitPath, A_ScriptName,,,ScriptExtension,ScriptNoExtension, + If A_Is64bitOS { IF (A_PtrSize = 4) { IF A_IsCompiled { - SplitPath, A_ScriptName,,,ScriptExtension,ScriptNoExtension, ScriptPath64 := A_ScriptDir . "\" . ScriptNoExtension . "64." . ScriptExtension @@ -46,12 +47,19 @@ If A_Is64bitOS } } +if (SubStr(ScriptNoExtension, StrLen(ScriptNoExtension)-1, 2) == "64" ) +{ + StringTrimRight, ScriptTitle, ScriptNoExtension, 2 +} else { + ScriptTitle := ScriptNoExtension +} + ScriptExtension= ScriptNoExtension= ScriptPath64= ;; Tray menu -;Name=TypingAid v2.15 +;Name=TypingAid ; I would like to see an icon here, see also active/inactive below ;Menu, tray, NoStandard ;Menu, tray, tip, %Name% - active @@ -890,25 +898,27 @@ DeleteSelectedWordFromList() SuspendOn() { + global ScriptTitle Suspend, On If A_IsCompiled { Menu, tray, Icon, %A_ScriptName%,3,1 } else { - Menu, tray, icon, TypingAid-Inactive.ico, ,1 + Menu, tray, icon, %ScriptTitle%-Inactive.ico, ,1 } } SuspendOff() { + global ScriptTitle Suspend, Off If A_IsCompiled { Menu, tray, Icon, %A_ScriptName%,1,1 } else { - Menu, tray, icon, TypingAid-Active.ico, ,1 + Menu, tray, icon, %ScriptTitle%-Active.ico, ,1 } } From 7e6a3f26145c1f7a50cd65c5e107be09024daca2 Mon Sep 17 00:00:00 2001 From: ManiacDC Date: Fri, 13 Feb 2015 12:01:40 -0500 Subject: [PATCH 32/62] Fixed Visit Forum link not highlighting Fixed CPU issue with mouse in Settings --- Source/Includes/Settings.ahk | 25 ++++++++++++++----------- 1 file changed, 14 insertions(+), 11 deletions(-) diff --git a/Source/Includes/Settings.ahk b/Source/Includes/Settings.ahk index 1f01e4c..30112a0 100644 --- a/Source/Includes/Settings.ahk +++ b/Source/Includes/Settings.ahk @@ -24,7 +24,7 @@ ConstructGui() Global hListBoxCharacterWidth, hListBoxFontFixed, hListBoxFontOverride, hListBoxFontSize, hListBoxOffset, hListBoxOpacity, hListBoxRows Global Menu_ArrowKeyMethodOptionsText, Menu_CaseCorrection, Menu_ListBoxOpacityUpDown, Menu_SendMethodOptionsCode, Menu_SendMethodC Global Menu_CtrlEnter, Menu_CtrlSpace, Menu_Enter, Menu_NumberKeys, Menu_RightArrow, Menu_Tab - Global MenuAdvGuiHeight, MenuGuiWidth + Global MenuAdvGuiHeight, MenuGuiWidth, VisitForum Global Length Global WM_SETCURSOR, WM_MOUSEMOVE, ScriptTitle @@ -547,7 +547,8 @@ Full (untested) for UTF-8 character set. Gui, MenuGui:Add, Text, xp+60 Yp gVisitForum, is free software, support forum at Gui, MenuGui:Font, cGreen - Gui, MenuGui:Add, Text, x%MenuGroup2of2EditX% Yp+%MenuTextMenuRowY% gVisitForum, www.autohotkey.com (click here) + ;the vVisitForum variable is necessary for the link highlighting + Gui, MenuGui:Add, Text, x%MenuGroup2of2EditX% Yp+%MenuTextMenuRowY% gVisitForum vVisitForum, www.autohotkey.com (click here) Gui, MenuGui:Font, cBlack } @@ -841,10 +842,12 @@ HandleMessage( p_w, p_l, p_m, p_hw ) if ( p_m = WM_SETCURSOR ) { - if ( Help_Hover) - return, true - } - else if ( p_m = WM_MOUSEMOVE ) + if ( Help_Hover || URL_Hover) + return, true + } else if (A_GuiControl == Old_GuiControl) + { + return + } else if ( p_m = WM_MOUSEMOVE ) { if A_GuiControl in hIncludeProgramExecutables,hIncludeProgramTitles,hExcludeProgramExecutables,hExcludeProgramTitles,hLength,hNumPresses,hLearnMode,hLearnCount,hLearnLength,hArrowKeyMethod,hDisabledAutoCompleteKeys,hDetectMouseClickMove,hNoBackSpace,hAutoSpace,hSendMethod,hTerminatingCharacters,hForceNewWordCharacters,hListBoxOffset,hListBoxFontFixed,hListBoxFontOverride,hListBoxFontSize,hListBoxCharacterWidth,hListBoxOpacity,hListBoxRows,hHelperWindowProgramExecutables,hHelperWindowProgramTitles { @@ -859,11 +862,10 @@ HandleMessage( p_w, p_l, p_m, p_hw ) URL_Hover = Gui, Font, cBlue ;;; xyz GuiControl, Font, %A_GuiControl% ;;; xyz - Old_GuiControl = %A_GuiControl% } } else if (A_GuiControl = "VisitForum") { - if !(URLHover) + if !(URL_Hover) { IF !(h_cursor_hand) { @@ -874,7 +876,6 @@ HandleMessage( p_w, p_l, p_m, p_hw ) Help_Hover = Gui, Font, cBlue ;;; xyz GuiControl, Font, %A_GuiControl% ;;; xyz - Old_GuiControl = %A_GuiControl% } } else if (Help_Hover || URL_Hover) @@ -889,8 +890,10 @@ HandleMessage( p_w, p_l, p_m, p_hw ) IF !(h_old_cursor) { h_old_cursor := old_cursor - } - } + } + + Old_GuiControl := A_GuiControl + } } SaveTitleList: From 96e7e3b0838837ec0d3022bb3c25dbec550cb172 Mon Sep 17 00:00:00 2001 From: ManiacDC Date: Thu, 19 Feb 2015 08:36:19 -0500 Subject: [PATCH 33/62] Set ScriptTitle to TypingAid if "TypingAid" is anywhere in the script name. --- Source/TypingAid.ahk | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/Source/TypingAid.ahk b/Source/TypingAid.ahk index 5611995..4fc021c 100644 --- a/Source/TypingAid.ahk +++ b/Source/TypingAid.ahk @@ -54,6 +54,11 @@ if (SubStr(ScriptNoExtension, StrLen(ScriptNoExtension)-1, 2) == "64" ) ScriptTitle := ScriptNoExtension } +if (InStr(ScriptTitle, "TypingAid")) +{ + ScriptTitle = TypingAid +} + ScriptExtension= ScriptNoExtension= ScriptPath64= From 003490b91368e407ecb6812f1228a3bd8c270a08 Mon Sep 17 00:00:00 2001 From: ManiacDC Date: Mon, 23 Feb 2015 06:42:05 -0500 Subject: [PATCH 34/62] Added 2 missing options, DoNotLearnStrings and SuppressMatchingWord --- Source/Includes/Settings.ahk | 30 +++++++++++++++++++++++++----- 1 file changed, 25 insertions(+), 5 deletions(-) diff --git a/Source/Includes/Settings.ahk b/Source/Includes/Settings.ahk index 30112a0..78dec8d 100644 --- a/Source/Includes/Settings.ahk +++ b/Source/Includes/Settings.ahk @@ -12,12 +12,12 @@ Return ConstructGui() { - Global ArrowKeyMethod, AutoSpace, DetectMouseClickMove, DisabledAutoCompleteKeys - Global hArrowKeyMethod, hAutoSpace, hDetectMouseClickMove, hDisabledAutoCompleteKeys + Global ArrowKeyMethod, AutoSpace, DetectMouseClickMove, DisabledAutoCompleteKeys, DoNotLearnStrings + Global hArrowKeyMethod, hAutoSpace, hDetectMouseClickMove, hDisabledAutoCompleteKeys, hDoNotLearnStrings Global ForceNewWordCharacters, LearnCount, LearnLength, LearnMode, Length Global hForceNewWordCharacters, hLearnCount, hLearnLength, hLearnMode, hLength - Global NoBackSpace, SendMethod, TerminatingCharacters - Global hNoBackSpace, hSendMethod, hTerminatingCharacters + Global NoBackSpace, SendMethod, SuppressMatchingWord, TerminatingCharacters + Global hNoBackSpace, hSendMethod, hSuppressMatchingWord, hTerminatingCharacters Global ExcludeProgramExecutables, ExcludeProgramTitles, IncludeProgramExecutables, IncludeProgramTitles, HelperWindowProgramExecutables, HelperWindowProgramTitles Global hExcludeProgramExecutables, hExcludeProgramTitles, hIncludeProgramExecutables, hIncludeProgramTitles, hHelperWindowProgramExecutables, hHelperWindowProgramTitles Global ListBoxCharacterWidth, ListBoxFontFixed, ListBoxFontOverride, ListBoxFontSize, ListBoxOffset, ListBoxOpacity, ListBoxRows @@ -276,6 +276,26 @@ ConstructGui() Gui, MenuGui:Font, cGreen Gui, MenuGui:Add, Text, x%MenuGroup3of3HelpX% y%MenuRowHelpY% vhAutoSpace gHelpMe, %MenuGuiHelpIcon% Gui, MenuGui:Font, cBlack + + + MenuRowY := MenuRowY + MenuRowHeight + MenuSeparatorY + MenuRowHelpY := MenuRowY - MenuHelpIndentY + MenuRowEditY := MenuRowY + MenuEditIndentY + + Gui, MenuGui:Add, GroupBox, x%MenuGroup1BoxX% y%MenuRowY% w%MenuTwoColGroupWidth% h%MenuRowHeight% , Sub-strings to not learn + Gui, MenuGui:Add, Edit, x%MenuGroup1EditX% y%MenuRowEditY% w%MenuTwoColEditWidth% vDoNotLearnStrings Password gEditValue, %DoNotLearnStrings% + Gui, MenuGui:Font, cGreen + Gui, MenuGui:Add, Text, x%MenuGroup1of2HelpX% y%MenuRowHelpY% vhDoNotLearnStrings gHelpMe, %MenuGuiHelpIcon% + Gui, MenuGui:Font, cBlack + + Gui, MenuGui:Add, GroupBox, x%MenuGroup2of2BoxX% y%MenuRowY% w%MenuTwoColGroupWidth% h%MenuRowHeight% , Suppress matching word + Menu_SuppressMatchingWordOptions=|On|Off| + StringReplace, Menu_SuppressMatchingWordOptions, Menu_SuppressMatchingWordOptions, |%SuppressMatchingWord%|,|%SuppressMatchingWord%|| + StringTrimLeft, Menu_SuppressMatchingWordOptions, Menu_SuppressMatchingWordOptions, 1 + Gui, MenuGui:Add, DDL, x%MenuGroup2of2EditX% y%MenuRowEditY% w%MenuTwoColEditWidth% vSuppressMatchingWord gEditValue, %Menu_SuppressMatchingWordOptions% + Gui, MenuGui:Font, cGreen + Gui, MenuGui:Add, Text, x%MenuGroup2of2HelpX% y%MenuRowHelpY% vhSuppressMatchingWord gHelpMe, %MenuGuiHelpIcon% + Gui, MenuGui:Font, cBlack ;NumPresses ; @@ -849,7 +869,7 @@ HandleMessage( p_w, p_l, p_m, p_hw ) return } else if ( p_m = WM_MOUSEMOVE ) { - if A_GuiControl in hIncludeProgramExecutables,hIncludeProgramTitles,hExcludeProgramExecutables,hExcludeProgramTitles,hLength,hNumPresses,hLearnMode,hLearnCount,hLearnLength,hArrowKeyMethod,hDisabledAutoCompleteKeys,hDetectMouseClickMove,hNoBackSpace,hAutoSpace,hSendMethod,hTerminatingCharacters,hForceNewWordCharacters,hListBoxOffset,hListBoxFontFixed,hListBoxFontOverride,hListBoxFontSize,hListBoxCharacterWidth,hListBoxOpacity,hListBoxRows,hHelperWindowProgramExecutables,hHelperWindowProgramTitles + if ( SubStr(A_GuiControl, 1, 1) == "h" ) { if !(Help_Hover) { From 6dbd4f3471dd7d80d8bddb169f70e615b8954c1b Mon Sep 17 00:00:00 2001 From: ManiacDC Date: Mon, 23 Feb 2015 07:33:47 -0500 Subject: [PATCH 35/62] Fixed help string variable names to be more unique --- Source/Includes/Preferences File.ahk | 70 ++++++++++++++-------------- Source/Includes/Settings.ahk | 66 +++++++++++++------------- 2 files changed, 68 insertions(+), 68 deletions(-) diff --git a/Source/Includes/Preferences File.ahk b/Source/Includes/Preferences File.ahk index 7ae137a..f06473a 100644 --- a/Source/Includes/Preferences File.ahk +++ b/Source/Includes/Preferences File.ahk @@ -405,65 +405,65 @@ ConstructHelpStrings() { global -hIncludeProgramExecutables= +helpinfo_IncludeProgramExecutables= ( ;IncludeProgramExecutables is a list of executable (.exe) files that %ScriptTitle% should be enabled for. ;If one the executables matches the current program, %ScriptTitle% is enabled for that program. ) -hIncludeProgramTitles= +helpinfo_IncludeProgramTitles= ( ;IncludeProgramTitles is a list of strings (separated by | ) to find in the title of the window you want %ScriptTitle% enabled for. ;If one of the strings is found in the title, %ScriptTitle% is enabled for that window. ) -hExcludeProgramExecutables= +helpinfo_ExcludeProgramExecutables= ( ;ExcludeProgramExecutables is a list of executable (.exe) files that %ScriptTitle% should be disabled for. ;If one the executables matches the current program, %ScriptTitle% is disabled for that program. ) -hExcludeProgramTitles= +helpinfo_ExcludeProgramTitles= ( ;ExcludeProgramTitles is a list of strings (separated by | ) to find in the title of the window you want %ScriptTitle% disabled for. ;If one of the strings is found in the title, %ScriptTitle% is disabled for that window. ) -hLength= +helpinfo_Length= ( ;Length is the minimum number of characters that need to be typed before the program shows a List of words. ;Generally, the higher this number the better the performance will be. ;For example, if you need to autocomplete "as soon as possible" in the word list, set this to 2, type 'as' and a list will appear. ) -hNumPresses= +helpinfo_NumPresses= ( ;NumPresses is the number of times the number hotkey must be tapped for the word to be selected, either 1 or 2. ) -hLearnMode= +helpinfo_LearnMode= ( ;LearnMode defines whether or not the script should learn new words as you type them, either On or Off. ) -hLearnCount= +helpinfo_LearnCount= ( ;LearnCount defines the number of times you have to type a word within a single session for it to be learned permanently. ) -hLearnLength= +helpinfo_LearnLength= ( ;LearnLength is the minimum number of characters in a word for it to be learned. This must be at least Length+1. ) -hDoNotLearnStrings= +helpinfo_DoNotLearnStrings= ( ;DoNotLearnStrings is a comma separated list of strings. Any words which contain any of these strings will not be learned. ;This can be used to prevent the program from learning passwords or other critical information. ;For example, if you have ord98 in DoNotLearnStrings, password987 will not be learned. ) -hArrowKeyMethod= +helpinfo_ArrowKeyMethod= ( ;ArrowKeyMethod is the way the arrow keys are handled when a list is shown. ;Options are: @@ -473,7 +473,7 @@ hArrowKeyMethod= ; LastPosition - maintains the selection cursor's position ) -hDisabledAutoCompleteKeys= +helpinfo_DisabledAutoCompleteKeys= ( ;DisabledAutoCompleteKeys is used to disable certain hotkeys from autocompleting the selected item in the list. ;Place the character listed for each key you want to disable in the list. @@ -487,14 +487,14 @@ hDisabledAutoCompleteKeys= ; U = Enter ) -hDetectMouseClickMove= +helpinfo_DetectMouseClickMove= ( ;DetectMouseClickMove is used to detect when the cursor is moved with the mouse. ; On - %ScriptTitle% will not work when used with an On-Screen keyboard. ; Off - %ScriptTitle% will not detect when the cursor is moved within the same line using the mouse, and scrolling the text will clear the list. ) -hNoBackSpace= +helpinfo_NoBackSpace= ( ;NoBackSpace is used to make %ScriptTitle% not backspace any of the previously typed characters ;(ie, do not change the case of any previously typed characters). @@ -502,14 +502,14 @@ hNoBackSpace= ; Off - characters you have already typed will be backspaced and replaced with the case of the word you have chosen. ) -hAutoSpace= +helpinfo_AutoSpace= ( ;AutoSpace is used to automatically add a space to the end of an autocompleted word. ; On - Add a space to the end of the autocompleted word. ; Off - Do not add a space to the end of the autocompleted word. ) -hSuppressMatchingWord= +helpinfo_SuppressMatchingWord= ( ;SuppressMatchingWord is used to suppress a word from the Word list if it matches the typed word. ; If NoBackspace=On, then the match is case in-sensitive. @@ -518,7 +518,7 @@ hSuppressMatchingWord= ; Off - Do not suppress matching words from the word list. ) -hSendMethod= +helpinfo_SendMethod= ( ;SendMethod is used to change the way the program sends the keys to the screen, this is included for compatibility reasons. ;Try changing this only when you encounter a problem with key sending during autocompletion. @@ -534,7 +534,7 @@ hSendMethod= ; 4C = Alternate method. ) -hTerminatingCharacters= +helpinfo_TerminatingCharacters= ( ;TerminatingCharacters is a list of characters (EndKey) which will signal the program that you are done typing a word. ;You probably need to change this only when you want to recognize and type accented (diacritic) or Unicode characters @@ -562,7 +562,7 @@ hTerminatingCharacters= ; http://www.autohotkey.com/docs/commands/Input.htm ) -hForceNewWordCharacters= +helpinfo_ForceNewWordCharacters= ( ;ForceNewWordCharacters is a comma separated list of characters which forces the program to start a new word whenever ;one of those characters is typed. Any words which begin with one of these characters will never be learned (even @@ -572,29 +572,29 @@ hForceNewWordCharacters= ; ex: ForceNewWordCharacters=@,:,# ) -hListBoxOffset= +helpinfo_ListBoxOffset= ( ;ListBoxOffset is the number of pixels below the top of the caret (vertical blinking line) to display the list. ) -hListBoxFontFixed= +helpinfo_ListBoxFontFixed= ( ;ListBoxFontFixed controls whether a fixed or variable character font width is used. ;(ie, in fixed width, "i" and "w" take the same number of pixels) ) -hListBoxFontOverride= +helpinfo_ListBoxFontOverride= ( ;ListBoxFontOverride is used to specify a font for the List Box to use. The default for Fixed is Courier, ;and the default for Variable is Tahoma. ) -hListBoxFontSize= +helpinfo_ListBoxFontSize= ( ;ListBoxFontSize controls the size of the font in the list. ) -hListBoxCharacterWidth= +helpinfo_ListBoxCharacterWidth= ( ;ListBoxCharacterWidth is the width (in pixels) of one character in the List Box. ;This number should only need to be changed if the box containing the list is not the correct width. @@ -605,42 +605,42 @@ hListBoxCharacterWidth= ;Leave this blank to let %ScriptTitle% try to compute the width. ) -hListBoxOpacity= +helpinfo_ListBoxOpacity= ( ;ListBoxOpacity is how transparent (see-through) the ListBox should be. Use a value of 255 to make it so the ;ListBox is fully Opaque, or use a value of 0 to make it so the ListBox cannot be seen at all. ) -hListBoxRows= +helpinfo_ListBoxRows= ( ;ListBoxRows is the maximum number of rows to show in the ListBox. This value can range from 3 to 30. ) -hHelperWindowProgramExecutables= +helpinfo_HelperWindowProgramExecutables= ( ;HelperWindowProgramExecutables is a list of executable (.exe) files that the HelperWindow should be automatically enabled for. ;If one the executables matches the current program, the HelperWindow will pop up automatically for that program. ) -hHelperWindowProgramTitles= +helpinfo_HelperWindowProgramTitles= ( ;HelperWindowProgramTitles is a list of strings (separated by | ) to find in the title of the window that the HelperWindow should be automatically enabled for. ;If one of the strings is found in the title, the HelperWindow will pop up automatically for that program. ) -hFullHelpString = +helpinfo_FullHelpString = ( -%hIncludeProgramExecutables% `r`n`r`n %hIncludeProgramTitles% `r`n`r`n %hExcludeProgramExecutables% `r`n`r`n %hExcludeProgramTitles% +%helpinfo_IncludeProgramExecutables% `r`n`r`n %helpinfo_IncludeProgramTitles% `r`n`r`n %helpinfo_ExcludeProgramExecutables% `r`n`r`n %helpinfo_ExcludeProgramTitles% -%hLength% `r`n`r`n %hNumPresses% `r`n`r`n %hLearnMode% `r`n`r`n %hLearnCount% `r`n`r`n %hLearnLength% `r`n`r`n %hDoNotLearnStrings% +%helpinfo_Length% `r`n`r`n %helpinfo_NumPresses% `r`n`r`n %helpinfo_LearnMode% `r`n`r`n %helpinfo_LearnCount% `r`n`r`n %helpinfo_LearnLength% `r`n`r`n %helpinfo_DoNotLearnStrings% -%hArrowKeyMethod% `r`n`r`n %hDisabledAutoCompleteKeys% `r`n`r`n %hDetectMouseClickMove% `r`n`r`n %hNoBackSpace% `r`n`r`n %hAutoSpace% +%helpinfo_ArrowKeyMethod% `r`n`r`n %helpinfo_DisabledAutoCompleteKeys% `r`n`r`n %helpinfo_DetectMouseClickMove% `r`n`r`n %helpinfo_NoBackSpace% `r`n`r`n %helpinfo_AutoSpace% -%hSuppressMatchingWord% `r`n`r`n %hSendMethod% `r`n`r`n %hTerminatingCharacters% `r`n`r`n %hForceNewWordCharacters% `r`n`r`n %hListBoxOffset% +%helpinfo_SuppressMatchingWord% `r`n`r`n %helpinfo_SendMethod% `r`n`r`n %helpinfo_TerminatingCharacters% `r`n`r`n %helpinfo_ForceNewWordCharacters% `r`n`r`n %helpinfo_ListBoxOffset% -%hListBoxFontFixed% `r`n`r`n %hListBoxFontOverride% `r`n`r`n %hListBoxFontSize% `r`n`r`n %hListBoxCharacterWidth% `r`n`r`n %hListBoxOpacity% +%helpinfo_ListBoxFontFixed% `r`n`r`n %helpinfo_ListBoxFontOverride% `r`n`r`n %helpinfo_ListBoxFontSize% `r`n`r`n %helpinfo_ListBoxCharacterWidth% `r`n`r`n %helpinfo_ListBoxOpacity% -%hListBoxRows% `r`n`r`n %hHelperWindowProgramExecutables% `r`n`r`n %hHelperWindowProgramTitles% +%helpinfo_ListBoxRows% `r`n`r`n %helpinfo_HelperWindowProgramExecutables% `r`n`r`n %helpinfo_HelperWindowProgramTitles% ) } diff --git a/Source/Includes/Settings.ahk b/Source/Includes/Settings.ahk index 78dec8d..9504548 100644 --- a/Source/Includes/Settings.ahk +++ b/Source/Includes/Settings.ahk @@ -13,15 +13,15 @@ Return ConstructGui() { Global ArrowKeyMethod, AutoSpace, DetectMouseClickMove, DisabledAutoCompleteKeys, DoNotLearnStrings - Global hArrowKeyMethod, hAutoSpace, hDetectMouseClickMove, hDisabledAutoCompleteKeys, hDoNotLearnStrings + Global helpinfo_ArrowKeyMethod, helpinfo_AutoSpace, helpinfo_DetectMouseClickMove, helpinfo_DisabledAutoCompleteKeys, helpinfo_DoNotLearnStrings Global ForceNewWordCharacters, LearnCount, LearnLength, LearnMode, Length - Global hForceNewWordCharacters, hLearnCount, hLearnLength, hLearnMode, hLength + Global helpinfo_ForceNewWordCharacters, helpinfo_LearnCount, helpinfo_LearnLength, helpinfo_LearnMode, helpinfo_Length Global NoBackSpace, SendMethod, SuppressMatchingWord, TerminatingCharacters - Global hNoBackSpace, hSendMethod, hSuppressMatchingWord, hTerminatingCharacters + Global helpinfo_NoBackSpace, helpinfo_SendMethod, helpinfo_SuppressMatchingWord, helpinfo_TerminatingCharacters Global ExcludeProgramExecutables, ExcludeProgramTitles, IncludeProgramExecutables, IncludeProgramTitles, HelperWindowProgramExecutables, HelperWindowProgramTitles - Global hExcludeProgramExecutables, hExcludeProgramTitles, hIncludeProgramExecutables, hIncludeProgramTitles, hHelperWindowProgramExecutables, hHelperWindowProgramTitles + Global helpinfo_ExcludeProgramExecutables, helpinfo_ExcludeProgramTitles, helpinfo_IncludeProgramExecutables, helpinfo_IncludeProgramTitles, helpinfo_HelperWindowProgramExecutables, helpinfo_HelperWindowProgramTitles Global ListBoxCharacterWidth, ListBoxFontFixed, ListBoxFontOverride, ListBoxFontSize, ListBoxOffset, ListBoxOpacity, ListBoxRows - Global hListBoxCharacterWidth, hListBoxFontFixed, hListBoxFontOverride, hListBoxFontSize, hListBoxOffset, hListBoxOpacity, hListBoxRows + Global helpinfo_ListBoxCharacterWidth, helpinfo_ListBoxFontFixed, helpinfo_ListBoxFontOverride, helpinfo_ListBoxFontSize, helpinfo_ListBoxOffset, helpinfo_ListBoxOpacity, helpinfo_ListBoxRows Global Menu_ArrowKeyMethodOptionsText, Menu_CaseCorrection, Menu_ListBoxOpacityUpDown, Menu_SendMethodOptionsCode, Menu_SendMethodC Global Menu_CtrlEnter, Menu_CtrlSpace, Menu_Enter, Menu_NumberKeys, Menu_RightArrow, Menu_Tab Global MenuAdvGuiHeight, MenuGuiWidth, VisitForum @@ -108,7 +108,7 @@ ConstructGui() StringTrimLeft, Menu_LearnModeOptions, Menu_LearnModeOptions, 1 Gui, MenuGui:Add, DDL, x%MenuGroup1EditX% y%MenuRowEditY% r5 vLearnMode gEditValue, %Menu_LearnModeOptions% Gui, MenuGui:Font, cGreen - Gui, MenuGui:Add, Text, x%MenuGroup1of3HelpX% y%MenuRowHelpY% vhLearnMode gHelpMe, %MenuGuiHelpIcon% + Gui, MenuGui:Add, Text, x%MenuGroup1of3HelpX% y%MenuRowHelpY% vhelpinfo_LearnMode gHelpMe, %MenuGuiHelpIcon% Gui, MenuGui:Font, cBlack @@ -118,7 +118,7 @@ ConstructGui() StringTrimLeft, Menu_LearnLengthOptions, Menu_LearnLengthOptions, 1 Gui, MenuGui:Add, DDL, x%MenuGroup2of3EditX% y%MenuRowEditY% r5 vLearnLength gEditValue, %Menu_LearnLengthOptions% Gui, MenuGui:Font, cGreen - Gui, MenuGui:Add, Text, x%MenuGroup2of3HelpX% y%MenuRowHelpY% vhLearnLength gHelpMe, %MenuGuiHelpIcon% + Gui, MenuGui:Add, Text, x%MenuGroup2of3HelpX% y%MenuRowHelpY% vhelpinfo_LearnLength gHelpMe, %MenuGuiHelpIcon% Gui, MenuGui:Font, cBlack @@ -128,7 +128,7 @@ ConstructGui() StringTrimLeft, Menu_LearnCountOptions, Menu_LearnCountOptions, 1 Gui, MenuGui:Add, DDL, x%MenuGroup3of3EditX% y%MenuRowEditY% r5 vLearnCount gEditValue, %Menu_LearnCountOptions% Gui, MenuGui:Font, cGreen - Gui, MenuGui:Add, Text, x%MenuGroup3of3HelpX% y%MenuRowHelpY% vhLearnCount gHelpMe, %MenuGuiHelpIcon% + Gui, MenuGui:Add, Text, x%MenuGroup3of3HelpX% y%MenuRowHelpY% vhelpinfo_LearnCount gHelpMe, %MenuGuiHelpIcon% Gui, MenuGui:Font, cBlack @@ -142,7 +142,7 @@ ConstructGui() StringTrimLeft, Menu_ListBoxRowsOptions, Menu_ListBoxRowsOptions, 1 Gui, MenuGui:Add, DDL, x%MenuGroup1EditX% y%MenuRowEditY% r5 vListBoxRows gEditValue, %Menu_ListBoxRowsOptions% Gui, MenuGui:Font, cGreen - Gui, MenuGui:Add, Text, x%MenuGroup1of3HelpX% y%MenuRowHelpY% vhListBoxRows gHelpMe, %MenuGuiHelpIcon% + Gui, MenuGui:Add, Text, x%MenuGroup1of3HelpX% y%MenuRowHelpY% vhelpinfo_ListBoxRows gHelpMe, %MenuGuiHelpIcon% Gui, MenuGui:Font, cBlack Gui, MenuGui:Add, GroupBox, x%MenuGroup2of3BoxX% y%MenuRowY% w%MenuThreeColGroupWidth% h%MenuRowHeight% , Show wordlist after X characters @@ -151,7 +151,7 @@ ConstructGui() StringTrimLeft, Menu_LengthOptions, Menu_LengthOptions, 1 Gui, MenuGui:Add, DDL, x%MenuGroup2of3EditX% y%MenuRowEditY% r5 vLength gEditValue, %Menu_LengthOptions% Gui, MenuGui:Font, cGreen - Gui, MenuGui:Add, Text, x%MenuGroup2of3HelpX% y%MenuRowHelpY% vhLength gHelpMe, %MenuGuiHelpIcon% + Gui, MenuGui:Add, Text, x%MenuGroup2of3HelpX% y%MenuRowHelpY% vhelpinfo_Length gHelpMe, %MenuGuiHelpIcon% Gui, MenuGui:Font, cBlack @@ -172,7 +172,7 @@ ConstructGui() } Gui, MenuGui:Add, DDL, x%MenuGroup3of3EditX% y%MenuRowEditY% w%MenuThreeColEditWidth% r5 vMenu_SendMethodC gEditValue altsubmit, %Menu_SendMethodOptions% Gui, MenuGui:Font, cGreen - Gui, MenuGui:Add, Text, x%MenuGroup3of3HelpX% y%MenuRowHelpY% vhSendMethod gHelpMe, %MenuGuiHelpIcon% + Gui, MenuGui:Add, Text, x%MenuGroup3of3HelpX% y%MenuRowHelpY% vhelpinfo_SendMethod gHelpMe, %MenuGuiHelpIcon% Gui, MenuGui:Font, cBlack @@ -218,7 +218,7 @@ ConstructGui() Gui, MenuGui:Add, Checkbox, xp%MenuCheckmarkIndent% yp vMenu_Enter gEditValue %Menu_CheckedU%, Enter Gui, MenuGui:Font, cGreen - Gui, MenuGui:Add, Text, x%MenuGroup1of2HelpX% y%MenuRowHelpY% vhDisabledAutoCompleteKeys gHelpMe, %MenuGuiHelpIcon% + Gui, MenuGui:Add, Text, x%MenuGroup1of2HelpX% y%MenuRowHelpY% vhelpinfo_DisabledAutoCompleteKeys gHelpMe, %MenuGuiHelpIcon% Gui, MenuGui:Font, cBlack @@ -237,7 +237,7 @@ ConstructGui() Gui, MenuGui:Add, DDL, x%MenuGroup2of2EditX% y%MenuRowEditY% w%MenuTwoColEditWidth% r5 vArrowKeyMethod gEditValue altsubmit, %Menu_ArrowKeyMethodOptions% Gui, MenuGui:Font, cGreen - Gui, MenuGui:Add, Text, x%MenuGroup2of2HelpX% y%MenuRowHelpY% vhArrowKeyMethod gHelpMe, %MenuGuiHelpIcon% + Gui, MenuGui:Add, Text, x%MenuGroup2of2HelpX% y%MenuRowHelpY% vhelpinfo_ArrowKeyMethod gHelpMe, %MenuGuiHelpIcon% Gui, MenuGui:Font, cBlack @@ -255,7 +255,7 @@ ConstructGui() StringTrimLeft, Menu_CaseCorrectionOptions, Menu_CaseCorrectionOptions, 1 Gui, MenuGui:Add, DDL, x%MenuGroup1EditX% y%MenuRowEditY% r5 vMenu_CaseCorrection gEditValue, %Menu_CaseCorrectionOptions% Gui, MenuGui:Font, cGreen - Gui, MenuGui:Add, Text, x%MenuGroup1of3HelpX% y%MenuRowHelpY% vhNoBackSpace gHelpMe, %MenuGuiHelpIcon% + Gui, MenuGui:Add, Text, x%MenuGroup1of3HelpX% y%MenuRowHelpY% vhelpinfo_NoBackSpace gHelpMe, %MenuGuiHelpIcon% Gui, MenuGui:Font, cBlack @@ -265,7 +265,7 @@ ConstructGui() StringTrimLeft, Menu_DetectMouseClickMoveOptions, Menu_DetectMouseClickMoveOptions, 1 Gui, MenuGui:Add, DDL, x%MenuGroup2of3EditX% y%MenuRowEditY% r5 vDetectMouseClickMove gEditValue, %Menu_DetectMouseClickMoveOptions% Gui, MenuGui:Font, cGreen - Gui, MenuGui:Add, Text, x%MenuGroup2of3HelpX% y%MenuRowHelpY% vhDetectMouseClickMove gHelpMe, %MenuGuiHelpIcon% + Gui, MenuGui:Add, Text, x%MenuGroup2of3HelpX% y%MenuRowHelpY% vhelpinfo_DetectMouseClickMove gHelpMe, %MenuGuiHelpIcon% Gui, MenuGui:Font, cBlack Gui, MenuGui:Add, GroupBox, x%MenuGroup3of3BoxX% y%MenuRowY% w%MenuThreeColGroupWidth% h%MenuRowHeight% , Type space after autcomplete @@ -274,7 +274,7 @@ ConstructGui() StringTrimLeft, Menu_AutoSpaceOptions, Menu_AutoSpaceOptions, 1 Gui, MenuGui:Add, DDL, x%MenuGroup3of3EditX% y%MenuRowEditY% r5 vAutoSpace gEditValue, %Menu_AutoSpaceOptions% Gui, MenuGui:Font, cGreen - Gui, MenuGui:Add, Text, x%MenuGroup3of3HelpX% y%MenuRowHelpY% vhAutoSpace gHelpMe, %MenuGuiHelpIcon% + Gui, MenuGui:Add, Text, x%MenuGroup3of3HelpX% y%MenuRowHelpY% vhelpinfo_AutoSpace gHelpMe, %MenuGuiHelpIcon% Gui, MenuGui:Font, cBlack @@ -285,7 +285,7 @@ ConstructGui() Gui, MenuGui:Add, GroupBox, x%MenuGroup1BoxX% y%MenuRowY% w%MenuTwoColGroupWidth% h%MenuRowHeight% , Sub-strings to not learn Gui, MenuGui:Add, Edit, x%MenuGroup1EditX% y%MenuRowEditY% w%MenuTwoColEditWidth% vDoNotLearnStrings Password gEditValue, %DoNotLearnStrings% Gui, MenuGui:Font, cGreen - Gui, MenuGui:Add, Text, x%MenuGroup1of2HelpX% y%MenuRowHelpY% vhDoNotLearnStrings gHelpMe, %MenuGuiHelpIcon% + Gui, MenuGui:Add, Text, x%MenuGroup1of2HelpX% y%MenuRowHelpY% vhelpinfo_DoNotLearnStrings gHelpMe, %MenuGuiHelpIcon% Gui, MenuGui:Font, cBlack Gui, MenuGui:Add, GroupBox, x%MenuGroup2of2BoxX% y%MenuRowY% w%MenuTwoColGroupWidth% h%MenuRowHeight% , Suppress matching word @@ -294,7 +294,7 @@ ConstructGui() StringTrimLeft, Menu_SuppressMatchingWordOptions, Menu_SuppressMatchingWordOptions, 1 Gui, MenuGui:Add, DDL, x%MenuGroup2of2EditX% y%MenuRowEditY% w%MenuTwoColEditWidth% vSuppressMatchingWord gEditValue, %Menu_SuppressMatchingWordOptions% Gui, MenuGui:Font, cGreen - Gui, MenuGui:Add, Text, x%MenuGroup2of2HelpX% y%MenuRowHelpY% vhSuppressMatchingWord gHelpMe, %MenuGuiHelpIcon% + Gui, MenuGui:Add, Text, x%MenuGroup2of2HelpX% y%MenuRowHelpY% vhelpinfo_SuppressMatchingWord gHelpMe, %MenuGuiHelpIcon% Gui, MenuGui:Font, cBlack ;NumPresses @@ -314,7 +314,7 @@ ConstructGui() StringTrimLeft, Menu_ListBoxOffsetOptions, Menu_ListBoxOffsetOptions, 1 Gui, MenuGui:Add, DDL, x%MenuGroup1EditX% y%MenuRowEditY% r5 vListBoxOffset gEditValue, %Menu_ListBoxOffsetOptions% Gui, MenuGui:Font, cGreen - Gui, MenuGui:Add, Text, x%MenuGroup1of3HelpX% y%MenuRowHelpY% vhListBoxOffset gHelpMe, %MenuGuiHelpIcon% + Gui, MenuGui:Add, Text, x%MenuGroup1of3HelpX% y%MenuRowHelpY% vhelpinfo_ListBoxOffset gHelpMe, %MenuGuiHelpIcon% Gui, MenuGui:Font, cBlack Gui, MenuGui:Add, GroupBox, x%MenuGroup2of3BoxX% y%MenuRowY% w%MenuThreeColGroupWidth% h%MenuRowHeight% , Fixed width font in list @@ -323,7 +323,7 @@ ConstructGui() StringTrimLeft, Menu_ListBoxFontFixedOptions, Menu_ListBoxFontFixedOptions, 1 Gui, MenuGui:Add, DDL, x%MenuGroup2of3EditX% y%MenuRowEditY% r5 vListBoxFontFixed gEditValue, %Menu_ListBoxFontFixedOptions% Gui, MenuGui:Font, cGreen - Gui, MenuGui:Add, Text, x%MenuGroup2of3HelpX% y%MenuRowHelpY% vhListBoxFontFixed gHelpMe, %MenuGuiHelpIcon% + Gui, MenuGui:Add, Text, x%MenuGroup2of3HelpX% y%MenuRowHelpY% vhelpinfo_ListBoxFontFixed gHelpMe, %MenuGuiHelpIcon% Gui, MenuGui:Font, cBlack Gui, MenuGui:Add, GroupBox, x%MenuGroup3of3BoxX% y%MenuRowY% w%MenuThreeColGroupWidth% h%MenuRowHeight% , Font size in list @@ -332,7 +332,7 @@ ConstructGui() StringTrimLeft, Menu_ListBoxFontSizeOptions, Menu_ListBoxFontSizeOptions, 1 Gui, MenuGui:Add, DDL, x%MenuGroup3of3EditX% y%MenuRowEditY% r5 vListBoxFontSize gEditValue, %Menu_ListBoxFontSizeOptions% Gui, MenuGui:Font, cGreen - Gui, MenuGui:Add, Text, x%MenuGroup3of3HelpX% y%MenuRowHelpY% vhListBoxFontSize gHelpMe, %MenuGuiHelpIcon% + Gui, MenuGui:Add, Text, x%MenuGroup3of3HelpX% y%MenuRowHelpY% vhelpinfo_ListBoxFontSize gHelpMe, %MenuGuiHelpIcon% Gui, MenuGui:Font, cBlack MenuRowY := MenuRowY + MenuRowHeight + MenuSeparatorY @@ -344,7 +344,7 @@ ConstructGui() Gui, MenuGui:Add, Edit, xp+10 yp+20 w%MenuThreeColEditWidth% vListBoxOpacity gEditValue, %ListBoxOpacity% Gui, MenuGui:Add, UpDown, xp+10 yp+20 w%MenuThreeColEditWidth% vMenu_ListBoxOpacityUpDown Range0-255, %ListBoxOpacity% Gui, MenuGui:Font, cGreen - Gui, MenuGui:Add, Text, x%MenuGroup1of3HelpX% y%MenuRowHelpY% vhListBoxOpacity gHelpMe, %MenuGuiHelpIcon% + Gui, MenuGui:Add, Text, x%MenuGroup1of3HelpX% y%MenuRowHelpY% vhelpinfo_ListBoxOpacity gHelpMe, %MenuGuiHelpIcon% Gui, MenuGui:Font, cBlack Gui, MenuGui:Add, GroupBox, x%MenuGroup2of3BoxX% y%MenuRowY% w%MenuThreeColGroupWidth% h%MenuRowHeight% , List character width override @@ -353,7 +353,7 @@ ConstructGui() StringTrimLeft, Menu_ListBoxCharacterWidthOptions, Menu_ListBoxCharacterWidthOptions, 1 Gui, MenuGui:Add, DDL, x%MenuGroup2of3EditX% y%MenuRowEditY% r5 vListBoxCharacterWidth gEditValue, %Menu_ListBoxCharacterWidthOptions% Gui, MenuGui:Font, cGreen - Gui, MenuGui:Add, Text, x%MenuGroup2of3HelpX% y%MenuRowHelpY% vhListBoxCharacterWidth gHelpMe, %MenuGuiHelpIcon% + Gui, MenuGui:Add, Text, x%MenuGroup2of3HelpX% y%MenuRowHelpY% vhelpinfo_ListBoxCharacterWidth gHelpMe, %MenuGuiHelpIcon% Gui, MenuGui:Font, cBlack Gui, MenuGui:Add, GroupBox, x%MenuGroup3of3BoxX% y%MenuRowY% w%MenuThreeColGroupWidth% h%MenuRowHeight% , List font @@ -363,7 +363,7 @@ ConstructGui() StringReplace, MenuFontList, MenuFontList, |%ListBoxFontOverride%|, |%ListBoxFontOverride%|| Gui, MenuGui:Add, DDL, x%MenuGroup3of3EditX% y%MenuRowEditY% r10 w200 vListBoxFontOverride gEditValue, %MenuFontList% Gui, MenuGui:Font, cGreen - Gui, MenuGui:Add, Text, x%MenuGroup3of3HelpX% y%MenuRowHelpY% vhListBoxFontOverride gHelpMe, %MenuGuiHelpIcon% + Gui, MenuGui:Add, Text, x%MenuGroup3of3HelpX% y%MenuRowHelpY% vhelpinfo_ListBoxFontOverride gHelpMe, %MenuGuiHelpIcon% Gui, MenuGui:Font, cBlack MenuRowY := MenuRowY + MenuRowHeight + MenuSeparatorY @@ -382,7 +382,7 @@ ConstructGui() Gui, MenuGui:Add, Edit, x%MenuGroup1EditX% y%MenuRowEditY% w%MenuOneColEditWidthEdit% vIncludeProgramTitles gEditValue, %IncludeProgramTitles% Gui, MenuGui:Add, Button, x%MenuOneColEditButton% yp w130 gSetEnableTitles, Edit Gui, MenuGui:Font, cGreen - Gui, MenuGui:Add, Text, x%MenuGroup1of1HelpX% y%MenuRowHelpY% vhIncludeProgramTitles gHelpMe, %MenuGuiHelpIcon% + Gui, MenuGui:Add, Text, x%MenuGroup1of1HelpX% y%MenuRowHelpY% vhelpinfo_IncludeProgramTitles gHelpMe, %MenuGuiHelpIcon% Gui, MenuGui:Font, cBlack MenuRowY := MenuRowY + MenuRowHeight + MenuSeparatorY @@ -393,7 +393,7 @@ ConstructGui() Gui, MenuGui:Add, Edit, x%MenuGroup1EditX% y%MenuRowEditY% w%MenuOneColEditWidthEdit% vExcludeProgramTitles gEditValue, %ExcludeProgramTitles% Gui, MenuGui:Add, Button, x%MenuOneColEditButton% yp w130 gSetDisableTitles, Edit Gui, MenuGui:Font, cGreen - Gui, MenuGui:Add, Text, x%MenuGroup1of1HelpX% y%MenuRowHelpY% vhExcludeProgramTitles gHelpMe, %MenuGuiHelpIcon% + Gui, MenuGui:Add, Text, x%MenuGroup1of1HelpX% y%MenuRowHelpY% vhelpinfo_ExcludeProgramTitles gHelpMe, %MenuGuiHelpIcon% Gui, MenuGui:Font, cBlack MenuRowY := MenuRowY + MenuRowHeight + MenuSeparatorY @@ -404,7 +404,7 @@ ConstructGui() Gui, MenuGui:Add, Edit, x%MenuGroup1EditX% y%MenuRowEditY% w%MenuOneColEditWidthEdit% vIncludeProgramExecutables gEditValue, %IncludeProgramExecutables% Gui, MenuGui:Add, Button, x%MenuOneColEditButton% yp w130 gSetEnableProcess, Edit Gui, MenuGui:Font, cGreen - Gui, MenuGui:Add, Text, x%MenuGroup1of1HelpX% y%MenuRowHelpY% vhIncludeProgramExecutables gHelpMe, %MenuGuiHelpIcon% + Gui, MenuGui:Add, Text, x%MenuGroup1of1HelpX% y%MenuRowHelpY% vhelpinfo_IncludeProgramExecutables gHelpMe, %MenuGuiHelpIcon% Gui, MenuGui:Font, cBlack MenuRowY := MenuRowY + MenuRowHeight + MenuSeparatorY @@ -415,7 +415,7 @@ ConstructGui() Gui, MenuGui:Add, Edit, x%MenuGroup1EditX% y%MenuRowEditY% w%MenuOneColEditWidthEdit% vExcludeProgramExecutables gEditValue, %ExcludeProgramExecutables% Gui, MenuGui:Add, Button, x%MenuOneColEditButton% yp w130 gSetDisableProcess, Edit Gui, MenuGui:Font, cGreen - Gui, MenuGui:Add, Text, x%MenuGroup1of1HelpX% y%MenuRowHelpY% vhExcludeProgramExecutables gHelpMe, %MenuGuiHelpIcon% + Gui, MenuGui:Add, Text, x%MenuGroup1of1HelpX% y%MenuRowHelpY% vhelpinfo_ExcludeProgramExecutables gHelpMe, %MenuGuiHelpIcon% Gui, MenuGui:Font, cBlack MenuRowY := MenuRowY + MenuRowHeight + MenuSeparatorY @@ -428,7 +428,7 @@ ConstructGui() Gui, MenuGui:Add, Edit, x%MenuGroup1EditX% y%MenuRowEditY% w%MenuOneColEditWidthEdit% vHelperWindowProgramTitles gEditValue, %HelperWindowProgramTitles% Gui, MenuGui:Add, Button, x%MenuOneColEditButton% yp w130 gSetHelpTitles, Edit Gui, MenuGui:Font, cGreen - Gui, MenuGui:Add, Text, x%MenuGroup1of1HelpX% y%MenuRowHelpY% vhHelperWindowProgramTitles gHelpMe, %MenuGuiHelpIcon% + Gui, MenuGui:Add, Text, x%MenuGroup1of1HelpX% y%MenuRowHelpY% vhelpinfo_HelperWindowProgramTitles gHelpMe, %MenuGuiHelpIcon% Gui, MenuGui:Font, cBlack MenuRowY := MenuRowY + MenuRowHeight + MenuSeparatorY @@ -441,7 +441,7 @@ ConstructGui() Gui, MenuGui:Add, Edit, x%MenuGroup1EditX% y%MenuRowEditY% w%MenuOneColEditWidthEdit% vHelperWindowProgramExecutables gEditValue, %HelperWindowProgramExecutables% Gui, MenuGui:Add, Button, x%MenuOneColEditButton% yp w130 gSetHelpProcess, Edit Gui, MenuGui:Font, cGreen - Gui, MenuGui:Add, Text, x%MenuGroup1of1HelpX% y%MenuRowHelpY% vhHelperWindowProgramExecutables gHelpMe, %MenuGuiHelpIcon% + Gui, MenuGui:Add, Text, x%MenuGroup1of1HelpX% y%MenuRowHelpY% vhelpinfo_HelperWindowProgramExecutables gHelpMe, %MenuGuiHelpIcon% Gui, MenuGui:Font, cBlack @@ -455,7 +455,7 @@ ConstructGui() Gui, MenuGui:Add, GroupBox, x%MenuGroup1BoxX% y%MenuRowY% w%MenuOneColGroupWidth% h%MenuRowHeight% , Terminating Characters (see http://www.autohotkey.com/docs/KeyList.htm) Gui, MenuGui:Add, Edit, x%MenuGroup1EditX% y%MenuRowEditY% w%MenuOneColEditWidth% vTerminatingCharacters gEditValue, %TerminatingCharacters% Gui, MenuGui:Font, cGreen - Gui, MenuGui:Add, Text, x%MenuGroup1of1HelpX% y%MenuRowHelpY% vhTerminatingCharacters gHelpMe, %MenuGuiHelpIcon% + Gui, MenuGui:Add, Text, x%MenuGroup1of1HelpX% y%MenuRowHelpY% vhelpinfo_TerminatingCharacters gHelpMe, %MenuGuiHelpIcon% Gui, MenuGui:Font, cBlack MenuRowY := MenuRowY + MenuRowHeight + MenuSeparatorY @@ -465,7 +465,7 @@ ConstructGui() Gui, MenuGui:Add, GroupBox, x%MenuGroup1BoxX% y%MenuRowY% w%MenuOneColGroupWidth% h%MenuRowHeight% , Force New Word Characters (comma separated) Gui, MenuGui:Add, Edit, x%MenuGroup1EditX% y%MenuRowEditY% w%MenuOneColEditWidth% vForceNewWordCharacters gEditValue, %ForceNewWordCharacters% Gui, MenuGui:Font, cGreen - Gui, MenuGui:Add, Text, x%MenuGroup1of1HelpX% y%MenuRowHelpY% vhForceNewWordCharacters gHelpMe, %MenuGuiHelpIcon% + Gui, MenuGui:Add, Text, x%MenuGroup1of1HelpX% y%MenuRowHelpY% vhelpinfo_ForceNewWordCharacters gHelpMe, %MenuGuiHelpIcon% Gui, MenuGui:Font, cBlack @@ -869,7 +869,7 @@ HandleMessage( p_w, p_l, p_m, p_hw ) return } else if ( p_m = WM_MOUSEMOVE ) { - if ( SubStr(A_GuiControl, 1, 1) == "h" ) + if ( SubStr(A_GuiControl, 1, 9) == "helpinfo_" ) { if !(Help_Hover) { From f66b72626afb0772619138c214de8cf13b47c926 Mon Sep 17 00:00:00 2001 From: ManiacDC Date: Wed, 25 Feb 2015 07:55:46 -0500 Subject: [PATCH 36/62] Tray menu changes --- Source/TypingAid.ahk | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/Source/TypingAid.ahk b/Source/TypingAid.ahk index 4fc021c..ca9bcb0 100644 --- a/Source/TypingAid.ahk +++ b/Source/TypingAid.ahk @@ -77,9 +77,13 @@ ScriptPath64= Menu, Tray, NoStandard Menu, Tray, add, Settings, Configuration -Menu, Tray, Standard -;Initialize Tray Icon +IF !(A_IsCompiled) +{ + Menu, Tray, Standard +} SuspendOn() +Menu, Tray, Default, Settings +;Initialize Tray Icon Menu, Tray, Icon @@ -905,6 +909,7 @@ SuspendOn() { global ScriptTitle Suspend, On + Menu, Tray, Tip, %ScriptTitle% - Inactive If A_IsCompiled { Menu, tray, Icon, %A_ScriptName%,3,1 @@ -918,6 +923,7 @@ SuspendOff() { global ScriptTitle Suspend, Off + Menu, Tray, Tip, %ScriptTitle% - Active If A_IsCompiled { Menu, tray, Icon, %A_ScriptName%,1,1 From a3af0a25d88e520831814d19857d966d5d220346 Mon Sep 17 00:00:00 2001 From: ManiacDC Date: Wed, 25 Feb 2015 09:26:41 -0500 Subject: [PATCH 37/62] Preliminary use of window hooking rather than timer to check for change in active window Added Pause/Resume buttons --- Source/Includes/Window.ahk | 48 +++++++++++++++++++++++-- Source/TypingAid.ahk | 73 +++++++++++++++++++++++++------------- 2 files changed, 94 insertions(+), 27 deletions(-) diff --git a/Source/Includes/Window.ahk b/Source/Includes/Window.ahk index 2d99244..5ea2b79 100644 --- a/Source/Includes/Window.ahk +++ b/Source/Includes/Window.ahk @@ -1,8 +1,50 @@ ;These functions and labels are related to the active window +EnableWinHook() +{ + global WinChangedEventHook + global WinChangedCallback + ; Set a hook to check for a changed window + If !(WinChangedEventHook) + { + DllCall("CoInitializeEx", Ptr, 0, Uint, 0) + WinChangedEventHook := DllCall("SetWinEventHook", Uint, 0x0003, Uint, 0x0003, Ptr, 0, Uint, WinChangedCallback, Uint, 0, Uint, 0, Uint, 0x0002) + + if !(WinChangedEventHook) + { + MsgBox, Failed to register Event Hook! + ExitApp + } + } + + Return +} -; Timed function to detect change of focus (and remove ListBox when changing active window) -Winchanged: +DisableWinHook() +{ + global WinChangedEventHook + + if (WinChangedEventHook) + { + if (DllCall("UnhookWinEvent", Uint, WinChangedEventHook)) + { + DllCall("CoUninitialize") + WinChangedEventHook = + } + } + return +} + +; Hook function to detect change of focus (and remove ListBox when changing active window) +WinChanged(hWinEventHook, event, wchwnd, idObject, idChild, dwEventThread, dwmsEventTime) +{ + global DetectMouseClickMove + global OldCaretY + + If (event <> 3) + { + return + } IF ( ReturnWinActive() ) { @@ -21,6 +63,8 @@ Winchanged: GetIncludedActiveWindow() } Return +} + ;------------------------------------------------------------------------ diff --git a/Source/TypingAid.ahk b/Source/TypingAid.ahk index ca9bcb0..275329d 100644 --- a/Source/TypingAid.ahk +++ b/Source/TypingAid.ahk @@ -63,29 +63,8 @@ ScriptExtension= ScriptNoExtension= ScriptPath64= -;; Tray menu -;Name=TypingAid -; I would like to see an icon here, see also active/inactive below -;Menu, tray, NoStandard -;Menu, tray, tip, %Name% - active -;Menu, tray, add, Restart, Restart -;Menu, tray, add, Edit Wordlist, EditWordList -;Menu, tray, add, Settings, Configuration -;Menu, tray, add, Pause %Name%, PauseProgram -;Menu, tray, add, Exit, SaveScript -; End Tray menu - -Menu, Tray, NoStandard -Menu, Tray, add, Settings, Configuration -IF !(A_IsCompiled) -{ - Menu, Tray, Standard -} SuspendOn() -Menu, Tray, Default, Settings -;Initialize Tray Icon -Menu, Tray, Icon - +BuildTrayMenu("Running") OnExit, SaveScript @@ -118,8 +97,15 @@ DisableKeyboardHotKeys() ;Find the ID of the window we are using GetIncludedActiveWindow() -; Set a timer to check for a changed window -SetTimer, Winchanged, 100 +WinChangedCallback := RegisterCallback("WinChanged") + +if !(WinChangedCallback) +{ + MsgBox, Failed to register callback function + ExitApp +} + +EnableWinHook() ;Change the Running performance speed (Priority changed to High in GetIncludedActiveWindow) SetBatchLines, -1 @@ -935,6 +921,29 @@ SuspendOff() ;------------------------------------------------------------------------ +BuildTrayMenu(State) +{ + + Menu, Tray, DeleteAll + Menu, Tray, NoStandard + Menu, Tray, add, Settings, Configuration + if (State == "Running") + { + Menu, Tray, add, Pause, PauseScript + } else { + Menu, Tray, add, Resume, ResumeScript + } + IF !(A_IsCompiled) + { + Menu, Tray, Standard + } + Menu, Tray, Default, Settings + ;Initialize Tray Icon + Menu, Tray, Icon +} + +;------------------------------------------------------------------------ + ; This is to blank all vars related to matches, ListBox and (optionally) word ClearAllVars(ClearWord) { @@ -1028,9 +1037,23 @@ MaybeFixFileEncoding(File,Encoding) Configuration: GoSub, LaunchSettings Return + +PauseScript: +DisableWinHook() +SuspendOn() +BuildTrayMenu("Paused") +Pause, On, 1 +Return + + +ResumeScript: +Pause, Off +EnableWinHook() +GetIncludedActiveWindow() +BuildTrayMenu("Running") +Return SaveScript: - ; Close the ListBox if it's open CloseListBox() From 55f05273cb34a82248f042a38d4914cd6452e2a4 Mon Sep 17 00:00:00 2001 From: ManiacDC Date: Wed, 25 Feb 2015 10:02:12 -0500 Subject: [PATCH 38/62] Disable the WinEventHook when not in an active window --- Source/Includes/Window.ahk | 17 ++++++++++++++--- Source/TypingAid.ahk | 7 +++---- 2 files changed, 17 insertions(+), 7 deletions(-) diff --git a/Source/Includes/Window.ahk b/Source/Includes/Window.ahk index 5ea2b79..0509f3f 100644 --- a/Source/Includes/Window.ahk +++ b/Source/Includes/Window.ahk @@ -30,6 +30,9 @@ DisableWinHook() { DllCall("CoUninitialize") WinChangedEventHook = + } else { + MsgBox, Failed to Unhook WinEvent! + ExitApp } } return @@ -68,7 +71,14 @@ WinChanged(hWinEventHook, event, wchwnd, idObject, idChild, dwEventThread, dwmsE ;------------------------------------------------------------------------ +; Wrapper function to ensure we always enable the WinEventHook after waiting for an active window GetIncludedActiveWindow() +{ + GetIncludedActiveWindowGuts() + EnableWinHook() +} + +GetIncludedActiveWindowGuts() { global Active_id global Active_Title @@ -93,12 +103,12 @@ GetIncludedActiveWindow() Return } - ;Force unload of Keyboard Hook + ;Force unload of Keyboard Hook and WinEventHook Input SuspendOn() CloseListBox() MaybeSaveHelperWindowPos() - ;Wait for an active window, then check again + DisableWinHook() ;Wait for any window to be active WinWaitActive, , , , ZZZYouWillNeverFindThisStringInAWindowTitleZZZ Continue @@ -109,11 +119,12 @@ GetIncludedActiveWindow() Break If CheckForActive(ActiveProcess,ActiveTitle) Break - ;Force unload of Keyboard Hook + ;Force unload of Keyboard Hook and WinEventHook Input SuspendOn() CloseListBox() MaybeSaveHelperWindowPos() + DisableWinHook() SetTitleMatchMode, 3 ; set the title match mode to exact so we can detect a window title change WinWaitNotActive, %ActiveTitle% ahk_id %ActiveId% SetTitleMatchMode, 2 diff --git a/Source/TypingAid.ahk b/Source/TypingAid.ahk index 275329d..3bdb913 100644 --- a/Source/TypingAid.ahk +++ b/Source/TypingAid.ahk @@ -93,9 +93,6 @@ ReadWordList() InitializeHotKeys() DisableKeyboardHotKeys() - -;Find the ID of the window we are using -GetIncludedActiveWindow() WinChangedCallback := RegisterCallback("WinChanged") @@ -106,6 +103,9 @@ if !(WinChangedCallback) } EnableWinHook() + +;Find the ID of the window we are using +GetIncludedActiveWindow() ;Change the Running performance speed (Priority changed to High in GetIncludedActiveWindow) SetBatchLines, -1 @@ -1049,7 +1049,6 @@ Return ResumeScript: Pause, Off EnableWinHook() -GetIncludedActiveWindow() BuildTrayMenu("Running") Return From de627dc8420ffd1c2ab49d3dde447042d898d271 Mon Sep 17 00:00:00 2001 From: ManiacDC Date: Mon, 2 Mar 2015 06:44:25 -0500 Subject: [PATCH 39/62] Minor cosmetic changes --- Source/Includes/Window.ahk | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/Source/Includes/Window.ahk b/Source/Includes/Window.ahk index 0509f3f..e4b024d 100644 --- a/Source/Includes/Window.ahk +++ b/Source/Includes/Window.ahk @@ -97,11 +97,13 @@ GetIncludedActiveWindowGuts() IfEqual, ActiveId, { IfNotEqual, MouseWin_ID, + { IfEqual, MouseWin_ID, %ListBox_ID% { WinActivate, ahk_id %Active_id% Return } + } ;Force unload of Keyboard Hook and WinEventHook Input @@ -126,6 +128,7 @@ GetIncludedActiveWindowGuts() MaybeSaveHelperWindowPos() DisableWinHook() SetTitleMatchMode, 3 ; set the title match mode to exact so we can detect a window title change + ; Wait for the current window to no longer be active WinWaitNotActive, %ActiveTitle% ahk_id %ActiveId% SetTitleMatchMode, 2 ActiveId = @@ -133,7 +136,7 @@ GetIncludedActiveWindowGuts() ActiveProcess = } - IfEqual, ActiveID, %ListBox_ID% + IfEqual, ActiveId, %ListBox_ID% { Active_id := ActiveId Active_Title := ActiveTitle From b4b649efdeaedcdab9fb9d47226e10d5bde3be15 Mon Sep 17 00:00:00 2001 From: ManiacDC Date: Mon, 2 Mar 2015 10:00:42 -0500 Subject: [PATCH 40/62] Fixed bug when editing programs (saving sub-gui, then re-entering sub-gui caused it to be blank) Fixed scope on a whole lot of functions (more to do) --- Source/Includes/ListBox.ahk | 68 +++++++++----- Source/Includes/Preferences File.ahk | 11 ++- Source/Includes/Sending.ahk | 5 +- Source/Includes/Settings.ahk | 136 ++++++++++++++++----------- Source/Includes/Wordlist.ahk | 61 +++++------- Source/TypingAid.ahk | 20 ++-- 6 files changed, 172 insertions(+), 129 deletions(-) diff --git a/Source/Includes/ListBox.ahk b/Source/Includes/ListBox.ahk index dc80151..9e91bc7 100644 --- a/Source/Includes/ListBox.ahk +++ b/Source/Includes/ListBox.ahk @@ -64,7 +64,11 @@ DestroyListBox() SavePriorMatchPosition() { - global + global ArrowKeyMethod + global MatchPos + global OldMatch + global OldMatchStart + global singlematch IfNotEqual, MatchPos, { @@ -75,8 +79,8 @@ SavePriorMatchPosition() } else { IfEqual, ArrowKeyMethod, LastPosition { - OldMatch = %MatchPos% - OldMatchStart = %MatchStart% + OldMatch := MatchPos + OldMatchStart := MatchStart } else { OldMatch = OldMatchStart = @@ -93,7 +97,14 @@ SavePriorMatchPosition() SetupMatchPosition() { - global + global ArrowKeyMethod + global ListBoxRows + global MatchPos + global MatchStart + global Number + global OldMatch + global OldMatchStart + global singlematch IfEqual, OldMatch, { @@ -116,9 +127,9 @@ SetupMatchPosition() MatchStart := Number - (ListBoxRows - 1) IfLess, MatchStart, 1 MatchStart = 1 - MatchPos = %Number% + MatchPos := Number } else { - MatchStart = %OldMatchStart% + MatchStart := OldMatchStart If ( MatchStart > (Number - (ListBoxRows - 1) )) { MatchStart := Number - (ListBoxRows - 1) @@ -130,24 +141,24 @@ SetupMatchPosition() } else IfEqual, ArrowKeyMethod, LastWord { - Pos = + ListPosition = Loop, %Number% { if ( OldMatch == singlematch[A_Index] ) { - Pos := A_Index + ListPosition := A_Index Break } } - IfEqual, pos, + IfEqual, ListPosition, { MatchPos = 1 MatchStart = 1 } Else { - MatchStart := Pos - (ListBoxRows - 1) + MatchStart := ListPosition - (ListBoxRows - 1) IfLess, MatchStart, 1 MatchStart = 1 - MatchPos := Pos + MatchPos := ListPosition } } else { MatchPos = 1 @@ -161,24 +172,31 @@ SetupMatchPosition() RebuildMatchList() { - global - match = + global Match + global MatchLongestLength + global Number + global singlematch + + Match = MatchLongestLength = - Local CurrentLength + Loop, %Number% { CurrentLength := AddToMatchList(A_Index,singlematch[A_Index]) IfGreater, CurrentLength, %MatchLongestLength% MatchLongestLength := CurrentLength } - StringTrimRight, match, match, 1 ; Get rid of the last linefeed + StringTrimRight, Match, Match, 1 ; Get rid of the last linefeed Return } AddToMatchList(position,value) { - global - Local prefix + global DelimiterChar + global Match + global MatchStart + global NumKeyMethod + IfEqual, NumKeyMethod, Off prefix = else { @@ -190,7 +208,7 @@ AddToMatchList(position,value) else prefix := Mod(position - MatchStart +1,10) . " " } } - match .= prefix . value . DelimiterChar + Match .= prefix . value . DelimiterChar Return, StrLen("8 " . value) } @@ -203,16 +221,16 @@ ShowListBox() IfNotEqual, Match, { - Local ListBoxSizeX - Local ListBoxPosY - Local ListBoxPosX - Local Rows - Local ScrollBarWidth + Local BorderWidthX Local ListBoxActualSize Local ListBoxActualSizeH Local ListBoxActualSizeW - Local BorderWidthX + Local ListBoxPosX + Local ListBoxPosY + Local ListBoxSizeX Local MatchEnd + Local Rows + Local ScrollBarWidth Rows := GetRows() @@ -241,7 +259,7 @@ ShowListBox() { GuiControl, ListBoxGui: -Redraw, ListBox%A_Index% GuiControl, ListBoxGui: Move, ListBox%A_Index%, w%ListBoxSizeX% - GuiControl, ListBoxGui: ,ListBox%A_Index%, %DelimiterChar%%match% + GuiControl, ListBoxGui: ,ListBox%A_Index%, %DelimiterChar%%Match% MatchEnd := MatchStart + (ListBoxRows - 1) IfNotEqual, MatchPos, { diff --git a/Source/Includes/Preferences File.ahk b/Source/Includes/Preferences File.ahk index f06473a..81645a0 100644 --- a/Source/Includes/Preferences File.ahk +++ b/Source/Includes/Preferences File.ahk @@ -2,7 +2,8 @@ MaybeWriteHelperWindowPos() { - global + global XY + global XYSaved ;Update the Helper Window Position IfEqual, XYSaved, 1 { @@ -201,7 +202,13 @@ ReadPreferences(RestoreDefaults = false,RestorePreferences = false) ValidatePreferences() { - global + global ArrowKeyMethod, DisabledAutoCompleteKeys, ListBoxCharacterWidthComputed, NumKeyMethod + global AutoSpace, DetectMouseClickMove, LearnCount, LearnLength, LearnMode, Length + global DftAutoSpace, DftDetectMouseClickMove, DftLearnCount, DftLearnLength, DftLearnMode, DftLength + global ListBoxCharacterWidth, ListBoxFontFixed, ListBoxFontSize, ListBoxOffset, ListBoxOpacity, ListBoxRows + global DftListBoxCharacterWidth, DftListBoxFontFixed, DftListBoxFontSize, DftListBoxOffset, DftListBoxOpacity, DftListBoxRows + global NoBackSpace, NumPresses, SendMethod, SuppressMatchingWord, TerminatingCharacters + global DftNoBackSpace, DftNumPresses, DftSendMethod, DftSuppressMatchingWord, DftTerminatingCharacters if Length is not integer { diff --git a/Source/Includes/Sending.ahk b/Source/Includes/Sending.ahk index 29316ee..227de62 100644 --- a/Source/Includes/Sending.ahk +++ b/Source/Includes/Sending.ahk @@ -21,9 +21,8 @@ SendKey(Key) SendWord(WordIndex) { - global - Local sending - ;Local ClipboardSave + global singlematch + global Word ;Send the word sending := singlematch[WordIndex] ; Update Typed Count diff --git a/Source/Includes/Settings.ahk b/Source/Includes/Settings.ahk index 9504548..451c33d 100644 --- a/Source/Includes/Settings.ahk +++ b/Source/Includes/Settings.ahk @@ -578,30 +578,30 @@ Full (untested) for UTF-8 character set. } SetEnableTitles: -GetList("IncludeProgramTitles",0,IncludeProgramTitles) +GetList("IncludeProgramTitles",0) Return SetDisableTitles: -GetList("ExcludeProgramTitles",0,ExcludeProgramTitles) +GetList("ExcludeProgramTitles",0) Return SetEnableProcess: -GetList("IncludeProgramExecutables",1,IncludeProgramExecutables) +GetList("IncludeProgramExecutables",1) Return SetDisableProcess: -GetList("ExcludeProgramExecutables",1,ExcludeProgramExecutables) +GetList("ExcludeProgramExecutables",1) Return SetHelpTitles: -GetList("HelperWindowProgramTitles",0,HelperWindowProgramTitles) +GetList("HelperWindowProgramTitles",0) Return SetHelpProcess: -GetList("HelperWindowProgramExecutables",1,HelperWindowProgramExecutables) +GetList("HelperWindowProgramExecutables",1) Return -GetList(TitleType,GetExe, ByRef ActiveList) +GetList(TitleType,GetExe) { global MenuTitleType global InProcessList @@ -632,6 +632,8 @@ GetList(TitleType,GetExe, ByRef ActiveList) } } GetExe=0 + + GuiControlGet, MenuTitleList, MenuGui: , %MenuTitleType% Sort,RunningList, D| U Gui, ProcessList:+OwnerMenuGui @@ -643,7 +645,7 @@ GetList(TitleType,GetExe, ByRef ActiveList) Gui, ProcessList:Add, Edit, x110 y40 w250 Gui, ProcessList:Add, Button, xp+260 yp gAddNew1 w40 Default, Add Gui, ProcessList:Add, Text, x10 yp+40, Current list: - Gui, ProcessList:Add, ListBox, x110 yp w250 r10, %ActiveList% + Gui, ProcessList:Add, ListBox, x110 yp w250 r10, %MenuTitleList% Gui, ProcessList:Add, Button, xp+260 yp gRemoveNew1 w40 , Del Gui, ProcessList:Add, Text, x10 yp+170, a) Select a program or window from the list or type a name in the`n%A_Space%%A_Space%%A_Space%%A_Space%%A_Space%'Edit' control (you may need to edit it further)`nb) Click ADD to add it to the list`nc) To remove a program/title, select an item from the 'current list' and`n%A_Space%%A_Space%%A_Space%%A_Space%click DEL. Gui, ProcessList:Add, Button, x10 yp+90 w190 gSaveTitleList, Save @@ -652,12 +654,6 @@ GetList(TitleType,GetExe, ByRef ActiveList) Return } - -Advanced: -WinGetPos, MenuGuiXPos, MenuGuiYPos,,,A -Gui, MenuGui:Show, h%MenuAdvGuiHeight% w%MenuGuiWidth% y%MenuGuiYPos% x%MenuGuiXPos%, New GUI Window -Return - VisitForum: MsgBox , 36 , Visit %ScriptTitle% forum (www.autohotkey.com), Do you want to visit the %ScriptTitle% forum on www.autohotkey.com? IfMsgBox Yes @@ -838,20 +834,25 @@ IF (A_GuiControl && !(SubStr(A_GuiControl ,1 ,5) == "Menu_") ) Return HelpMe: -Loop, Parse, %A_GuiControl%,`r`n +HelpMe() +return + +HelpMe() { - IF ( SubStr(A_LoopField, 1,1) = ";") - { - Menu_Help .= SubStr(A_LoopField,2) . "`r`n" - } else - { - Menu_Help .= A_LoopField . "`r`n" - } + global ScriptTitle + Loop, Parse, %A_GuiControl%,`r`n + { + IF ( SubStr(A_LoopField, 1,1) = ";") + { + Menu_Help .= SubStr(A_LoopField,2) . "`r`n" + } else + { + Menu_Help .= A_LoopField . "`r`n" + } + } + MsgBox , 32 , %ScriptTitle% Help, %Menu_Help% + return } -MsgBox , 32 , %ScriptTitle% Help, %Menu_Help% -Menu_Help= -Return - ; derived from work by shimanov, 2005 ; http://www.autohotkey.com/forum/viewtopic.php?p=37696#37696 @@ -917,17 +918,25 @@ HandleMessage( p_w, p_l, p_m, p_hw ) } SaveTitleList: -ControlGet, MenuTitleList, List, , ListBox1 -InProcessList := false -Gui, ProcessList:Destroy -Gui, MenuGui:-Disabled ; enable main window -Gui, MenuGui:Show -StringReplace, MenuTitleList, MenuTitleList, `n, |, All +SaveTitleList() +return -GuiControl, MenuGui:Text, %MenuTitleType%, %MenuTitleList% -Menu_ChangedPrefs[MenuTitleType] := %MenuTitleType% +SaveTitleList() +{ + global InProcessList + global MenuTitleType + ControlGet, MenuTitleList, List, , ListBox1 + InProcessList := false + Gui, ProcessList:Destroy + Gui, MenuGui:-Disabled ; enable main window + Gui, MenuGui:Show + StringReplace, MenuTitleList, MenuTitleList, `n, |, All + + GuiControl, MenuGui:Text, %MenuTitleType%, %MenuTitleList% + Menu_ChangedPrefs[MenuTitleType] := %MenuTitleType% -Return + return +} ProcessListGuiEscape: ProcessListGuiClose: @@ -939,29 +948,48 @@ Gui, MenuGui:Show Return ToEdit: -GuiControlGet, MenuOutputVar, ProcessList:,ComboBox1 -GuiControl, ProcessList:, Edit1, -GuiControl, ProcessList:, Edit1, %MenuOutputVar% -ControlFocus, Edit1 -Return +ToEdit() +return + +ToEdit() +{ + GuiControlGet, MenuOutputVar, ProcessList:,ComboBox1 + GuiControl, ProcessList:, Edit1, + GuiControl, ProcessList:, Edit1, %MenuOutputVar% + ControlFocus, Edit1 + return +} AddNew1: -GuiControlGet, MenuOutputVar, ProcessList:,Edit1 -GuiControl, ProcessList:, ListBox1, %MenuOutputVar%| -GuiControl, ProcessList:, Edit1, -ControlFocus, Edit1 -Return +AddNew1() +return + +AddNew1() +{ + GuiControlGet, MenuOutputVar, ProcessList:,Edit1 + GuiControl, ProcessList:, ListBox1, %MenuOutputVar%| + GuiControl, ProcessList:, Edit1, + ControlFocus, Edit1 + return +} RemoveNew1: -GuiControlGet, MenuOutputVar, ProcessList:, Listbox1 -ControlGet, MenuTitleList, List, , ListBox1 -StringReplace, MenuTitleList, MenuTitleList, `n, |, All -MenuTitleList := "|" MenuTitleList "|" -StringReplace, MenuTitleList, MenuTitleList, |%MenuOutputVar%|, |, all -StringTrimRight, MenuTitleList, MenuTitleList, 1 -GuiControl, ProcessList:, ListBox1, | -GuiControl, ProcessList:, ListBox1, %MenuTitleList% -Return +RemoveNew1() +return + +RemoveNew1() +{ + GuiControlGet, MenuOutputVar, ProcessList:, Listbox1 + ControlGet, MenuTitleList, List, , ListBox1 + StringReplace, MenuTitleList, MenuTitleList, `n, |, All + MenuTitleList := "|" MenuTitleList "|" + StringReplace, MenuTitleList, MenuTitleList, |%MenuOutputVar%|, |, all + StringTrimRight, MenuTitleList, MenuTitleList, 1 + GuiControl, ProcessList:, ListBox1, | + GuiControl, ProcessList:, ListBox1, %MenuTitleList% + + return +} ; copied from font explorer http://www.autohotkey.com/forum/viewtopic.php?t=57501&highlight=font Writer_enumFonts() diff --git a/Source/Includes/Wordlist.ahk b/Source/Includes/Wordlist.ahk index c549778..f91d995 100644 --- a/Source/Includes/Wordlist.ahk +++ b/Source/Includes/Wordlist.ahk @@ -2,19 +2,13 @@ ReadWordList() { - global + global LearnedWordsCount + global LegacyLearnedWords + global WordListDone + global wDB ;mark the wordlist as not done WordListDone = 0 - Local ParseWords - Local TempAddToLearned - Local each - Local row - Local WordList - Local WordlistLearned - Local tableconverted - Local WordlistConverted - Wordlist = %A_ScriptDir%\Wordlist.txt WordlistLearned = %A_ScriptDir%\WordlistLearned.txt @@ -125,12 +119,9 @@ ReadWordList() ReverseWordNums() { ; This function will reverse the read numbers since now we know the total number of words - Global - Local LearnedWordsTable - Local each - Local row - Local WhereQuery - + global LearnedWordsCount + global LearnCount + global wDB LearnedWordsCount+= (LearnCount - 1) @@ -157,17 +148,14 @@ AddWordToList(AddWord,ForceCountNewOnly,ForceLearn=false) ;AddWord = Word to add to the list ;ForceCountNewOnly = force this word to be permanently learned even if learnmode is off ;ForceLearn = disables some checks in CheckValid - global - Local CharTerminateList - Local AddWordInList - Local CountWord - Local pos - Local WhereQuery - Local QueryResult - Local CountValue - Local each - Local row - Local AddWordIndex + global DoNotLearnStrings + global ForceNewWordCharacters + global LearnedWordsCount + global LearnCount + global LearnLength + global LearnMode + global WordListDone + global wDB StringUpper, AddWordIndex, AddWord @@ -279,7 +267,8 @@ CheckValid(Word,ForceLearn=false) DeleteWordFromList(DeleteWord) { - global + global LearnMode + global wDB Ifequal, DeleteWord, ;If we have no word to delete, skip out. Return @@ -299,8 +288,8 @@ DeleteWordFromList(DeleteWord) UpdateWordCount(word,SortOnly) { - global - Local WhereQuery + global LearnMode + global wDB ;Word = Word to increment count for ;SortOnly = Only sort the words, don't increment the count @@ -330,14 +319,10 @@ CleanupWordList() MaybeUpdateWordlist() { - global - - local TempWordList - local SortWordList - local LearnedWordsPos - local ParseWords - Local each - Local row + global LegacyLearnedWords + global wDB + global WordListDone + ; Update the Learned Words IfEqual, WordListDone, 1 { diff --git a/Source/TypingAid.ahk b/Source/TypingAid.ahk index 3bdb913..e378052 100644 --- a/Source/TypingAid.ahk +++ b/Source/TypingAid.ahk @@ -223,8 +223,8 @@ ProcessKey(chr,EndKey) { AddWordToList(Word,0) ClearAllVars(true) - word = %chr% - LastInput_Id = %Active_id% + word := chr + LastInput_Id := Active_id Return } @@ -232,7 +232,7 @@ ProcessKey(chr,EndKey) { AddWordToList(Word,0) ClearAllVars(true) - Word = %chr% + Word := chr } else { Word .= chr } @@ -287,7 +287,7 @@ RecomputeMatches() IfEqual, ArrowKeyMethod, Off { IfLess, ListBoxRows, 10 - LimitTotalMatches = %ListBoxRows% + LimitTotalMatches := ListBoxRows else LimitTotalMatches = 10 } else { LimitTotalMatches = 200 @@ -425,7 +425,11 @@ CheckForCaretMove: InitializeHotKeys() { - global + global ArrowKeyMethod + global DelimiterChar + global DisabledAutoCompleteKeys + global EnabledKeyboardHotKeys + global LearnMode EnabledKeyboardHotKeys = @@ -851,7 +855,8 @@ EvaluateUpDown(Key) ReturnLineWrong() { - global + global DetectMouseClickMove + global OldCaretY ; Return false if we are using DetectMouseClickMove IfEqual, DetectMouseClickMove, On Return @@ -877,7 +882,8 @@ AddSelectedWordToList() DeleteSelectedWordFromList() { - global + global MatchPos + global singlematch if !(singlematch[MatchPos] = "") ;only continue if singlematch is not empty { From 8d419bf512b1da7cb55f4433fc3406788a6002b0 Mon Sep 17 00:00:00 2001 From: ManiacDC Date: Tue, 3 Mar 2015 09:25:48 -0500 Subject: [PATCH 41/62] Fixed listbox not drawing on mouse position when caret not detectable Fixed scope of several functions --- Source/Includes/ListBox.ahk | 33 +++--- Source/Includes/Window.ahk | 3 +- Source/TypingAid.ahk | 205 +++++++++++++++++++++--------------- 3 files changed, 136 insertions(+), 105 deletions(-) diff --git a/Source/Includes/ListBox.ahk b/Source/Includes/ListBox.ahk index 9e91bc7..758a1c7 100644 --- a/Source/Includes/ListBox.ahk +++ b/Source/Includes/ListBox.ahk @@ -26,10 +26,10 @@ InitializeListBox() } ListBoxClick: - ListBoxChooseItem() + ListBoxClickItem() Return -ListBoxChooseItem() +ListBoxClickItem() { Local TempRows TempRows := GetRows() @@ -37,6 +37,12 @@ ListBoxChooseItem() Return } +ListBoxChooseItem(Row) +{ + global + GuiControl, ListBoxGui: Choose, ListBox%Row%, %MatchPos% +} + ;------------------------------------------------------------------------ CloseListBox() @@ -345,7 +351,6 @@ GetRows() ; function to grab the X position of the caret for the ListBox HCaretX() { - global MouseX global Helper_id WinGetPos, HelperX,,,, ahk_id %Helper_id% @@ -355,10 +360,8 @@ HCaretX() } if ( CheckIfCaretNotDetectable() ) { - if MouseX != 0 - { - return MouseX - } + MouseGetPos, MouseX + return MouseX } return A_CaretX } @@ -368,10 +371,8 @@ HCaretX() ; function to grab the Y position of the caret for the ListBox HCaretY() { - global MouseY global Helper_id - WinGetPos,,HelperY,,, ahk_id %Helper_id% if HelperY != { @@ -379,10 +380,8 @@ HCaretY() } if ( CheckIfCaretNotDetectable() ) { - if MouseY != 0 - { - return MouseY + 20 - } + MouseGetPos, , MouseY + return MouseY + 20 } return A_CaretY } @@ -401,10 +400,12 @@ CheckIfCaretNotDetectable() Loop, %NumMonitors% { SysGet, Mon, Monitor, %A_Index% - if ( A_CaretX = ( MonLeft + 1 ) ) - Return, A_CaretX + if ( A_CaretX = ( MonLeft ) ) + { + Return, 1 + } } - Return + Return, 0 } \ No newline at end of file diff --git a/Source/Includes/Window.ahk b/Source/Includes/Window.ahk index e4b024d..8f0834a 100644 --- a/Source/Includes/Window.ahk +++ b/Source/Includes/Window.ahk @@ -164,8 +164,7 @@ GetIncludedActiveWindowGuts() { WinWaitActive, ahk_id %LastInput_id%,,0 ;Check Caret Position again - MouseButtonClick=LButton - Gosub, CheckForCaretMove + CheckForCaretMove("LButton") ShowListBox() } else { CloseListBox() diff --git a/Source/TypingAid.ahk b/Source/TypingAid.ahk index e378052..5919bc5 100644 --- a/Source/TypingAid.ahk +++ b/Source/TypingAid.ahk @@ -27,41 +27,7 @@ ListLines Off CoordMode, Caret, Screen CoordMode, Mouse, Screen -SplitPath, A_ScriptName,,,ScriptExtension,ScriptNoExtension, - -If A_Is64bitOS -{ - IF (A_PtrSize = 4) - { - IF A_IsCompiled - { - - ScriptPath64 := A_ScriptDir . "\" . ScriptNoExtension . "64." . ScriptExtension - - IfExist, %ScriptPath64% - { - Run, %ScriptPath64%, %A_WorkingDir% - ExitApp - } - } - } -} - -if (SubStr(ScriptNoExtension, StrLen(ScriptNoExtension)-1, 2) == "64" ) -{ - StringTrimRight, ScriptTitle, ScriptNoExtension, 2 -} else { - ScriptTitle := ScriptNoExtension -} - -if (InStr(ScriptTitle, "TypingAid")) -{ - ScriptTitle = TypingAid -} - -ScriptExtension= -ScriptNoExtension= -ScriptPath64= +EvaluateScriptPathAndTitle() SuspendOn() BuildTrayMenu("Running") @@ -123,17 +89,27 @@ Loop } ;Get one key at a time - Input, chr, L1 V I, {BS}%TerminatingEndKeys% + Input, InputChar, L1 V I, {BS}%TerminatingEndKeys% Critical EndKey := ErrorLevel - ProcessKey(chr,EndKey) + ProcessKey(InputChar,EndKey) } -ProcessKey(chr,EndKey) +ProcessKey(InputChar,EndKey) { - global + global Active_id + global DetectMouseClickMove + global ForceNewWordCharacters + global Helper_id + global IgnoreSend + global LastInput_Id + global Length + global OldCaretX + global OldCaretY + global TerminatingCharactersParsed + global Word IfEqual, IgnoreSend, 1 { @@ -190,7 +166,7 @@ ProcessKey(chr,EndKey) ; add the word if switching lines AddWordToList(Word,0) ClearAllVars(true) - Word = %chr% + Word := InputChar Return } } @@ -208,14 +184,14 @@ ProcessKey(chr,EndKey) StringLen, len, Word IfNotEqual, len, 0 { - ifequal, len, 1 + IfEqual, len, 1 { ClearAllVars(true) } else { StringTrimRight, Word, Word, 1 } } - } else if ( ( EndKey == "Max" ) && !(InStr(TerminatingCharactersParsed, chr)) ) + } else if ( ( EndKey == "Max" ) && !(InStr(TerminatingCharactersParsed, InputChar)) ) { ; If active window has different window ID from the last input, ;learn and blank word, then assign number pressed to the word @@ -223,18 +199,18 @@ ProcessKey(chr,EndKey) { AddWordToList(Word,0) ClearAllVars(true) - word := chr + Word := InputChar LastInput_Id := Active_id Return } - if chr in %ForceNewWordCharacters% + if InputChar in %ForceNewWordCharacters% { AddWordToList(Word,0) ClearAllVars(true) - Word := chr + Word := InputChar } else { - Word .= chr + Word .= InputChar } } else { ;Don't do anything if we aren't in the original window and aren't starting a new word @@ -263,25 +239,19 @@ RecomputeMatchesTimer: RecomputeMatches() { ; This function will take the given word, and will recompile the list of matches and redisplay the wordlist. - global - Local each - Local LimitTotalMatches - Local Matches - Local Normalize - Local NormalizeTable - Local OrderByQuery - Local SuppressMatchingWordQuery - Local row - Local ValueType - Local Values - Local WhereQuery - Local WordMatch - Local WordLen + global ArrowKeyMethod + global LearnMode + global ListBoxRows + global NoBackSpace + global number + global singlematch + global SuppressMatchingWord + global Word + global wDB SavePriorMatchPosition() ;Match part-word with command - Num = number = 0 IfEqual, ArrowKeyMethod, Off @@ -361,25 +331,32 @@ RecomputeMatches() ; and update the Last Window Clicked in MouseGetPos, MouseX, MouseY, MouseWin_ID WinGetPos, ,TempY, , , ahk_id %MouseWin_ID% -MouseButtonClick=LButton -; Using GoSub as A_CaretX in function call breaks doubleclick -Gosub, CheckForCaretMove -TempY = -Return +CheckForCaretMove("LButton") +return + ;------------------------------------------------------------------------ ~RButton:: ; Update the Last Window Clicked in MouseGetPos, , ,MouseWin_ID -MouseButtonClick=RButton ; Using GoSub as A_CaretX in function call breaks doubleclick -Gosub, CheckForCaretMove +CheckForCaretMove("RButton") Return ;------------------------------------------------------------------------ -CheckForCaretMove: +CheckForCaretMove(MouseButtonClick) +{ + global DetectMouseClickMove + global LastInput_Id + global MouseWin_ID + global MouseX, MouseY + global OldCaretX + global OldCaretY + global TempY + global Word + ;If we aren't using the DetectMouseClickMoveScheme, skip out IfNotEqual, DetectMouseClickMove, On Return @@ -417,8 +394,8 @@ CheckForCaretMove: } } - MouseButtonClick= Return +} ;------------------------------------------------------------------------ @@ -558,10 +535,14 @@ Return ; If hotkey was pressed, check wether there's a match going on and send it, otherwise send the number(s) typed CheckWord(Key) { - global - Local ATitle - Local WordIndex - Local KeyAgain + global ListBox_ID + global ListBoxRows + global Match + global MatchStart + global NumKeyMethod + global NumPresses + global singlematch + global Word StringRight, Key, Key, 1 ;Grab just the number pushed, trim off the "$" @@ -634,7 +615,7 @@ CheckWord(Key) IfEqual, NumPresses, 2 { - Input, keyagain, L1 I T0.5, 1234567890 + Input, KeyAgain, L1 I T0.5, 1234567890 ; If there is a timeout, abort replacement, send key and return IfEqual, ErrorLevel, Timeout @@ -656,9 +637,9 @@ CheckWord(Key) } ; If the 2nd key is NOT the same 1st trigger key, abort replacement and send keys - IfNotInString, ErrorLevel, %key% + IfNotInString, ErrorLevel, %Key% { - StringTrimLeft, keyagain, ErrorLevel, 7 + StringTrimLeft, KeyAgain, ErrorLevel, 7 SendCompatible(Key . KeyAgain,0) ProcessKey(Key,"") ProcessKey(KeyAgain,"") @@ -678,7 +659,17 @@ CheckWord(Key) ;If a hotkey related to the up/down arrows was pressed EvaluateUpDown(Key) { - global + global ArrowKeyMethod + global DisabledAutoCompleteKeys + global ListBox_ID + global ListBoxRows + global Match + global MatchPos + global MatchStart + global Number + global singlematch + global Word + IfEqual, ArrowKeyMethod, Off { SendKey(Key) @@ -720,7 +711,6 @@ EvaluateUpDown(Key) if ( ( Key = "$^Enter" ) || ( Key = "$Tab" ) || ( Key = "$^Space" ) || ( Key = "$Right") || ( Key = "$Enter") ) { - Local KeyTest IfEqual, Key, $^Enter { KeyTest = E @@ -754,7 +744,7 @@ EvaluateUpDown(Key) if (singlematch[MatchPos] = "") ;only continue if singlematch is not empty { SendKey(Key) - MatchPos = %Number% + MatchPos := Number RebuildMatchList() ShowListBox() Return @@ -765,8 +755,7 @@ EvaluateUpDown(Key) } - Local PreviousMatchStart - PreviousMatchStart = %MatchStart% + PreviousMatchStart := MatchStart IfEqual, Key, $Up { @@ -840,10 +829,11 @@ EvaluateUpDown(Key) IfEqual, MatchStart, %PreviousMatchStart% { - Local Rows Rows := GetRows() IfNotEqual, MatchPos, - GuiControl, ListBoxGui: Choose, ListBox%Rows%, %MatchPos% + { + ListBoxChooseItem(Rows) + } } else { RebuildMatchList() ShowListBox() @@ -897,6 +887,48 @@ DeleteSelectedWordFromList() ;------------------------------------------------------------------------ +EvaluateScriptPathAndTitle() +{ + ;relaunches to 64 bit or sets script title + global ScriptTitle + + SplitPath, A_ScriptName,,,ScriptExtension,ScriptNoExtension, + + If A_Is64bitOS + { + IF (A_PtrSize = 4) + { + IF A_IsCompiled + { + + ScriptPath64 := A_ScriptDir . "\" . ScriptNoExtension . "64." . ScriptExtension + + IfExist, %ScriptPath64% + { + Run, %ScriptPath64%, %A_WorkingDir% + ExitApp + } + } + } + } + + if (SubStr(ScriptNoExtension, StrLen(ScriptNoExtension)-1, 2) == "64" ) + { + StringTrimRight, ScriptTitle, ScriptNoExtension, 2 + } else { + ScriptTitle := ScriptNoExtension + } + + if (InStr(ScriptTitle, "TypingAid")) + { + ScriptTitle = TypingAid + } + + return +} + +;------------------------------------------------------------------------ + SuspendOn() { global ScriptTitle @@ -957,7 +989,7 @@ ClearAllVars(ClearWord) CloseListBox() Ifequal,ClearWord,1 { - word = + Word = OldCaretY= OldCaretX= LastInput_id= @@ -965,8 +997,7 @@ ClearAllVars(ClearWord) singlematch = sending = - key= - match= + Match= MatchPos= MatchStart= Return From 0f5d04366e1bfb5dfc21e4e7c8d3b6fabd59f055 Mon Sep 17 00:00:00 2001 From: ManiacDC Date: Wed, 4 Mar 2015 08:08:24 -0500 Subject: [PATCH 42/62] Fixed a poorly named variable (Number -> MatchTotal) --- Source/Includes/ListBox.ahk | 26 +++++++++++++------------- Source/TypingAid.ahk | 34 +++++++++++++++++----------------- 2 files changed, 30 insertions(+), 30 deletions(-) diff --git a/Source/Includes/ListBox.ahk b/Source/Includes/ListBox.ahk index 758a1c7..883c07d 100644 --- a/Source/Includes/ListBox.ahk +++ b/Source/Includes/ListBox.ahk @@ -107,7 +107,7 @@ SetupMatchPosition() global ListBoxRows global MatchPos global MatchStart - global Number + global MatchTotal global OldMatch global OldMatchStart global singlematch @@ -128,17 +128,17 @@ SetupMatchPosition() MatchStart = 1 } else IfEqual, ArrowKeyMethod, LastPosition { - IfGreater, OldMatch, %Number% + IfGreater, OldMatch, %MatchTotal% { - MatchStart := Number - (ListBoxRows - 1) + MatchStart := MatchTotal - (ListBoxRows - 1) IfLess, MatchStart, 1 MatchStart = 1 - MatchPos := Number + MatchPos := MatchTotal } else { MatchStart := OldMatchStart - If ( MatchStart > (Number - (ListBoxRows - 1) )) + If ( MatchStart > (MatchTotal - (ListBoxRows - 1) )) { - MatchStart := Number - (ListBoxRows - 1) + MatchStart := MatchTotal - (ListBoxRows - 1) IfLess, MatchStart, 1 MatchStart = 1 } @@ -148,7 +148,7 @@ SetupMatchPosition() } else IfEqual, ArrowKeyMethod, LastWord { ListPosition = - Loop, %Number% + Loop, %MatchTotal% { if ( OldMatch == singlematch[A_Index] ) { @@ -180,13 +180,13 @@ RebuildMatchList() { global Match global MatchLongestLength - global Number + global MatchTotal global singlematch Match = MatchLongestLength = - Loop, %Number% + Loop, %MatchTotal% { CurrentLength := AddToMatchList(A_Index,singlematch[A_Index]) IfGreater, CurrentLength, %MatchLongestLength% @@ -240,7 +240,7 @@ ShowListBox() Rows := GetRows() - IfGreater, Number, %Rows% + IfGreater, MatchTotal, %Rows% { SysGet, ScrollBarWidth, 2 if ScrollBarWidth is not integer @@ -338,11 +338,11 @@ ForceWithinMonitorBounds(ByRef ListBoxPosX,ByRef ListBoxPosY,ListBoxActualSizeH, GetRows() { - global Number + global MatchTotal global ListBoxRows - IfGreater, Number, %ListBoxRows% + IfGreater, MatchTotal, %ListBoxRows% Rows := ListBoxRows - else Rows := Number + else Rows := MatchTotal Return, Rows } diff --git a/Source/TypingAid.ahk b/Source/TypingAid.ahk index 5919bc5..6526b2d 100644 --- a/Source/TypingAid.ahk +++ b/Source/TypingAid.ahk @@ -243,7 +243,7 @@ RecomputeMatches() global LearnMode global ListBoxRows global NoBackSpace - global number + global MatchTotal global singlematch global SuppressMatchingWord global Word @@ -252,7 +252,7 @@ RecomputeMatches() SavePriorMatchPosition() ;Match part-word with command - number = 0 + MatchTotal = 0 IfEqual, ArrowKeyMethod, Off { @@ -306,14 +306,14 @@ RecomputeMatches() for each, row in Matches.Rows { - number++ - singlematch[number] := row[1] + MatchTotal++ + singlematch[MatchTotal] := row[1] continue } ;If no match then clear Tip - IfEqual, number, 0 + IfEqual, MatchTotal, 0 { ClearAllVars(false) Return @@ -666,7 +666,7 @@ EvaluateUpDown(Key) global Match global MatchPos global MatchStart - global Number + global MatchTotal global singlematch global Word @@ -744,7 +744,7 @@ EvaluateUpDown(Key) if (singlematch[MatchPos] = "") ;only continue if singlematch is not empty { SendKey(Key) - MatchPos := Number + MatchPos := MatchTotal RebuildMatchList() ShowListBox() Return @@ -763,10 +763,10 @@ EvaluateUpDown(Key) IfLess, MatchPos, 1 { - MatchStart := Number - (ListBoxRows - 1) + MatchStart := MatchTotal - (ListBoxRows - 1) IfLess, MatchStart, 1 MatchStart = 1 - MatchPos := Number + MatchPos := MatchTotal } else { IfLess, MatchPos, %MatchStart% MatchStart -- @@ -775,7 +775,7 @@ EvaluateUpDown(Key) IfEqual, Key, $Down { MatchPos++ - IfGreater, MatchPos, %Number% + IfGreater, MatchPos, %MatchTotal% { MatchStart =1 MatchPos =1 @@ -789,8 +789,8 @@ EvaluateUpDown(Key) { IfEqual, MatchPos, 1 { - MatchPos := Number - (ListBoxRows - 1) - MatchStart := Number - (ListBoxRows - 1) + MatchPos := MatchTotal - (ListBoxRows - 1) + MatchStart := MatchTotal - (ListBoxRows - 1) } Else { MatchPos-=ListBoxRows MatchStart-=ListBoxRows @@ -804,7 +804,7 @@ EvaluateUpDown(Key) } else { IfEqual, Key, $PgDn { - IfEqual, MatchPos, %Number% + IfEqual, MatchPos, %MatchTotal% { MatchPos := ListBoxRows MatchStart := 1 @@ -813,12 +813,12 @@ EvaluateUpDown(Key) MatchStart+=ListBoxRows } - IfGreater, MatchPos, %Number% - MatchPos := Number + IfGreater, MatchPos, %MatchTotal% + MatchPos := MatchTotal - If ( MatchStart > ( Number - (ListBoxRows - 1) ) ) + If ( MatchStart > ( MatchTotal - (ListBoxRows - 1) ) ) { - MatchStart := Number - (ListBoxRows - 1) + MatchStart := MatchTotal - (ListBoxRows - 1) IfLess, MatchStart, 1 MatchStart = 1 } From a26e922d3cf48ab2e359fb892abe8a47ac09234f Mon Sep 17 00:00:00 2001 From: ManiacDC Date: Fri, 6 Mar 2015 10:19:54 -0500 Subject: [PATCH 43/62] Renamed ALL global variables --- Source/Includes/Helper.ahk | 98 +++--- Source/Includes/ListBox.ahk | 258 +++++++------- Source/Includes/Preferences File.ahk | 448 ++++++++++++------------ Source/Includes/Sending.ahk | 52 +-- Source/Includes/Settings.ahk | 267 +++++++------- Source/Includes/Window.ahk | 110 +++--- Source/Includes/Wordlist.ahk | 151 ++++---- Source/TypingAid.ahk | 503 ++++++++++++++------------- 8 files changed, 952 insertions(+), 935 deletions(-) diff --git a/Source/Includes/Helper.ahk b/Source/Includes/Helper.ahk index 91e960c..8fc3fbb 100644 --- a/Source/Includes/Helper.ahk +++ b/Source/Includes/Helper.ahk @@ -3,9 +3,9 @@ MaybeOpenOrCloseHelperWindow(ActiveProcess,ActiveTitle,ActiveId) { ; This is called when switching the active window - global HelperManual + global g_HelperManual - IfNotEqual, HelperManual, + IfNotEqual, g_HelperManual, { MaybeCreateHelperWindow() Return @@ -13,9 +13,9 @@ MaybeOpenOrCloseHelperWindow(ActiveProcess,ActiveTitle,ActiveId) IF ( CheckHelperWindowAuto(ActiveProcess,ActiveTitle) ) { - global HelperClosedWindowIds + global g_HelperClosedWindowIds ; Remove windows which were closed - Loop, Parse, HelperClosedWindowIDs, | + Loop, Parse, g_HelperClosedWindowIDs, | { IfEqual, A_LoopField, Continue @@ -26,12 +26,12 @@ MaybeOpenOrCloseHelperWindow(ActiveProcess,ActiveTitle,ActiveId) } } - HelperClosedWindowIDs = %TempHelperClosedWindowIDs% + g_HelperClosedWindowIDs = %TempHelperClosedWindowIDs% TempHelperClosedWindowIDs = SearchText := "|" . ActiveId . "|" - IfInString, HelperClosedWindowIDs, %SearchText% + IfInString, g_HelperClosedWindowIDs, %SearchText% { MaybeSaveHelperWindowPos() } else MaybeCreateHelperWindow() @@ -44,16 +44,16 @@ MaybeOpenOrCloseHelperWindow(ActiveProcess,ActiveTitle,ActiveId) CheckHelperWindowAuto(ActiveProcess,ActiveTitle) { - global HelperWindowProgramExecutables - global HelperWindowProgramTitles + global prefs_HelperWindowProgramExecutables + global prefs_HelperWindowProgramTitles - Loop, Parse, HelperWindowProgramExecutables, | + Loop, Parse, prefs_HelperWindowProgramExecutables, | { IfEqual, ActiveProcess, %A_LoopField% Return, true } - Loop, Parse, HelperWindowProgramTitles, | + Loop, Parse, prefs_HelperWindowProgramTitles, | { IfInString, ActiveTitle, %A_LoopField% Return, true @@ -66,31 +66,31 @@ MaybeOpenOrCloseHelperWindowManual() { ;Called when we hit Ctrl-Shift-H - global Helper_id - global HelperManual + global g_Helper_Id + global g_HelperManual ;If a helper window already exists - IfNotEqual, Helper_id, + IfNotEqual, g_Helper_Id, { ; If we've forced a manual helper open, close it. Else mark it as forced open manually - IfNotEqual, HelperManual, + IfNotEqual, g_HelperManual, { HelperWindowClosed() - } else HelperManual=1 + } else g_HelperManual=1 } else { - global Active_id - WinGetTitle, ActiveTitle, ahk_id %Active_id% - WinGet, ActiveProcess, ProcessName, ahk_id %Active_id% + global g_Active_Id + WinGetTitle, ActiveTitle, ahk_id %g_Active_Id% + WinGet, ActiveProcess, ProcessName, ahk_id %g_Active_Id% ;Check for Auto Helper, and if Auto clear closed flag and open IF ( CheckHelperWindowAuto(ActiveProcess,ActiveTitle) ) { - global HelperClosedWindowIDs - SearchText := "|" . Active_id . "|" - StringReplace, HelperClosedWindowIDs, HelperClosedWindowIDs, %SearchText% + global g_HelperClosedWindowIDs + SearchText := "|" . g_Active_Id . "|" + StringReplace, g_HelperClosedWindowIDs, g_HelperClosedWindowIDs, %SearchText% } else { ; else Open a manually opened helper window - HelperManual=1 + g_HelperManual=1 } MaybeCreateHelperWindow() } @@ -103,24 +103,24 @@ MaybeOpenOrCloseHelperWindowManual() ;Create helper window for showing ListBox MaybeCreateHelperWindow() { - Global Helper_id + Global g_Helper_Id + Global g_XY ;Don't open a new Helper Window if One is already open - IfNotEqual, Helper_id, + IfNotEqual, g_Helper_Id, Return - Global XY Gui, HelperGui:+Owner -MinimizeBox -MaximizeBox +AlwaysOnTop Gui, HelperGui:+LabelHelper_ Gui, HelperGui:Add, Text,,List appears here - IfNotEqual, XY, + IfNotEqual, g_XY, { - StringSplit, Pos, XY, `, + StringSplit, Pos, g_XY, `, Gui, HelperGui:Show, X%Pos1% Y%Pos2% NoActivate } else { Gui, HelperGui:Show, NoActivate } - WinGet, Helper_id, ID,,List appears here - WinSet, Transparent, 125, ahk_id %Helper_id% + WinGet, g_Helper_Id, ID,,List appears here + WinSet, Transparent, 125, ahk_id %g_Helper_Id% return } @@ -132,25 +132,25 @@ Return HelperWindowClosed() { - global Helper_id - global HelperManual - IfNotEqual, Helper_id, + global g_Helper_Id + global g_HelperManual + IfNotEqual, g_Helper_Id, { - ;Check LastActiveIdBeforeHelper and not Active_id in case we are on the Helper Window - global LastActiveIdBeforeHelper - WinGetTitle, ActiveTitle, ahk_id %LastActiveIdBeforeHelper% - WinGet, ActiveProcess, ProcessName, ahk_id %LastActiveIdBeforeHelper% + ;Check g_LastActiveIdBeforeHelper and not g_Active_Id in case we are on the Helper Window + global g_LastActiveIdBeforeHelper + WinGetTitle, ActiveTitle, ahk_id %g_LastActiveIdBeforeHelper% + WinGet, ActiveProcess, ProcessName, ahk_id %g_LastActiveIdBeforeHelper% If ( CheckHelperWindowAuto(ActiveProcess,ActiveTitle) ) { - global HelperClosedWindowIDs + global g_HelperClosedWindowIDs - SearchText := "|" . LastActiveIdBeforeHelper . "|" - IfNotInString HelperClosedWindowIDs, %SearchText% - HelperClosedWindowIDs .= SearchText + SearchText := "|" . g_LastActiveIdBeforeHelper . "|" + IfNotInString g_HelperClosedWindowIDs, %SearchText% + g_HelperClosedWindowIDs .= SearchText } - HelperManual= + g_HelperManual= MaybeSaveHelperWindowPos() } @@ -161,15 +161,15 @@ HelperWindowClosed() MaybeSaveHelperWindowPos() { - global Helper_id - IfNotEqual, Helper_id, + global g_Helper_Id + IfNotEqual, g_Helper_Id, { - global XY - global XYSaved - WinGetPos, hX, hY, , , ahk_id %Helper_id% - XY = %hX%`,%hY% - XYSaved = 1 - Helper_id = + global g_XY + global g_XYSaved + WinGetPos, hX, hY, , , ahk_id %g_Helper_Id% + g_XY = %hX%`,%hY% + g_XYSaved = 1 + g_Helper_Id = Gui, HelperGui:Hide } Return diff --git a/Source/Includes/ListBox.ahk b/Source/Includes/ListBox.ahk index 883c07d..1502df1 100644 --- a/Source/Includes/ListBox.ahk +++ b/Source/Includes/ListBox.ahk @@ -4,23 +4,23 @@ InitializeListBox() { global - Gui, ListBoxGui: -Caption +AlwaysOnTop +ToolWindow +Delimiter%DelimiterChar% + Gui, ListBoxGui: -Caption +AlwaysOnTop +ToolWindow +Delimiter%g_DelimiterChar% Local ListBoxFont - IfNotEqual, ListBoxFontOverride, - ListBoxFont := ListBoxFontOverride + IfNotEqual, prefs_ListBoxFontOverride, + ListBoxFont := prefs_ListBoxFontOverride else { - IfEqual, ListBoxFontFixed, On + IfEqual, prefs_ListBoxFontFixed, On ListBoxFont = Courier New else ListBoxFont = Tahoma } - Gui, ListBoxGui:Font, s%ListBoxFontSize%, %ListBoxFont% + Gui, ListBoxGui:Font, s%prefs_ListBoxFontSize%, %ListBoxFont% - Loop, %ListBoxRows% + Loop, %prefs_ListBoxRows% { - GuiControl, -Redraw, ListBox%A_Index% - Gui, ListBoxGui: Add, ListBox, vListBox%A_Index% R%A_Index% X0 Y0 GListBoxClick + GuiControl, -Redraw, g_ListBox%A_Index% + Gui, ListBoxGui: Add, ListBox, vg_ListBox%A_Index% R%A_Index% X0 Y0 GListBoxClick } Return } @@ -33,25 +33,25 @@ ListBoxClickItem() { Local TempRows TempRows := GetRows() - GuiControlGet, MatchPos, ,ListBox%TempRows% + GuiControlGet, g_MatchPos, , g_ListBox%TempRows% Return } ListBoxChooseItem(Row) { global - GuiControl, ListBoxGui: Choose, ListBox%Row%, %MatchPos% + GuiControl, ListBoxGui: Choose, g_ListBox%Row%, %g_MatchPos% } ;------------------------------------------------------------------------ CloseListBox() { - global ListBox_ID - IfNotEqual, ListBox_ID, + global g_ListBox_Id + IfNotEqual, g_ListBox_Id, { Gui, ListBoxGui: Hide - ListBox_ID = + g_ListBox_Id = DisableKeyboardHotKeys() } Return @@ -59,8 +59,8 @@ CloseListBox() DestroyListBox() { - global ListBox_ID - ListBox_ID = + global g_ListBox_Id + g_ListBox_Id = Gui, ListBoxGui:Destroy DisableKeyboardHotKeys() Return @@ -70,32 +70,33 @@ DestroyListBox() SavePriorMatchPosition() { - global ArrowKeyMethod - global MatchPos - global OldMatch - global OldMatchStart - global singlematch + global g_MatchPos + global g_MatchStart + global g_OldMatch + global g_OldMatchStart + global g_singlematch + global prefs_ArrowKeyMethod - IfNotEqual, MatchPos, + IfNotEqual, g_MatchPos, { - IfEqual, ArrowKeyMethod, LastWord + IfEqual, prefs_ArrowKeyMethod, LastWord { - OldMatch := singlematch[MatchPos] - OldMatchStart = + g_OldMatch := g_singlematch[g_MatchPos] + g_OldMatchStart = } else { - IfEqual, ArrowKeyMethod, LastPosition + IfEqual, prefs_ArrowKeyMethod, LastPosition { - OldMatch := MatchPos - OldMatchStart := MatchStart + g_OldMatch := g_MatchPos + g_OldMatchStart := g_MatchStart } else { - OldMatch = - OldMatchStart = + g_OldMatch = + g_OldMatchStart = } } } else { - OldMatch = - OldMatchStart = + g_OldMatch = + g_OldMatchStart = } Return @@ -103,54 +104,54 @@ SavePriorMatchPosition() SetupMatchPosition() { - global ArrowKeyMethod - global ListBoxRows - global MatchPos - global MatchStart - global MatchTotal - global OldMatch - global OldMatchStart - global singlematch + global g_MatchPos + global g_MatchStart + global g_MatchTotal + global g_OldMatch + global g_OldMatchStart + global g_singlematch + global prefs_ArrowKeyMethod + global prefs_ListBoxRows - IfEqual, OldMatch, + IfEqual, g_OldMatch, { - IfEqual, ArrowKeyMethod, Off + IfEqual, prefs_ArrowKeyMethod, Off { - MatchPos = - MatchStart = 1 + g_MatchPos = + g_MatchStart = 1 } else { - MatchPos = 1 - MatchStart = 1 + g_MatchPos = 1 + g_MatchStart = 1 } - } Else IfEqual, ArrowKeyMethod, Off + } Else IfEqual, prefs_ArrowKeyMethod, Off { - MatchPos = - MatchStart = 1 - } else IfEqual, ArrowKeyMethod, LastPosition + g_MatchPos = + g_MatchStart = 1 + } else IfEqual, prefs_ArrowKeyMethod, LastPosition { - IfGreater, OldMatch, %MatchTotal% + IfGreater, g_OldMatch, %g_MatchTotal% { - MatchStart := MatchTotal - (ListBoxRows - 1) - IfLess, MatchStart, 1 - MatchStart = 1 - MatchPos := MatchTotal + g_MatchStart := g_MatchTotal - (prefs_ListBoxRows - 1) + IfLess, g_MatchStart, 1 + g_MatchStart = 1 + g_MatchPos := g_MatchTotal } else { - MatchStart := OldMatchStart - If ( MatchStart > (MatchTotal - (ListBoxRows - 1) )) + g_MatchStart := g_OldMatchStart + If ( g_MatchStart > (g_MatchTotal - (prefs_ListBoxRows - 1) )) { - MatchStart := MatchTotal - (ListBoxRows - 1) - IfLess, MatchStart, 1 - MatchStart = 1 + g_MatchStart := g_MatchTotal - (prefs_ListBoxRows - 1) + IfLess, g_MatchStart, 1 + g_MatchStart = 1 } - MatchPos := OldMatch + g_MatchPos := g_OldMatch } - } else IfEqual, ArrowKeyMethod, LastWord + } else IfEqual, prefs_ArrowKeyMethod, LastWord { ListPosition = - Loop, %MatchTotal% + Loop, %g_MatchTotal% { - if ( OldMatch == singlematch[A_Index] ) + if ( g_OldMatch == g_singlematch[A_Index] ) { ListPosition := A_Index Break @@ -158,63 +159,63 @@ SetupMatchPosition() } IfEqual, ListPosition, { - MatchPos = 1 - MatchStart = 1 + g_MatchPos = 1 + g_MatchStart = 1 } Else { - MatchStart := ListPosition - (ListBoxRows - 1) - IfLess, MatchStart, 1 - MatchStart = 1 - MatchPos := ListPosition + g_MatchStart := ListPosition - (prefs_ListBoxRows - 1) + IfLess, g_MatchStart, 1 + g_MatchStart = 1 + g_MatchPos := ListPosition } } else { - MatchPos = 1 - MatchStart = 1 + g_MatchPos = 1 + g_MatchStart = 1 } - OldMatch = - OldMatchStart = + g_OldMatch = + g_OldMatchStart = Return } RebuildMatchList() { - global Match - global MatchLongestLength - global MatchTotal - global singlematch + global g_Match + global g_MatchLongestLength + global g_MatchTotal + global g_singlematch - Match = - MatchLongestLength = + g_Match = + g_MatchLongestLength = - Loop, %MatchTotal% + Loop, %g_MatchTotal% { - CurrentLength := AddToMatchList(A_Index,singlematch[A_Index]) - IfGreater, CurrentLength, %MatchLongestLength% - MatchLongestLength := CurrentLength + CurrentLength := AddToMatchList(A_Index,g_singlematch[A_Index]) + IfGreater, CurrentLength, %g_MatchLongestLength% + g_MatchLongestLength := CurrentLength } - StringTrimRight, Match, Match, 1 ; Get rid of the last linefeed + StringTrimRight, g_Match, g_Match, 1 ; Get rid of the last linefeed Return } AddToMatchList(position,value) { - global DelimiterChar - global Match - global MatchStart - global NumKeyMethod + global g_DelimiterChar + global g_Match + global g_MatchStart + global g_NumKeyMethod - IfEqual, NumKeyMethod, Off + IfEqual, g_NumKeyMethod, Off prefix = else { - IfLess, position, %MatchStart% + IfLess, position, %g_MatchStart% prefix = else { - if ( position > ( MatchStart + 9 ) ) + if ( position > ( g_MatchStart + 9 ) ) prefix = - else prefix := Mod(position - MatchStart +1,10) . " " + else prefix := Mod(position - g_MatchStart +1,10) . " " } } - Match .= prefix . value . DelimiterChar + g_Match .= prefix . value . g_DelimiterChar Return, StrLen("8 " . value) } @@ -225,7 +226,7 @@ ShowListBox() { global - IfNotEqual, Match, + IfNotEqual, g_Match, { Local BorderWidthX Local ListBoxActualSize @@ -240,7 +241,7 @@ ShowListBox() Rows := GetRows() - IfGreater, MatchTotal, %Rows% + IfGreater, g_MatchTotal, %Rows% { SysGet, ScrollBarWidth, 2 if ScrollBarWidth is not integer @@ -253,37 +254,37 @@ ShowListBox() BorderWidthX = 1 ;Use 8 pixels for each character in width - ListBoxSizeX := ListBoxCharacterWidthComputed * MatchLongestLength + ListBoxCharacterWidthComputed + ScrollBarWidth + (BorderWidthX *2) + ListBoxSizeX := g_ListBoxCharacterWidthComputed * g_MatchLongestLength + g_ListBoxCharacterWidthComputed + ScrollBarWidth + (BorderWidthX *2) ListBoxPosX := HCaretX() ; + ListBoxOffset Move ListBox down a little so as not to hide the caret. - ListBoxPosY := HCaretY()+ListBoxOffset + ListBoxPosY := HCaretY()+prefs_ListBoxOffset - Loop, %ListBoxRows% + Loop, %prefs_ListBoxRows% { IfEqual, A_Index, %Rows% { - GuiControl, ListBoxGui: -Redraw, ListBox%A_Index% - GuiControl, ListBoxGui: Move, ListBox%A_Index%, w%ListBoxSizeX% - GuiControl, ListBoxGui: ,ListBox%A_Index%, %DelimiterChar%%Match% - MatchEnd := MatchStart + (ListBoxRows - 1) - IfNotEqual, MatchPos, + GuiControl, ListBoxGui: -Redraw, g_ListBox%A_Index% + GuiControl, ListBoxGui: Move, g_ListBox%A_Index%, w%ListBoxSizeX% + GuiControl, ListBoxGui: ,g_ListBox%A_Index%, %g_DelimiterChar%%g_Match% + MatchEnd := g_MatchStart + (prefs_ListBoxRows - 1) + IfNotEqual, g_MatchPos, { - GuiControl, ListBoxGui: Choose, ListBox%A_Index%, %MatchEnd% - GuiControl, ListBoxGui: Choose, ListBox%A_Index%, %MatchPos% + GuiControl, ListBoxGui: Choose, g_ListBox%A_Index%, %MatchEnd% + GuiControl, ListBoxGui: Choose, g_ListBox%A_Index%, %g_MatchPos% } - GuiControl, ListBoxGui: +AltSubmit +Redraw, ListBox%A_Index% - GuiControl, ListBoxGui: Show, ListBox%A_Index% - GuiControlGet, ListBoxActualSize, ListBoxGui: Pos, ListBox%A_Index% + GuiControl, ListBoxGui: +AltSubmit +Redraw, g_ListBox%A_Index% + GuiControl, ListBoxGui: Show, g_ListBox%A_Index% + GuiControlGet, ListBoxActualSize, ListBoxGui: Pos, g_ListBox%A_Index% Continue } - GuiControl, ListBoxGui: Hide, ListBox%A_Index% - GuiControl, ListBoxGui: -Redraw, ListBox%A_Index% - GuiControl, ListBoxGui: , ListBox%A_Index%, %DelimiterChar% + GuiControl, ListBoxGui: Hide, g_ListBox%A_Index% + GuiControl, ListBoxGui: -Redraw, g_ListBox%A_Index% + GuiControl, ListBoxGui: , g_ListBox%A_Index%, %g_DelimiterChar% } - ForceWithinMonitorBounds(ListBoxPosX,ListBoxPosY,ListBoxActualSizeH,ListBoxActualSizeW,Rows,ListBoxOffset) + ForceWithinMonitorBounds(ListBoxPosX,ListBoxPosY,ListBoxActualSizeH,ListBoxActualSizeW,Rows) ; In rare scenarios, the Cursor may not have been detected. In these cases, we just won't show the ListBox. IF (!(ListBoxPosX) || !(ListBoxPosY)) @@ -293,19 +294,20 @@ ShowListBox() Gui, ListBoxGui: Show, NoActivate X%ListBoxPosX% Y%ListBoxPosY% H%ListBoxActualSizeH% W%ListBoxActualSizeW%, Word List Appears Here. Gui, ListBoxGui: +LastFound +AlwaysOnTop - IfEqual, ListBox_ID, + IfEqual, g_ListBox_Id, { EnableKeyboardHotKeys() } - WinGet, ListBox_ID, ID, Word List Appears Here. - IfNotEqual, ListBoxOpacity, 255 - WinSet, Transparent, %ListBoxOpacity%, ahk_id %ListBox_ID% - WinSet, Disable, , ahk_id %ListBox_ID% + WinGet, g_ListBox_Id, ID, Word List Appears Here. + IfNotEqual, prefs_ListBoxOpacity, 255 + WinSet, Transparent, %prefs_ListBoxOpacity%, ahk_id %g_ListBox_Id% + WinSet, Disable, , ahk_id %g_ListBox_Id% } } -ForceWithinMonitorBounds(ByRef ListBoxPosX,ByRef ListBoxPosY,ListBoxActualSizeH,ListBoxActualSizeW,Rows,ListBoxOffset) +ForceWithinMonitorBounds(ByRef ListBoxPosX,ByRef ListBoxPosY,ListBoxActualSizeH,ListBoxActualSizeW,Rows) { + global prefs_ListBoxOffset ;Grab the number of non-dummy monitors SysGet, NumMonitors, 80 @@ -326,7 +328,7 @@ ForceWithinMonitorBounds(ByRef ListBoxPosX,ByRef ListBoxPosY,ListBoxActualSizeH, } If ( (ListBoxPosY + ListBoxActualSizeH ) > MonBottom ) - ListBoxPosY := HCaretY() - Ceil(ListBoxOffset - (ListBoxActualSizeH / Rows )) - ListBoxActualSizeH + ListBoxPosY := HCaretY() - Ceil(prefs_ListBoxOffset - (ListBoxActualSizeH / Rows )) - ListBoxActualSizeH Break } @@ -338,11 +340,11 @@ ForceWithinMonitorBounds(ByRef ListBoxPosX,ByRef ListBoxPosY,ListBoxActualSizeH, GetRows() { - global MatchTotal - global ListBoxRows - IfGreater, MatchTotal, %ListBoxRows% - Rows := ListBoxRows - else Rows := MatchTotal + global g_MatchTotal + global prefs_ListBoxRows + IfGreater, g_MatchTotal, %prefs_ListBoxRows% + Rows := prefs_ListBoxRows + else Rows := g_MatchTotal Return, Rows } @@ -351,9 +353,9 @@ GetRows() ; function to grab the X position of the caret for the ListBox HCaretX() { - global Helper_id + global g_Helper_Id - WinGetPos, HelperX,,,, ahk_id %Helper_id% + WinGetPos, HelperX,,,, ahk_id %g_Helper_Id% if HelperX != { return HelperX @@ -371,9 +373,9 @@ HCaretX() ; function to grab the Y position of the caret for the ListBox HCaretY() { - global Helper_id + global g_Helper_Id - WinGetPos,,HelperY,,, ahk_id %Helper_id% + WinGetPos,,HelperY,,, ahk_id %g_Helper_Id% if HelperY != { return HelperY diff --git a/Source/Includes/Preferences File.ahk b/Source/Includes/Preferences File.ahk index 81645a0..361bc58 100644 --- a/Source/Includes/Preferences File.ahk +++ b/Source/Includes/Preferences File.ahk @@ -2,13 +2,13 @@ MaybeWriteHelperWindowPos() { - global XY - global XYSaved + global g_XY + global g_XYSaved ;Update the Helper Window Position - IfEqual, XYSaved, 1 + IfEqual, g_XYSaved, 1 { - IfNotEqual, XY, - IniWrite, %XY%, %A_ScriptDir%\LastState.ini, HelperWindow, XY + IfNotEqual, g_XY, + IniWrite, %g_XY%, %A_ScriptDir%\LastState.ini, HelperWindow, XY } Return } @@ -17,87 +17,88 @@ MaybeWriteHelperWindowPos() ReadPreferences(RestoreDefaults = false,RestorePreferences = false) { - global DftIncludeProgramExecutables - global DftIncludeProgramTitles - global DftExcludeProgramExecutables - global DftExcludeProgramTitles - global DftLength - global DftNumPresses - global DftLearnMode - global DftLearnCount - global DftLearnLength - global DftDoNotLearnStrings - global DftArrowKeyMethod - global DftDisabledAutoCompleteKeys - global DftDetectMouseClickMove - global DftNoBackSpace - global DftAutoSpace - global DftSuppressMatchingWord - global DftSendMethod - global DftTerminatingCharacters - global DftForceNewWordCharacters - global DftListBoxOffSet - global DftListBoxFontFixed - global DftListBoxFontOverride - global DftListBoxFontSize - global DftListBoxCharacterWidth - global DftListBoxOpacity - global DftListBoxRows - global DftHelperWindowProgramExecutables - global DftHelperWindowProgramTitles - - global IncludeProgramExecutables - global IncludeProgramTitles - global ExcludeProgramExecutables - global ExcludeProgramTitles - global Length - global NumPresses - global LearnMode - global LearnCount - global LearnLength - global DoNotLearnStrings - global ArrowKeyMethod - global DisabledAutoCompleteKeys - global DetectMouseClickMove - global NoBackSpace - global AutoSpace - global SuppressMatchingWord - global SendMethod - global TerminatingCharacters - global ForceNewWordCharacters - global ListBoxOffset - global ListBoxFontFixed - global ListBoxFontOverride - global ListBoxFontSize - global ListBoxCharacterWidth - global ListBoxOpacity - global ListBoxRows - global HelperWindowProgramExecutables - global HelperWindowProgramTitles - - ;PrefsFile is global so it works in Settings.ahk - global PrefsFile - global PrefsSections - - PrefsFile = %A_ScriptDir%\Preferences.ini + global dft_IncludeProgramExecutables + global dft_IncludeProgramTitles + global dft_ExcludeProgramExecutables + global dft_ExcludeProgramTitles + global dft_Length + global dft_NumPresses + global dft_LearnMode + global dft_LearnCount + global dft_LearnLength + global dft_DoNotLearnStrings + global dft_ArrowKeyMethod + global dft_DisabledAutoCompleteKeys + global dft_DetectMouseClickMove + global dft_NoBackSpace + global dft_AutoSpace + global dft_SuppressMatchingWord + global dft_SendMethod + global dft_TerminatingCharacters + global dft_ForceNewWordCharacters + global dft_ListBoxOffSet + global dft_ListBoxFontFixed + global dft_ListBoxFontOverride + global dft_ListBoxFontSize + global dft_ListBoxCharacterWidth + global dft_ListBoxOpacity + global dft_ListBoxRows + global dft_HelperWindowProgramExecutables + global dft_HelperWindowProgramTitles + + global prefs_IncludeProgramExecutables + global prefs_IncludeProgramTitles + global prefs_ExcludeProgramExecutables + global prefs_ExcludeProgramTitles + global prefs_Length + global prefs_NumPresses + global prefs_LearnMode + global prefs_LearnCount + global prefs_LearnLength + global prefs_DoNotLearnStrings + global prefs_ArrowKeyMethod + global prefs_DisabledAutoCompleteKeys + global prefs_DetectMouseClickMove + global prefs_NoBackSpace + global prefs_AutoSpace + global prefs_SuppressMatchingWord + global prefs_SendMethod + global prefs_TerminatingCharacters + global prefs_ForceNewWordCharacters + global prefs_ListBoxOffset + global prefs_ListBoxFontFixed + global prefs_ListBoxFontOverride + global prefs_ListBoxFontSize + global prefs_ListBoxCharacterWidth + global prefs_ListBoxOpacity + global prefs_ListBoxRows + global prefs_HelperWindowProgramExecutables + global prefs_HelperWindowProgramTitles + + ;g_PrefsFile is global so it works in Settings.ahk + global g_PrefsFile + global g_PrefsSections + global g_XY + + g_PrefsFile = %A_ScriptDir%\Preferences.ini Defaults = %A_ScriptDir%\Defaults.ini LastState = %A_ScriptDir%\LastState.ini - MaybeFixFileEncoding(PrefsFile,"UTF-16") + MaybeFixFileEncoding(g_PrefsFile,"UTF-16") MaybeFixFileEncoding(Defaults,"UTF-16") MaybeFixFileEncoding(LastState,"UTF-16") - DftTerminatingCharacters = {enter}{space}{esc}{tab}{Home}{End}{PgUp}{PgDn}{Up}{Down}{Left}{Right}.;`,¿?¡!'"()[]{}{}}{{}``~`%$&*-+=\/><^|@#: + dft_TerminatingCharacters = {enter}{space}{esc}{tab}{Home}{End}{PgUp}{PgDn}{Up}{Down}{Left}{Right}.;`,¿?¡!'"()[]{}{}}{{}``~`%$&*-+=\/><^|@#: ; There was a bug in TypingAid 2.19.7 that broke terminating characters for new preference files, this code repairs it BrokenTerminatingCharacters = {enter}{space}{esc}{tab}{Home}{End}{PgUp}{PgDn}{Up}{Down}{Left}{Right}.; - IfExist, %PrefsFile% + IfExist, %g_PrefsFile% { - IniRead, MaybeFixTerminatingCharacters, %PrefsFile%, Settings, TerminatingCharacters, %A_Space% + IniRead, MaybeFixTerminatingCharacters, %g_PrefsFile%, Settings, TerminatingCharacters, %A_Space% IF (MaybeFixTerminatingCharacters == BrokenTerminatingCharacters) { - IniWrite, %DftTerminatingCharacters%, %PrefsFile%, Settings, TerminatingCharacters + IniWrite, %dft_TerminatingCharacters%, %g_PrefsFile%, Settings, TerminatingCharacters } } @@ -105,39 +106,39 @@ ReadPreferences(RestoreDefaults = false,RestorePreferences = false) IniValues = ( - DftIncludeProgramExecutables,IncludeProgramExecutables,IncludePrograms,%SpaceVar% - DftIncludeProgramTitles,IncludeProgramTitles,IncludePrograms,%SpaceVar% - DftExcludeProgramExecutables,ExcludeProgramExecutables,ExcludePrograms,%SpaceVar% - DftExcludeProgramTitles,ExcludeProgramTitles,ExcludePrograms,%SpaceVar% + dft_IncludeProgramExecutables,prefs_IncludeProgramExecutables,IncludePrograms,%SpaceVar% + dft_IncludeProgramTitles,prefs_IncludeProgramTitles,IncludePrograms,%SpaceVar% + dft_ExcludeProgramExecutables,prefs_ExcludeProgramExecutables,ExcludePrograms,%SpaceVar% + dft_ExcludeProgramTitles,prefs_ExcludeProgramTitles,ExcludePrograms,%SpaceVar% ,Title,Settings,%SpaceVar% - DftLength,Length,Settings,3 - DftNumPresses,NumPresses,Settings,1 - DftLearnMode,LearnMode,Settings,On - DftLearnCount,LearnCount,Settings,5 - DftLearnLength,LearnLength,Settings,%SpaceVar% - DftDoNotLearnStrings,DoNotLearnStrings,Settings,%SpaceVar% - DftArrowKeyMethod,ArrowKeyMethod,Settings,First - DftDisabledAutoCompleteKeys,DisabledAutoCompleteKeys,Settings,%SpaceVar% - DftDetectMouseClickMove,DetectMouseClickMove,Settings,On - DftNoBackSpace,NoBackSpace,Settings,On - DftAutoSpace,AutoSpace,Settings,Off - DftSuppressMatchingWord,SuppressMatchingWord,Settings,Off - DftSendMethod,SendMethod,Settings,1 - DftTerminatingCharacters,TerminatingCharacters,Settings,`%DftTerminatingCharacters`% - DftForceNewWordCharacters,ForceNewWordCharacters,Settings,%SpaceVar% - DftListBoxOffSet,ListBoxOffset,ListBoxSettings,14 - DftListBoxFontFixed,ListBoxFontFixed,ListBoxSettings,Off - DftListBoxFontOverride,ListBoxFontOverride,ListBoxSettings,%SpaceVar% - DftListBoxFontSize,ListBoxFontSize,ListBoxSettings,10 - DftListBoxCharacterWidth,ListBoxCharacterWidth,ListBoxSettings,%SpaceVar% - DftListBoxOpacity,ListBoxOpacity,ListBoxSettings,215 - DftListBoxRows,ListBoxRows,ListBoxSettings,10 - DftHelperWindowProgramExecutables,HelperWindowProgramExecutables,HelperWindow,%SpaceVar% - DftHelperWindowProgramTitles,HelperWindowProgramTitles,HelperWindow,%SpaceVar% + dft_Length,prefs_Length,Settings,3 + dft_NumPresses,prefs_NumPresses,Settings,1 + dft_LearnMode,prefs_LearnMode,Settings,On + dft_LearnCount,prefs_LearnCount,Settings,5 + dft_LearnLength,prefs_LearnLength,Settings,%SpaceVar% + dft_DoNotLearnStrings,prefs_DoNotLearnStrings,Settings,%SpaceVar% + dft_ArrowKeyMethod,prefs_ArrowKeyMethod,Settings,First + dft_DisabledAutoCompleteKeys,prefs_DisabledAutoCompleteKeys,Settings,%SpaceVar% + dft_DetectMouseClickMove,prefs_DetectMouseClickMove,Settings,On + dft_NoBackSpace,prefs_NoBackSpace,Settings,On + dft_AutoSpace,prefs_AutoSpace,Settings,Off + dft_SuppressMatchingWord,prefs_SuppressMatchingWord,Settings,Off + dft_SendMethod,prefs_SendMethod,Settings,1 + dft_TerminatingCharacters,prefs_TerminatingCharacters,Settings,`%dft_TerminatingCharacters`% + dft_ForceNewWordCharacters,prefs_ForceNewWordCharacters,Settings,%SpaceVar% + dft_ListBoxOffSet,prefs_ListBoxOffset,ListBoxSettings,14 + dft_ListBoxFontFixed,prefs_ListBoxFontFixed,ListBoxSettings,Off + dft_ListBoxFontOverride,prefs_ListBoxFontOverride,ListBoxSettings,%SpaceVar% + dft_ListBoxFontSize,prefs_ListBoxFontSize,ListBoxSettings,10 + dft_ListBoxCharacterWidth,prefs_ListBoxCharacterWidth,ListBoxSettings,%SpaceVar% + dft_ListBoxOpacity,prefs_ListBoxOpacity,ListBoxSettings,215 + dft_ListBoxRows,prefs_ListBoxRows,ListBoxSettings,10 + dft_HelperWindowProgramExecutables,prefs_HelperWindowProgramExecutables,HelperWindow,%SpaceVar% + dft_HelperWindowProgramTitles,prefs_HelperWindowProgramTitles,HelperWindow,%SpaceVar% ,XY,HelperWindow,%SpaceVar% ) - PrefsSections := Object() + g_PrefsSections := Object() Loop, Parse, IniValues, `n, `r%A_Space% { @@ -146,23 +147,31 @@ ReadPreferences(RestoreDefaults = false,RestorePreferences = false) NormalVariable := CurrentIniValues2 IniSection := CurrentIniValues3 DftValue := CurrentIniValues4 + ; maybe strip "prefs_" prefix + if (substr(NormalVariable, 1, 6) == "prefs_") + { + StringTrimLeft, KeyName, NormalVariable, 6 + } else { + KeyName := NormalVariable + } - PrefsSections[NormalVariable] := IniSection + g_PrefsSections[KeyName] := IniSection - IF (DftValue == "%DftTerminatingCharacters%") + ; this is done because certain characters can break the parsing (comma, for example) + IF (DftValue == "%dft_TerminatingCharacters%") { - DftValue := DftTerminatingCharacters + DftValue := dft_TerminatingCharacters } IF ( DftValue = "%A_Space%" ) DftValue := A_Space IF !(RestoreDefaults) - IniRead, %NormalVariable%, %PrefsFile%, %IniSection%, %NormalVariable%, %A_Space% + IniRead, %NormalVariable%, %g_PrefsFile%, %IniSection%, %KeyName%, %A_Space% IF DftVariable { - IniRead, %DftVariable%, %Defaults%, %IniSection%, %NormalVariable%, %DftValue% + IniRead, %DftVariable%, %Defaults%, %IniSection%, %KeyName%, %DftValue% IF (RestoreDefaults || %NormalVariable% == "") { %NormalVariable% := %DftVariable% @@ -176,22 +185,24 @@ ReadPreferences(RestoreDefaults = false,RestorePreferences = false) ; Legacy support for old Preferences File IfNotEqual, Etitle, { - IfEqual, IncludeProgramTitles, + IfEqual, prefs_IncludeProgramTitles, { - IncludeProgramTitles = %Etitle% + prefs_IncludeProgramTitles = %Etitle% } else { - IncludeProgramTitles .= "|" . Etitle + prefs_IncludeProgramTitles .= "|" . Etitle } Etitle= } + g_XY := XY + IF ( RestoreDefaults || RestorePreferences ) Return IfExist, %LastState% { - IniRead, XY, %LastState%, HelperWindow, XY, %A_Space% + IniRead, g_XY, %LastState%, HelperWindow, XY, %A_Space% } ConstructHelpStrings() @@ -201,157 +212,157 @@ ReadPreferences(RestoreDefaults = false,RestorePreferences = false) ValidatePreferences() { - - global ArrowKeyMethod, DisabledAutoCompleteKeys, ListBoxCharacterWidthComputed, NumKeyMethod - global AutoSpace, DetectMouseClickMove, LearnCount, LearnLength, LearnMode, Length - global DftAutoSpace, DftDetectMouseClickMove, DftLearnCount, DftLearnLength, DftLearnMode, DftLength - global ListBoxCharacterWidth, ListBoxFontFixed, ListBoxFontSize, ListBoxOffset, ListBoxOpacity, ListBoxRows - global DftListBoxCharacterWidth, DftListBoxFontFixed, DftListBoxFontSize, DftListBoxOffset, DftListBoxOpacity, DftListBoxRows - global NoBackSpace, NumPresses, SendMethod, SuppressMatchingWord, TerminatingCharacters - global DftNoBackSpace, DftNumPresses, DftSendMethod, DftSuppressMatchingWord, DftTerminatingCharacters - - if Length is not integer + global g_ListBoxCharacterWidthComputed, g_NumKeyMethod + global prefs_ArrowKeyMethod, prefs_DisabledAutoCompleteKeys + global prefs_AutoSpace, prefs_DetectMouseClickMove, prefs_LearnCount, prefs_LearnLength, prefs_LearnMode, prefs_Length + global dft_AutoSpace, dft_DetectMouseClickMove, dft_LearnCount, dft_LearnLength, dft_LearnMode, dft_Length + global prefs_ListBoxCharacterWidth, prefs_ListBoxFontFixed, prefs_ListBoxFontSize, prefs_ListBoxOffset, prefs_ListBoxOpacity, prefs_ListBoxRows + global dft_ListBoxCharacterWidth, dft_ListBoxFontFixed, dft_ListBoxFontSize, dft_ListBoxOffset, dft_ListBoxOpacity, dft_ListBoxRows + global prefs_NoBackSpace, prefs_NumPresses, prefs_SendMethod, prefs_SuppressMatchingWord, prefs_TerminatingCharacters + global dft_NoBackSpace, dft_NumPresses, dft_SendMethod, dft_SuppressMatchingWord, dft_TerminatingCharacters + + if prefs_Length is not integer { - Length := DftLength + prefs_Length := dft_Length } - if (Length < 1) { - Length = 1 + if (prefs_Length < 1) { + prefs_Length = 1 } - if NumPresses not in 1,2 - NumPresses := DftNumPresses + if prefs_NumPresses not in 1,2 + prefs_NumPresses := dft_NumPresses - If LearnMode not in On,Off - LearnMode := DftLearnMode + If prefs_LearnMode not in On,Off + prefs_LearnMode := dft_LearnMode - If LearnCount is not Integer + If prefs_LearnCount is not Integer { - LearnCount := DftLearnCount + prefs_LearnCount := dft_LearnCount } - if (LearnCount < 1) + if (prefs_LearnCount < 1) { - LearnCount = 1 + prefs_LearnCount = 1 } - if DftLearnLength is not Integer + if dft_LearnLength is not Integer { - DftLearnLength := Length + 2 + dft_LearnLength := prefs_Length + 2 } - if LearnLength is not Integer + if prefs_LearnLength is not Integer { - LearnLength := DftLearnLength - } else If ( LearnLength < ( Length + 1 ) ) + prefs_LearnLength := dft_LearnLength + } else If ( prefs_LearnLength < ( prefs_Length + 1 ) ) { - LearnLength := Length + 1 + prefs_LearnLength := prefs_Length + 1 } - if DisabledAutoCompleteKeys contains N - NumKeyMethod = Off + if prefs_DisabledAutoCompleteKeys contains N + g_NumKeyMethod = Off - IfNotEqual, ArrowKeyMethod, Off - If DisabledAutoCompleteKeys contains E - If DisabledAutoCompleteKeys contains S - If DisabledAutoCompleteKeys contains T - If DisabledAutoCompleteKeys contains R - If DisabledAutoCompleteKeys contains U - ArrowKeyMethod = Off + IfNotEqual, prefs_ArrowKeyMethod, Off + If prefs_DisabledAutoCompleteKeys contains E + If prefs_DisabledAutoCompleteKeys contains S + If prefs_DisabledAutoCompleteKeys contains T + If prefs_DisabledAutoCompleteKeys contains R + If prefs_DisabledAutoCompleteKeys contains U + prefs_ArrowKeyMethod = Off - If ArrowKeyMethod not in First,Off,LastWord,LastPosition + If prefs_ArrowKeyMethod not in First,Off,LastWord,LastPosition { - ArrowKeyMethod := DftArrowKeyMethod + prefs_ArrowKeyMethod := dft_ArrowKeyMethod } - If DetectMouseClickMove not in On,Off - DetectMouseClickMove := DftDetectMouseClickMove + If prefs_DetectMouseClickMove not in On,Off + prefs_DetectMouseClickMove := dft_DetectMouseClickMove - If NoBackSpace not in On,Off - NoBackSpace := DftNoBackSpace + If prefs_NoBackSpace not in On,Off + prefs_NoBackSpace := dft_NoBackSpace - If AutoSpace not in On,Off - AutoSpace := DftAutoSpace + If prefs_AutoSpace not in On,Off + prefs_AutoSpace := dft_AutoSpace - if SuppressMatchingWord not in On,Off - SuppressMatchingWord := DftSuppressMatchingWord + if prefs_SuppressMatchingWord not in On,Off + prefs_SuppressMatchingWord := dft_SuppressMatchingWord - if SendMethod not in 1,2,3,1C,2C,3C,4C - SendMethod := DftSendMethod + if prefs_SendMethod not in 1,2,3,1C,2C,3C,4C + prefs_SendMethod := dft_SendMethod ;SendPlay does not work when not running as Administrator, switch to SendInput If not A_IsAdmin { - IfEqual, SendMethod, 1 + IfEqual, prefs_SendMethod, 1 { - SendMethod = 2 - } else IfEqual, SendMethod, 1C + prefs_SendMethod = 2 + } else IfEqual, prefs_SendMethod, 1C { - SendMethod = 2C + prefs_SendMethod = 2C } } - IfEqual, TerminatingCharacters, - TerminatingCharacters := DftTerminatingCharacters + IfEqual, prefs_TerminatingCharacters, + prefs_TerminatingCharacters := dft_TerminatingCharacters - if ListBoxOffset is not Integer - ListBoxOffset := DftListBoxOffSet + if prefs_ListBoxOffset is not Integer + prefs_ListBoxOffset := dft_ListBoxOffSet - if ListBoxFontFixed not in On,Off - ListBoxFontFixed := DftListBoxFontFixed + if prefs_ListBoxFontFixed not in On,Off + prefs_ListBoxFontFixed := dft_ListBoxFontFixed - If ListBoxFontSize is not Integer + If prefs_ListBoxFontSize is not Integer { - ListBoxFontSize := DftListBoxFontSize + prefs_ListBoxFontSize := dft_ListBoxFontSize } - else IfLess, ListBoxFontSize, 2 + else IfLess, prefs_ListBoxFontSize, 2 { - ListBoxFontSize = 2 + prefs_ListBoxFontSize = 2 } - if DftListBoxCharacterWidth is not Integer + if dft_ListBoxCharacterWidth is not Integer { - DftListBoxCharacterWidth = + dft_ListBoxCharacterWidth = } - if ListBoxCharacterWidth is not Integer + if prefs_ListBoxCharacterWidth is not Integer { - ListBoxCharacterWidth := DftListBoxCharacterWidth + prefs_ListBoxCharacterWidth := dft_ListBoxCharacterWidth } - if ListBoxCharacterWidth is Integer + if prefs_ListBoxCharacterWidth is Integer { - ListBoxCharacterWidthComputed := ListBoxCharacterWidth + g_ListBoxCharacterWidthComputed := prefs_ListBoxCharacterWidth } else { - ListBoxCharacterWidthComputed := Ceil(ListBoxFontSize * 0.8) + g_ListBoxCharacterWidthComputed := Ceil(prefs_ListBoxFontSize * 0.8) } - If ListBoxOpacity is not Integer - ListBoxOpacity := DftListBoxOpacity + If prefs_ListBoxOpacity is not Integer + prefs_ListBoxOpacity := dft_ListBoxOpacity - IfLess, ListBoxOpacity, 0 - ListBoxOpacity = 0 - else IfGreater, ListBoxOpacity, 255 - ListBoxOpacity = 255 + IfLess, prefs_ListBoxOpacity, 0 + prefs_ListBoxOpacity = 0 + else IfGreater, prefs_ListBoxOpacity, 255 + prefs_ListBoxOpacity = 255 - If ListBoxRows is not Integer - ListBoxRows := DftListBoxRows + If prefs_ListBoxRows is not Integer + prefs_ListBoxRows := dft_ListBoxRows - IfLess, ListBoxRows, 3 - ListBoxRows = 3 - else IfGreater, ListBoxRows, 30 - ListBoxRows = 30 + IfLess, prefs_ListBoxRows, 3 + prefs_ListBoxRows = 3 + else IfGreater, prefs_ListBoxRows, 30 + prefs_ListBoxRows = 30 Return } ParseTerminatingCharacters() { - global TerminatingCharacters - global TerminatingCharactersParsed - global TerminatingEndKeys + global prefs_TerminatingCharacters + global g_TerminatingCharactersParsed + global g_TerminatingEndKeys - Loop, Parse, TerminatingCharacters + Loop, Parse, prefs_TerminatingCharacters { IfEqual, OpenWord, 1 { @@ -382,8 +393,8 @@ ParseTerminatingCharacters() IfNotEqual, Word, TempCharacters .= Word - TerminatingCharactersParsed := TempCharacters - TerminatingEndKeys := TempEndKeys + g_TerminatingCharactersParsed := TempCharacters + g_TerminatingEndKeys := TempEndKeys } SavePreferences(ByRef PrefsToSave) @@ -391,17 +402,24 @@ SavePreferences(ByRef PrefsToSave) global local index local element + local KeyName ValidatePreferences() for index, element in PrefsToSave { + if (substr(element, 1, 6) == "prefs_") + { + StringTrimLeft, KeyName, element, 6 + } else { + KeyName := element + } - If (%element% == Dft%element%) + If (%element% == dft_%KeyName%) { - IniDelete, %PrefsFile%,% PrefsSections[element], %element% + IniDelete, %g_PrefsFile%,% g_PrefsSections[KeyName], %KeyName% } else { - IniWrite,% %element%, %PrefsFile%,% PrefsSections[element], %element% + IniWrite,% %element%, %g_PrefsFile%,% g_PrefsSections[KeyName], %KeyName% } } @@ -414,26 +432,26 @@ ConstructHelpStrings() helpinfo_IncludeProgramExecutables= ( -;IncludeProgramExecutables is a list of executable (.exe) files that %ScriptTitle% should be enabled for. -;If one the executables matches the current program, %ScriptTitle% is enabled for that program. +;IncludeProgramExecutables is a list of executable (.exe) files that %g_ScriptTitle% should be enabled for. +;If one the executables matches the current program, %g_ScriptTitle% is enabled for that program. ) helpinfo_IncludeProgramTitles= ( -;IncludeProgramTitles is a list of strings (separated by | ) to find in the title of the window you want %ScriptTitle% enabled for. -;If one of the strings is found in the title, %ScriptTitle% is enabled for that window. +;IncludeProgramTitles is a list of strings (separated by | ) to find in the title of the window you want %g_ScriptTitle% enabled for. +;If one of the strings is found in the title, %g_ScriptTitle% is enabled for that window. ) helpinfo_ExcludeProgramExecutables= ( -;ExcludeProgramExecutables is a list of executable (.exe) files that %ScriptTitle% should be disabled for. -;If one the executables matches the current program, %ScriptTitle% is disabled for that program. +;ExcludeProgramExecutables is a list of executable (.exe) files that %g_ScriptTitle% should be disabled for. +;If one the executables matches the current program, %g_ScriptTitle% is disabled for that program. ) helpinfo_ExcludeProgramTitles= ( -;ExcludeProgramTitles is a list of strings (separated by | ) to find in the title of the window you want %ScriptTitle% disabled for. -;If one of the strings is found in the title, %ScriptTitle% is disabled for that window. +;ExcludeProgramTitles is a list of strings (separated by | ) to find in the title of the window you want %g_ScriptTitle% disabled for. +;If one of the strings is found in the title, %g_ScriptTitle% is disabled for that window. ) helpinfo_Length= @@ -497,13 +515,13 @@ helpinfo_DisabledAutoCompleteKeys= helpinfo_DetectMouseClickMove= ( ;DetectMouseClickMove is used to detect when the cursor is moved with the mouse. -; On - %ScriptTitle% will not work when used with an On-Screen keyboard. -; Off - %ScriptTitle% will not detect when the cursor is moved within the same line using the mouse, and scrolling the text will clear the list. +; On - %g_ScriptTitle% will not work when used with an On-Screen keyboard. +; Off - %g_ScriptTitle% will not detect when the cursor is moved within the same line using the mouse, and scrolling the text will clear the list. ) helpinfo_NoBackSpace= ( -;NoBackSpace is used to make %ScriptTitle% not backspace any of the previously typed characters +;NoBackSpace is used to make %g_ScriptTitle% not backspace any of the previously typed characters ;(ie, do not change the case of any previously typed characters). ; On - characters you have already typed will not be changed ; Off - characters you have already typed will be backspaced and replaced with the case of the word you have chosen. @@ -550,7 +568,7 @@ helpinfo_TerminatingCharacters= ;For support of special characters, remove the key that is used to type the diacritic symbol (or the character) from the right hand side. ;For example, if on your keyboard layout, " is used before typing ë, ; is used to type ñ, remove them from the right hand side. ; -;After this, %ScriptTitle% can recognize the special character. The side-effect is that, it cannot complete words typed after +;After this, %g_ScriptTitle% can recognize the special character. The side-effect is that, it cannot complete words typed after ;the symbol, (e.g. "word... ) If you need to complete a word after a quotation mark, first type two quotation marks "" then ;press left and type the word in the middle. ; @@ -560,7 +578,7 @@ helpinfo_TerminatingCharacters= ;{enter}{space}{bs}{esc}{tab}{Home}{End}{PgUp}{PdDn}{Up}{Dn}{Left}{Right}¿?¡!()$ ; ;Default setting: -;%DftTerminatingCharacters% +;%dft_TerminatingCharacters% ; ; More information on how to configure TerminatingCharacters: ;A list of keys may be found here: @@ -609,7 +627,7 @@ helpinfo_ListBoxCharacterWidth= ; 1. Changing the Font DPI in Windows ; 2. Changing the ListBoxFontFixed setting ; 3. Changing the ListBoxFontSize setting -;Leave this blank to let %ScriptTitle% try to compute the width. +;Leave this blank to let %g_ScriptTitle% try to compute the width. ) helpinfo_ListBoxOpacity= diff --git a/Source/Includes/Sending.ahk b/Source/Includes/Sending.ahk index 227de62..df07337 100644 --- a/Source/Includes/Sending.ahk +++ b/Source/Includes/Sending.ahk @@ -21,13 +21,13 @@ SendKey(Key) SendWord(WordIndex) { - global singlematch - global Word + global g_singlematch + global g_Word ;Send the word - sending := singlematch[WordIndex] + sending := g_singlematch[WordIndex] ; Update Typed Count UpdateWordCount(sending,0) - SendFull(sending, StrLen(Word)) + SendFull(sending, StrLen(g_Word)) ClearAllVars(true) Return } @@ -36,24 +36,24 @@ SendWord(WordIndex) SendFull(SendValue,BackSpaceLen) { - global SendMethod - global Active_id - global NoBackSpace - global AutoSpace + global g_Active_Id + global prefs_AutoSpace + global prefs_NoBackSpace + global prefs_SendMethod ; If we are not backspacing, remove the typed characters from the string to send - IfNotEqual, NoBackSpace, Off + IfNotEqual, prefs_NoBackSpace, Off StringTrimLeft, SendValue, SendValue, %BackSpaceLen% ; if autospace is on, add a space to the string to send - IfEqual, AutoSpace, On + IfEqual, prefs_AutoSpace, On SendValue .= A_Space - IfEqual, SendMethod, 1 + IfEqual, prefs_SendMethod, 1 { ; Shift key hits are here to account for an occassional bug which misses the first keys in SendPlay sending = {Shift Down}{Shift Up}{Shift Down}{Shift Up} - IfEqual, NoBackSpace, Off + IfEqual, prefs_NoBackSpace, Off sending .= "{BS " . BackSpaceLen . "}" sending .= "{Raw}" . SendValue @@ -61,17 +61,17 @@ SendFull(SendValue,BackSpaceLen) Return } - IfEqual, NoBackSpace, Off + IfEqual, prefs_NoBackSpace, Off sending = {BS %BackSpaceLen%}{Raw}%SendValue% Else sending = {Raw}%SendValue% - IfEqual, SendMethod, 2 + IfEqual, prefs_SendMethod, 2 { SendInput, %sending% ; First do the backspaces, Then send word (Raw because we want the string exactly as in wordlist.txt) Return } - IfEqual, SendMethod, 3 + IfEqual, prefs_SendMethod, 3 { SendEvent, %sending% ; First do the backspaces, Then send word (Raw because we want the string exactly as in wordlist.txt) Return @@ -82,26 +82,26 @@ SendFull(SendValue,BackSpaceLen) Clipboard := SendValue ClipWait, 0 - IfEqual, NoBackSpace, Off + IfEqual, prefs_NoBackSpace, Off sending = {BS %BackSpaceLen%}{Ctrl Down}v{Ctrl Up} Else sending = {Ctrl Down}v{Ctrl Up} - IfEqual, SendMethod, 1C + IfEqual, prefs_SendMethod, 1C { sending := "{Shift Down}{Shift Up}{Shift Down}{Shift Up}" . sending SendPlay, %sending% ; First do the backspaces, Then send word via clipboard } else { - IfEqual, SendMethod, 2C + IfEqual, prefs_SendMethod, 2C { SendInput, %sending% ; First do the backspaces, Then send word via clipboard } else { - IfEqual, SendMethod, 3C + IfEqual, prefs_SendMethod, 3C { SendEvent, %sending% ; First do the backspaces, Then send word via clipboard } Else { - ControlGetFocus, ActiveControl, ahk_id %Active_id% + ControlGetFocus, ActiveControl, ahk_id %g_Active_Id% IfNotEqual, ActiveControl, - ControlSend, %ActiveControl%, %sending%, ahk_id %Active_id% + ControlSend, %ActiveControl%, %sending%, ahk_id %g_Active_Id% } } } @@ -114,16 +114,16 @@ SendFull(SendValue,BackSpaceLen) SendCompatible(SendValue,ForceSendForInput) { - global SendMethod - global IgnoreSend + global g_IgnoreSend + global prefs_SendMethod IfEqual, ForceSendForInput, 1 { - IgnoreSend = + g_IgnoreSend = SendEvent, %SendValue% Return } - SendMethodLocal := SubStr(SendMethod, 1, 1) + SendMethodLocal := SubStr(prefs_SendMethod, 1, 1) IF ( ( SendMethodLocal = 1 ) || ( SendMethodLocal = 2 ) ) { SendInput, %SendValue% @@ -132,7 +132,7 @@ SendCompatible(SendValue,ForceSendForInput) IF ( ( SendMethodLocal = 3 ) || ( SendMethodLocal = 4 ) ) { - IgnoreSend = 1 + g_IgnoreSend = 1 SendEvent, %SendValue% Return } diff --git a/Source/Includes/Settings.ahk b/Source/Includes/Settings.ahk index 451c33d..3e4987e 100644 --- a/Source/Includes/Settings.ahk +++ b/Source/Includes/Settings.ahk @@ -3,30 +3,29 @@ LaunchSettings: Menu, Tray, Disable, Settings -InSettings := true +g_InSettings := true ClearAllVars(True) -Menu_OldLearnCount := LearnCount +Menu_OldLearnCount := prefs_LearnCount Menu_ChangedPrefs := Object() ConstructGui() Return ConstructGui() { - Global ArrowKeyMethod, AutoSpace, DetectMouseClickMove, DisabledAutoCompleteKeys, DoNotLearnStrings + Global prefs_ArrowKeyMethod, prefs_AutoSpace, prefs_DetectMouseClickMove, prefs_DisabledAutoCompleteKeys, prefs_DoNotLearnStrings Global helpinfo_ArrowKeyMethod, helpinfo_AutoSpace, helpinfo_DetectMouseClickMove, helpinfo_DisabledAutoCompleteKeys, helpinfo_DoNotLearnStrings - Global ForceNewWordCharacters, LearnCount, LearnLength, LearnMode, Length + Global prefs_ForceNewWordCharacters, prefs_LearnCount, prefs_LearnLength, prefs_LearnMode, prefs_Length Global helpinfo_ForceNewWordCharacters, helpinfo_LearnCount, helpinfo_LearnLength, helpinfo_LearnMode, helpinfo_Length - Global NoBackSpace, SendMethod, SuppressMatchingWord, TerminatingCharacters + Global prefs_NoBackSpace, prefs_SendMethod, prefs_SuppressMatchingWord, prefs_TerminatingCharacters Global helpinfo_NoBackSpace, helpinfo_SendMethod, helpinfo_SuppressMatchingWord, helpinfo_TerminatingCharacters - Global ExcludeProgramExecutables, ExcludeProgramTitles, IncludeProgramExecutables, IncludeProgramTitles, HelperWindowProgramExecutables, HelperWindowProgramTitles + Global prefs_ExcludeProgramExecutables, prefs_ExcludeProgramTitles, prefs_IncludeProgramExecutables, prefs_IncludeProgramTitles, prefs_HelperWindowProgramExecutables, prefs_HelperWindowProgramTitles Global helpinfo_ExcludeProgramExecutables, helpinfo_ExcludeProgramTitles, helpinfo_IncludeProgramExecutables, helpinfo_IncludeProgramTitles, helpinfo_HelperWindowProgramExecutables, helpinfo_HelperWindowProgramTitles - Global ListBoxCharacterWidth, ListBoxFontFixed, ListBoxFontOverride, ListBoxFontSize, ListBoxOffset, ListBoxOpacity, ListBoxRows + Global prefs_ListBoxCharacterWidth, prefs_ListBoxFontFixed, prefs_ListBoxFontOverride, prefs_ListBoxFontSize, prefs_ListBoxOffset, prefs_ListBoxOpacity, prefs_ListBoxRows Global helpinfo_ListBoxCharacterWidth, helpinfo_ListBoxFontFixed, helpinfo_ListBoxFontOverride, helpinfo_ListBoxFontSize, helpinfo_ListBoxOffset, helpinfo_ListBoxOpacity, helpinfo_ListBoxRows Global Menu_ArrowKeyMethodOptionsText, Menu_CaseCorrection, Menu_ListBoxOpacityUpDown, Menu_SendMethodOptionsCode, Menu_SendMethodC Global Menu_CtrlEnter, Menu_CtrlSpace, Menu_Enter, Menu_NumberKeys, Menu_RightArrow, Menu_Tab - Global MenuAdvGuiHeight, MenuGuiWidth, VisitForum - Global Length - Global WM_SETCURSOR, WM_MOUSEMOVE, ScriptTitle + Global g_WM_SETCURSOR, g_WM_MOUSEMOVE, g_ScriptTitle + static VisitForum Menu_CaseCorrection= Menu_ArrowKeyMethodOptionsText= @@ -34,12 +33,12 @@ ConstructGui() MenuFontList:=Writer_enumFonts() ; see note at function for credit ; Call "HandleMessage" when script receives WM_SETCURSOR message - WM_SETCURSOR = 0x20 - OnMessage( WM_SETCURSOR, "HandleMessage" ) + g_WM_SETCURSOR = 0x20 + OnMessage( g_WM_SETCURSOR, "HandleMessage" ) ; Call "HandleMessage" when script receives WM_MOUSEMOVE message - WM_MOUSEMOVE = 0x200 - OnMessage( WM_MOUSEMOVE, "HandleMessage" ) + g_WM_MOUSEMOVE = 0x200 + OnMessage( g_WM_MOUSEMOVE, "HandleMessage" ) MenuGuiWidth=700 MenuGuiHeight=480 @@ -54,9 +53,6 @@ ConstructGui() MenuHelpIndentY = 0 MenuRowHeight := (MenuGuiHeight - ((MenuGuiRows +1 ) * MenuSeparatorY ))/MenuGuiRows - - MenuAdvancedSettingsTextHeight = 15 - MenuAdvGuiHeight := MenuGuiHeight + MenuAdvancedSettingsTextHeight + MenuSeparatorY + ( 2 * ( MenuSeparatorY + MenuRowHeight) ) MenuTextMenuRowY := (MenuRowHeight - 6 ) / 3 @@ -104,9 +100,9 @@ ConstructGui() Gui, MenuGui:Add, GroupBox, x%MenuGroup1BoxX% y%MenuRowY% w%MenuThreeColGroupWidth% h%MenuRowHeight% , Learn new words as you type Menu_LearnModeOptions=|On|Off| - StringReplace, Menu_LearnModeOptions, Menu_LearnModeOptions, |%LearnMode%|,|%LearnMode%|| + StringReplace, Menu_LearnModeOptions, Menu_LearnModeOptions, |%prefs_LearnMode%|,|%prefs_LearnMode%|| StringTrimLeft, Menu_LearnModeOptions, Menu_LearnModeOptions, 1 - Gui, MenuGui:Add, DDL, x%MenuGroup1EditX% y%MenuRowEditY% r5 vLearnMode gEditValue, %Menu_LearnModeOptions% + Gui, MenuGui:Add, DDL, x%MenuGroup1EditX% y%MenuRowEditY% r5 vprefs_LearnMode gEditValue, %Menu_LearnModeOptions% Gui, MenuGui:Font, cGreen Gui, MenuGui:Add, Text, x%MenuGroup1of3HelpX% y%MenuRowHelpY% vhelpinfo_LearnMode gHelpMe, %MenuGuiHelpIcon% Gui, MenuGui:Font, cBlack @@ -114,9 +110,9 @@ ConstructGui() Gui, MenuGui:Add, GroupBox, x%MenuGroup2of3BoxX% y%MenuRowY% w%MenuThreeColGroupWidth% h%MenuRowHeight% , Minimum length of word to learn Menu_LearnLengthOptions=|1|2|3|4|5|6|7|8|9|10|11|12|13|14|15| - StringReplace, Menu_LearnLengthOptions, Menu_LearnLengthOptions, |%LearnLength%|,|%LearnLength%|| + StringReplace, Menu_LearnLengthOptions, Menu_LearnLengthOptions, |%prefs_LearnLength%|,|%prefs_LearnLength%|| StringTrimLeft, Menu_LearnLengthOptions, Menu_LearnLengthOptions, 1 - Gui, MenuGui:Add, DDL, x%MenuGroup2of3EditX% y%MenuRowEditY% r5 vLearnLength gEditValue, %Menu_LearnLengthOptions% + Gui, MenuGui:Add, DDL, x%MenuGroup2of3EditX% y%MenuRowEditY% r5 vprefs_LearnLength gEditValue, %Menu_LearnLengthOptions% Gui, MenuGui:Font, cGreen Gui, MenuGui:Add, Text, x%MenuGroup2of3HelpX% y%MenuRowHelpY% vhelpinfo_LearnLength gHelpMe, %MenuGuiHelpIcon% Gui, MenuGui:Font, cBlack @@ -124,9 +120,9 @@ ConstructGui() Gui, MenuGui:Add, GroupBox, x%MenuGroup3of3BoxX% y%MenuRowY% w%MenuThreeColGroupWidth% h%MenuRowHeight%, Add to wordlist after X times Menu_LearnCountOptions=|1|2|3|4|5|6|7|8|9|10|11|12|13|14|15| - StringReplace, Menu_LearnCountOptions, Menu_LearnCountOptions, |%LearnCount%|,|%LearnCount%|| + StringReplace, Menu_LearnCountOptions, Menu_LearnCountOptions, |%prefs_LearnCount%|,|%prefs_LearnCount%|| StringTrimLeft, Menu_LearnCountOptions, Menu_LearnCountOptions, 1 - Gui, MenuGui:Add, DDL, x%MenuGroup3of3EditX% y%MenuRowEditY% r5 vLearnCount gEditValue, %Menu_LearnCountOptions% + Gui, MenuGui:Add, DDL, x%MenuGroup3of3EditX% y%MenuRowEditY% r5 vprefs_LearnCount gEditValue, %Menu_LearnCountOptions% Gui, MenuGui:Font, cGreen Gui, MenuGui:Add, Text, x%MenuGroup3of3HelpX% y%MenuRowHelpY% vhelpinfo_LearnCount gHelpMe, %MenuGuiHelpIcon% Gui, MenuGui:Font, cBlack @@ -138,18 +134,18 @@ ConstructGui() Gui, MenuGui:Add, GroupBox, x%MenuGroup1BoxX% y%MenuRowY% w%MenuThreeColGroupWidth% h%MenuRowHeight% , Maximum number of results to show Menu_ListBoxRowsOptions=|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20| - StringReplace, Menu_ListBoxRowsOptions, Menu_ListBoxRowsOptions, |%ListBoxRows%|,|%ListBoxRows%|| + StringReplace, Menu_ListBoxRowsOptions, Menu_ListBoxRowsOptions, |%prefs_ListBoxRows%|,|%prefs_ListBoxRows%|| StringTrimLeft, Menu_ListBoxRowsOptions, Menu_ListBoxRowsOptions, 1 - Gui, MenuGui:Add, DDL, x%MenuGroup1EditX% y%MenuRowEditY% r5 vListBoxRows gEditValue, %Menu_ListBoxRowsOptions% + Gui, MenuGui:Add, DDL, x%MenuGroup1EditX% y%MenuRowEditY% r5 vprefs_ListBoxRows gEditValue, %Menu_ListBoxRowsOptions% Gui, MenuGui:Font, cGreen Gui, MenuGui:Add, Text, x%MenuGroup1of3HelpX% y%MenuRowHelpY% vhelpinfo_ListBoxRows gHelpMe, %MenuGuiHelpIcon% Gui, MenuGui:Font, cBlack Gui, MenuGui:Add, GroupBox, x%MenuGroup2of3BoxX% y%MenuRowY% w%MenuThreeColGroupWidth% h%MenuRowHeight% , Show wordlist after X characters Menu_LengthOptions=|1|2|3|4|5|6|7|8|9|10|11|12|13|14|15| - StringReplace, Menu_LengthOptions, Menu_LengthOptions, |%Length%|,|%Length%|| + StringReplace, Menu_LengthOptions, Menu_LengthOptions, |%prefs_Length%|,|%prefs_Length%|| StringTrimLeft, Menu_LengthOptions, Menu_LengthOptions, 1 - Gui, MenuGui:Add, DDL, x%MenuGroup2of3EditX% y%MenuRowEditY% r5 vLength gEditValue, %Menu_LengthOptions% + Gui, MenuGui:Add, DDL, x%MenuGroup2of3EditX% y%MenuRowEditY% r5 vprefs_Length gEditValue, %Menu_LengthOptions% Gui, MenuGui:Font, cGreen Gui, MenuGui:Add, Text, x%MenuGroup2of3HelpX% y%MenuRowHelpY% vhelpinfo_Length gHelpMe, %MenuGuiHelpIcon% Gui, MenuGui:Font, cBlack @@ -160,7 +156,7 @@ ConstructGui() Menu_SendMethodOptionsCode=1|2|3|1C|2C|3C|4C Loop, parse, Menu_SendMethodOptionsCode, | { - If (SendMethod = A_LoopField) + If (prefs_SendMethod = A_LoopField) Menu_SendCount:=A_Index } @@ -193,7 +189,7 @@ ConstructGui() Menu_CheckedR=Checked Menu_CheckedN=Checked Menu_CheckedU=Checked - Loop, parse, DisabledAutoCompleteKeys + Loop, parse, prefs_DisabledAutoCompleteKeys { If (A_LoopField = "E") Menu_CheckedE = @@ -229,13 +225,13 @@ ConstructGui() Menu_ArrowKeyMethodOptions .= A_LoopField "|" StringSplit, Split, A_LoopField, - Split1 := Trim(Split1) - If (Split1 = ArrowKeyMethod) + If (Split1 = prefs_ArrowKeyMethod) { Menu_ArrowKeyMethodOptions .= "|" } } - Gui, MenuGui:Add, DDL, x%MenuGroup2of2EditX% y%MenuRowEditY% w%MenuTwoColEditWidth% r5 vArrowKeyMethod gEditValue altsubmit, %Menu_ArrowKeyMethodOptions% + Gui, MenuGui:Add, DDL, x%MenuGroup2of2EditX% y%MenuRowEditY% w%MenuTwoColEditWidth% r5 vprefs_ArrowKeyMethod gEditValue altsubmit, %Menu_ArrowKeyMethodOptions% Gui, MenuGui:Font, cGreen Gui, MenuGui:Add, Text, x%MenuGroup2of2HelpX% y%MenuRowHelpY% vhelpinfo_ArrowKeyMethod gHelpMe, %MenuGuiHelpIcon% Gui, MenuGui:Font, cBlack @@ -247,9 +243,9 @@ ConstructGui() Gui, MenuGui:Add, GroupBox, x%MenuGroup1BoxX% y%MenuRowY% w%MenuThreeColGroupWidth% h%MenuRowHeight% , Case correction Menu_CaseCorrectionOptions=|On|Off| - If (NoBackSpace = "on") + If (prefs_NoBackSpace = "on") Menu_CaseCorrection=Off - Else If (NoBackSpace = "off") + Else If (prefs_NoBackSpace = "off") Menu_CaseCorrection=On StringReplace, Menu_CaseCorrectionOptions, Menu_CaseCorrectionOptions, |%Menu_CaseCorrection%|,|%Menu_CaseCorrection%|| StringTrimLeft, Menu_CaseCorrectionOptions, Menu_CaseCorrectionOptions, 1 @@ -261,18 +257,18 @@ ConstructGui() Gui, MenuGui:Add, GroupBox, x%MenuGroup2of3BoxX% y%MenuRowY% w%MenuThreeColGroupWidth% h%MenuRowHeight% , Monitor mouse clicks Menu_DetectMouseClickMoveOptions=|On|Off| - StringReplace, Menu_DetectMouseClickMoveOptions, Menu_DetectMouseClickMoveOptions, |%DetectMouseClickMove%|,|%DetectMouseClickMove%|| + StringReplace, Menu_DetectMouseClickMoveOptions, Menu_DetectMouseClickMoveOptions, |%prefs_DetectMouseClickMove%|,|%prefs_DetectMouseClickMove%|| StringTrimLeft, Menu_DetectMouseClickMoveOptions, Menu_DetectMouseClickMoveOptions, 1 - Gui, MenuGui:Add, DDL, x%MenuGroup2of3EditX% y%MenuRowEditY% r5 vDetectMouseClickMove gEditValue, %Menu_DetectMouseClickMoveOptions% + Gui, MenuGui:Add, DDL, x%MenuGroup2of3EditX% y%MenuRowEditY% r5 vprefs_DetectMouseClickMove gEditValue, %Menu_DetectMouseClickMoveOptions% Gui, MenuGui:Font, cGreen Gui, MenuGui:Add, Text, x%MenuGroup2of3HelpX% y%MenuRowHelpY% vhelpinfo_DetectMouseClickMove gHelpMe, %MenuGuiHelpIcon% Gui, MenuGui:Font, cBlack Gui, MenuGui:Add, GroupBox, x%MenuGroup3of3BoxX% y%MenuRowY% w%MenuThreeColGroupWidth% h%MenuRowHeight% , Type space after autcomplete Menu_AutoSpaceOptions=|On|Off| - StringReplace, Menu_AutoSpaceOptions, Menu_AutoSpaceOptions, |%AutoSpace%|,|%AutoSpace%|| + StringReplace, Menu_AutoSpaceOptions, Menu_AutoSpaceOptions, |%prefs_AutoSpace%|,|%prefs_AutoSpace%|| StringTrimLeft, Menu_AutoSpaceOptions, Menu_AutoSpaceOptions, 1 - Gui, MenuGui:Add, DDL, x%MenuGroup3of3EditX% y%MenuRowEditY% r5 vAutoSpace gEditValue, %Menu_AutoSpaceOptions% + Gui, MenuGui:Add, DDL, x%MenuGroup3of3EditX% y%MenuRowEditY% r5 vprefs_AutoSpace gEditValue, %Menu_AutoSpaceOptions% Gui, MenuGui:Font, cGreen Gui, MenuGui:Add, Text, x%MenuGroup3of3HelpX% y%MenuRowHelpY% vhelpinfo_AutoSpace gHelpMe, %MenuGuiHelpIcon% Gui, MenuGui:Font, cBlack @@ -283,16 +279,16 @@ ConstructGui() MenuRowEditY := MenuRowY + MenuEditIndentY Gui, MenuGui:Add, GroupBox, x%MenuGroup1BoxX% y%MenuRowY% w%MenuTwoColGroupWidth% h%MenuRowHeight% , Sub-strings to not learn - Gui, MenuGui:Add, Edit, x%MenuGroup1EditX% y%MenuRowEditY% w%MenuTwoColEditWidth% vDoNotLearnStrings Password gEditValue, %DoNotLearnStrings% + Gui, MenuGui:Add, Edit, x%MenuGroup1EditX% y%MenuRowEditY% w%MenuTwoColEditWidth% vprefs_DoNotLearnStrings Password gEditValue, %prefs_DoNotLearnStrings% Gui, MenuGui:Font, cGreen Gui, MenuGui:Add, Text, x%MenuGroup1of2HelpX% y%MenuRowHelpY% vhelpinfo_DoNotLearnStrings gHelpMe, %MenuGuiHelpIcon% Gui, MenuGui:Font, cBlack Gui, MenuGui:Add, GroupBox, x%MenuGroup2of2BoxX% y%MenuRowY% w%MenuTwoColGroupWidth% h%MenuRowHeight% , Suppress matching word Menu_SuppressMatchingWordOptions=|On|Off| - StringReplace, Menu_SuppressMatchingWordOptions, Menu_SuppressMatchingWordOptions, |%SuppressMatchingWord%|,|%SuppressMatchingWord%|| + StringReplace, Menu_SuppressMatchingWordOptions, Menu_SuppressMatchingWordOptions, |%prefs_SuppressMatchingWord%|,|%prefs_SuppressMatchingWord%|| StringTrimLeft, Menu_SuppressMatchingWordOptions, Menu_SuppressMatchingWordOptions, 1 - Gui, MenuGui:Add, DDL, x%MenuGroup2of2EditX% y%MenuRowEditY% w%MenuTwoColEditWidth% vSuppressMatchingWord gEditValue, %Menu_SuppressMatchingWordOptions% + Gui, MenuGui:Add, DDL, x%MenuGroup2of2EditX% y%MenuRowEditY% w%MenuTwoColEditWidth% vprefs_SuppressMatchingWord gEditValue, %Menu_SuppressMatchingWordOptions% Gui, MenuGui:Font, cGreen Gui, MenuGui:Add, Text, x%MenuGroup2of2HelpX% y%MenuRowHelpY% vhelpinfo_SuppressMatchingWord gHelpMe, %MenuGuiHelpIcon% Gui, MenuGui:Font, cBlack @@ -310,27 +306,27 @@ ConstructGui() Gui, MenuGui:Add, GroupBox, x%MenuGroup1BoxX% y%MenuRowY% w%MenuThreeColGroupWidth% h%MenuRowHeight% , List appears X pixels below cursor Menu_ListBoxOffsetOptions=|1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20|21|22|23|24|25|26|27|28|29|30|31|32 - StringReplace, Menu_ListBoxOffsetOptions, Menu_ListBoxOffsetOptions, |%ListBoxOffset%|,|%ListBoxOffset%|| + StringReplace, Menu_ListBoxOffsetOptions, Menu_ListBoxOffsetOptions, |%prefs_ListBoxOffset%|,|%prefs_ListBoxOffset%|| StringTrimLeft, Menu_ListBoxOffsetOptions, Menu_ListBoxOffsetOptions, 1 - Gui, MenuGui:Add, DDL, x%MenuGroup1EditX% y%MenuRowEditY% r5 vListBoxOffset gEditValue, %Menu_ListBoxOffsetOptions% + Gui, MenuGui:Add, DDL, x%MenuGroup1EditX% y%MenuRowEditY% r5 vprefs_ListBoxOffset gEditValue, %Menu_ListBoxOffsetOptions% Gui, MenuGui:Font, cGreen Gui, MenuGui:Add, Text, x%MenuGroup1of3HelpX% y%MenuRowHelpY% vhelpinfo_ListBoxOffset gHelpMe, %MenuGuiHelpIcon% Gui, MenuGui:Font, cBlack Gui, MenuGui:Add, GroupBox, x%MenuGroup2of3BoxX% y%MenuRowY% w%MenuThreeColGroupWidth% h%MenuRowHeight% , Fixed width font in list Menu_ListBoxFontFixedOptions=|On|Off| - StringReplace, Menu_ListBoxFontFixedOptions, Menu_ListBoxFontFixedOptions, |%ListBoxFontFixed%|,|%ListBoxFontFixed%|| + StringReplace, Menu_ListBoxFontFixedOptions, Menu_ListBoxFontFixedOptions, |%prefs_ListBoxFontFixed%|,|%prefs_ListBoxFontFixed%|| StringTrimLeft, Menu_ListBoxFontFixedOptions, Menu_ListBoxFontFixedOptions, 1 - Gui, MenuGui:Add, DDL, x%MenuGroup2of3EditX% y%MenuRowEditY% r5 vListBoxFontFixed gEditValue, %Menu_ListBoxFontFixedOptions% + Gui, MenuGui:Add, DDL, x%MenuGroup2of3EditX% y%MenuRowEditY% r5 vprefs_ListBoxFontFixed gEditValue, %Menu_ListBoxFontFixedOptions% Gui, MenuGui:Font, cGreen Gui, MenuGui:Add, Text, x%MenuGroup2of3HelpX% y%MenuRowHelpY% vhelpinfo_ListBoxFontFixed gHelpMe, %MenuGuiHelpIcon% Gui, MenuGui:Font, cBlack Gui, MenuGui:Add, GroupBox, x%MenuGroup3of3BoxX% y%MenuRowY% w%MenuThreeColGroupWidth% h%MenuRowHeight% , Font size in list Menu_ListBoxFontSizeOptions=|8|9|10|11|12|13|14|15|16|17|18|19|20| - StringReplace, Menu_ListBoxFontSizeOptions, Menu_ListBoxFontSizeOptions, |%ListBoxFontSize%|,|%ListBoxFontSize%|| + StringReplace, Menu_ListBoxFontSizeOptions, Menu_ListBoxFontSizeOptions, |%prefs_ListBoxFontSize%|,|%prefs_ListBoxFontSize%|| StringTrimLeft, Menu_ListBoxFontSizeOptions, Menu_ListBoxFontSizeOptions, 1 - Gui, MenuGui:Add, DDL, x%MenuGroup3of3EditX% y%MenuRowEditY% r5 vListBoxFontSize gEditValue, %Menu_ListBoxFontSizeOptions% + Gui, MenuGui:Add, DDL, x%MenuGroup3of3EditX% y%MenuRowEditY% r5 vprefs_ListBoxFontSize gEditValue, %Menu_ListBoxFontSizeOptions% Gui, MenuGui:Font, cGreen Gui, MenuGui:Add, Text, x%MenuGroup3of3HelpX% y%MenuRowHelpY% vhelpinfo_ListBoxFontSize gHelpMe, %MenuGuiHelpIcon% Gui, MenuGui:Font, cBlack @@ -341,17 +337,17 @@ ConstructGui() Gui, MenuGui:Add, GroupBox, x%MenuGroup1BoxX% y%MenuRowY% w%MenuThreeColGroupWidth% h%MenuRowHeight% , List opacity - Gui, MenuGui:Add, Edit, xp+10 yp+20 w%MenuThreeColEditWidth% vListBoxOpacity gEditValue, %ListBoxOpacity% - Gui, MenuGui:Add, UpDown, xp+10 yp+20 w%MenuThreeColEditWidth% vMenu_ListBoxOpacityUpDown Range0-255, %ListBoxOpacity% + Gui, MenuGui:Add, Edit, xp+10 yp+20 w%MenuThreeColEditWidth% vprefs_ListBoxOpacity gEditValue, %prefs_ListBoxOpacity% + Gui, MenuGui:Add, UpDown, xp+10 yp+20 w%MenuThreeColEditWidth% vMenu_ListBoxOpacityUpDown Range0-255, %prefs_ListBoxOpacity% Gui, MenuGui:Font, cGreen Gui, MenuGui:Add, Text, x%MenuGroup1of3HelpX% y%MenuRowHelpY% vhelpinfo_ListBoxOpacity gHelpMe, %MenuGuiHelpIcon% Gui, MenuGui:Font, cBlack Gui, MenuGui:Add, GroupBox, x%MenuGroup2of3BoxX% y%MenuRowY% w%MenuThreeColGroupWidth% h%MenuRowHeight% , List character width override Menu_ListBoxCharacterWidthOptions=||5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20| - StringReplace, Menu_ListBoxCharacterWidthOptions, Menu_ListBoxCharacterWidthOptions, |%ListBoxCharacterWidth%|,|%ListBoxCharacterWidth%|| + StringReplace, Menu_ListBoxCharacterWidthOptions, Menu_ListBoxCharacterWidthOptions, |%prefs_ListBoxCharacterWidth%|,|%prefs_ListBoxCharacterWidth%|| StringTrimLeft, Menu_ListBoxCharacterWidthOptions, Menu_ListBoxCharacterWidthOptions, 1 - Gui, MenuGui:Add, DDL, x%MenuGroup2of3EditX% y%MenuRowEditY% r5 vListBoxCharacterWidth gEditValue, %Menu_ListBoxCharacterWidthOptions% + Gui, MenuGui:Add, DDL, x%MenuGroup2of3EditX% y%MenuRowEditY% r5 vprefs_ListBoxCharacterWidth gEditValue, %Menu_ListBoxCharacterWidthOptions% Gui, MenuGui:Font, cGreen Gui, MenuGui:Add, Text, x%MenuGroup2of3HelpX% y%MenuRowHelpY% vhelpinfo_ListBoxCharacterWidth gHelpMe, %MenuGuiHelpIcon% Gui, MenuGui:Font, cBlack @@ -360,8 +356,8 @@ ConstructGui() MenuFontList := "|" . MenuFontList . "|" sort, MenuFontList, D| If (MenuListBoxFont = "") or (MenuListBoxFont = " ") - StringReplace, MenuFontList, MenuFontList, |%ListBoxFontOverride%|, |%ListBoxFontOverride%|| - Gui, MenuGui:Add, DDL, x%MenuGroup3of3EditX% y%MenuRowEditY% r10 w200 vListBoxFontOverride gEditValue, %MenuFontList% + StringReplace, MenuFontList, MenuFontList, |%prefs_ListBoxFontOverride%|, |%prefs_ListBoxFontOverride%|| + Gui, MenuGui:Add, DDL, x%MenuGroup3of3EditX% y%MenuRowEditY% r10 w200 vprefs_ListBoxFontOverride gEditValue, %MenuFontList% Gui, MenuGui:Font, cGreen Gui, MenuGui:Add, Text, x%MenuGroup3of3HelpX% y%MenuRowHelpY% vhelpinfo_ListBoxFontOverride gHelpMe, %MenuGuiHelpIcon% Gui, MenuGui:Font, cBlack @@ -378,8 +374,8 @@ ConstructGui() MenuRowHelpY := MenuRowY - MenuHelpIndentY MenuRowEditY := MenuRowY + MenuEditIndentY - Gui, MenuGui:Add, GroupBox, x%MenuGroup1BoxX% y%MenuRowY% w%MenuOneColGroupWidth% h%MenuRowHeight% , Window titles you want %ScriptTitle% enabled for - Gui, MenuGui:Add, Edit, x%MenuGroup1EditX% y%MenuRowEditY% w%MenuOneColEditWidthEdit% vIncludeProgramTitles gEditValue, %IncludeProgramTitles% + Gui, MenuGui:Add, GroupBox, x%MenuGroup1BoxX% y%MenuRowY% w%MenuOneColGroupWidth% h%MenuRowHeight% , Window titles you want %g_ScriptTitle% enabled for + Gui, MenuGui:Add, Edit, x%MenuGroup1EditX% y%MenuRowEditY% w%MenuOneColEditWidthEdit% vprefs_IncludeProgramTitles gEditValue, %prefs_IncludeProgramTitles% Gui, MenuGui:Add, Button, x%MenuOneColEditButton% yp w130 gSetEnableTitles, Edit Gui, MenuGui:Font, cGreen Gui, MenuGui:Add, Text, x%MenuGroup1of1HelpX% y%MenuRowHelpY% vhelpinfo_IncludeProgramTitles gHelpMe, %MenuGuiHelpIcon% @@ -389,8 +385,8 @@ ConstructGui() MenuRowHelpY := MenuRowY - MenuHelpIndentY MenuRowEditY := MenuRowY + MenuEditIndentY - Gui, MenuGui:Add, GroupBox, x%MenuGroup1BoxX% y%MenuRowY% w%MenuOneColGroupWidth% h%MenuRowHeight% , Window titles you want %ScriptTitle% disabled for - Gui, MenuGui:Add, Edit, x%MenuGroup1EditX% y%MenuRowEditY% w%MenuOneColEditWidthEdit% vExcludeProgramTitles gEditValue, %ExcludeProgramTitles% + Gui, MenuGui:Add, GroupBox, x%MenuGroup1BoxX% y%MenuRowY% w%MenuOneColGroupWidth% h%MenuRowHeight% , Window titles you want %g_ScriptTitle% disabled for + Gui, MenuGui:Add, Edit, x%MenuGroup1EditX% y%MenuRowEditY% w%MenuOneColEditWidthEdit% vprefs_ExcludeProgramTitles gEditValue, %prefs_ExcludeProgramTitles% Gui, MenuGui:Add, Button, x%MenuOneColEditButton% yp w130 gSetDisableTitles, Edit Gui, MenuGui:Font, cGreen Gui, MenuGui:Add, Text, x%MenuGroup1of1HelpX% y%MenuRowHelpY% vhelpinfo_ExcludeProgramTitles gHelpMe, %MenuGuiHelpIcon% @@ -400,8 +396,8 @@ ConstructGui() MenuRowHelpY := MenuRowY - MenuHelpIndentY MenuRowEditY := MenuRowY + MenuEditIndentY - Gui, MenuGui:Add, GroupBox, x%MenuGroup1BoxX% y%MenuRowY% w%MenuOneColGroupWidth% h%MenuRowHeight% , Processes you want %ScriptTitle% enabled for - Gui, MenuGui:Add, Edit, x%MenuGroup1EditX% y%MenuRowEditY% w%MenuOneColEditWidthEdit% vIncludeProgramExecutables gEditValue, %IncludeProgramExecutables% + Gui, MenuGui:Add, GroupBox, x%MenuGroup1BoxX% y%MenuRowY% w%MenuOneColGroupWidth% h%MenuRowHeight% , Processes you want %g_ScriptTitle% enabled for + Gui, MenuGui:Add, Edit, x%MenuGroup1EditX% y%MenuRowEditY% w%MenuOneColEditWidthEdit% vprefs_IncludeProgramExecutables gEditValue, %prefs_IncludeProgramExecutables% Gui, MenuGui:Add, Button, x%MenuOneColEditButton% yp w130 gSetEnableProcess, Edit Gui, MenuGui:Font, cGreen Gui, MenuGui:Add, Text, x%MenuGroup1of1HelpX% y%MenuRowHelpY% vhelpinfo_IncludeProgramExecutables gHelpMe, %MenuGuiHelpIcon% @@ -411,8 +407,8 @@ ConstructGui() MenuRowHelpY := MenuRowY - MenuHelpIndentY MenuRowEditY := MenuRowY + MenuEditIndentY - Gui, MenuGui:Add, GroupBox, x%MenuGroup1BoxX% y%MenuRowY% w%MenuOneColGroupWidth% h%MenuRowHeight% , Processes you want %ScriptTitle% disabled for - Gui, MenuGui:Add, Edit, x%MenuGroup1EditX% y%MenuRowEditY% w%MenuOneColEditWidthEdit% vExcludeProgramExecutables gEditValue, %ExcludeProgramExecutables% + Gui, MenuGui:Add, GroupBox, x%MenuGroup1BoxX% y%MenuRowY% w%MenuOneColGroupWidth% h%MenuRowHeight% , Processes you want %g_ScriptTitle% disabled for + Gui, MenuGui:Add, Edit, x%MenuGroup1EditX% y%MenuRowEditY% w%MenuOneColEditWidthEdit% vprefs_ExcludeProgramExecutables gEditValue, %prefs_ExcludeProgramExecutables% Gui, MenuGui:Add, Button, x%MenuOneColEditButton% yp w130 gSetDisableProcess, Edit Gui, MenuGui:Font, cGreen Gui, MenuGui:Add, Text, x%MenuGroup1of1HelpX% y%MenuRowHelpY% vhelpinfo_ExcludeProgramExecutables gHelpMe, %MenuGuiHelpIcon% @@ -425,7 +421,7 @@ ConstructGui() ;HelperWindowProgramTitles Gui, MenuGui:Add, GroupBox, x%MenuGroup1BoxX% y%MenuRowY% w%MenuOneColGroupWidth% h%MenuRowHeight% , Window titles you want the helper window enabled for - Gui, MenuGui:Add, Edit, x%MenuGroup1EditX% y%MenuRowEditY% w%MenuOneColEditWidthEdit% vHelperWindowProgramTitles gEditValue, %HelperWindowProgramTitles% + Gui, MenuGui:Add, Edit, x%MenuGroup1EditX% y%MenuRowEditY% w%MenuOneColEditWidthEdit% vprefs_HelperWindowProgramTitles gEditValue, %prefs_HelperWindowProgramTitles% Gui, MenuGui:Add, Button, x%MenuOneColEditButton% yp w130 gSetHelpTitles, Edit Gui, MenuGui:Font, cGreen Gui, MenuGui:Add, Text, x%MenuGroup1of1HelpX% y%MenuRowHelpY% vhelpinfo_HelperWindowProgramTitles gHelpMe, %MenuGuiHelpIcon% @@ -438,7 +434,7 @@ ConstructGui() ;HelperWindowProgramExecutables Gui, MenuGui:Add, GroupBox, x%MenuGroup1BoxX% y%MenuRowY% w%MenuOneColGroupWidth% h%MenuRowHeight% , Processes you want the helper window enabled for - Gui, MenuGui:Add, Edit, x%MenuGroup1EditX% y%MenuRowEditY% w%MenuOneColEditWidthEdit% vHelperWindowProgramExecutables gEditValue, %HelperWindowProgramExecutables% + Gui, MenuGui:Add, Edit, x%MenuGroup1EditX% y%MenuRowEditY% w%MenuOneColEditWidthEdit% vprefs_HelperWindowProgramExecutables gEditValue, %prefs_HelperWindowProgramExecutables% Gui, MenuGui:Add, Button, x%MenuOneColEditButton% yp w130 gSetHelpProcess, Edit Gui, MenuGui:Font, cGreen Gui, MenuGui:Add, Text, x%MenuGroup1of1HelpX% y%MenuRowHelpY% vhelpinfo_HelperWindowProgramExecutables gHelpMe, %MenuGuiHelpIcon% @@ -453,7 +449,7 @@ ConstructGui() MenuRowEditY := MenuRowY + MenuEditIndentY Gui, MenuGui:Add, GroupBox, x%MenuGroup1BoxX% y%MenuRowY% w%MenuOneColGroupWidth% h%MenuRowHeight% , Terminating Characters (see http://www.autohotkey.com/docs/KeyList.htm) - Gui, MenuGui:Add, Edit, x%MenuGroup1EditX% y%MenuRowEditY% w%MenuOneColEditWidth% vTerminatingCharacters gEditValue, %TerminatingCharacters% + Gui, MenuGui:Add, Edit, x%MenuGroup1EditX% y%MenuRowEditY% w%MenuOneColEditWidth% vprefs_TerminatingCharacters gEditValue, %prefs_TerminatingCharacters% Gui, MenuGui:Font, cGreen Gui, MenuGui:Add, Text, x%MenuGroup1of1HelpX% y%MenuRowHelpY% vhelpinfo_TerminatingCharacters gHelpMe, %MenuGuiHelpIcon% Gui, MenuGui:Font, cBlack @@ -463,7 +459,7 @@ ConstructGui() MenuRowHelpY := MenuRowY - MenuHelpIndentY Gui, MenuGui:Add, GroupBox, x%MenuGroup1BoxX% y%MenuRowY% w%MenuOneColGroupWidth% h%MenuRowHeight% , Force New Word Characters (comma separated) - Gui, MenuGui:Add, Edit, x%MenuGroup1EditX% y%MenuRowEditY% w%MenuOneColEditWidth% vForceNewWordCharacters gEditValue, %ForceNewWordCharacters% + Gui, MenuGui:Add, Edit, x%MenuGroup1EditX% y%MenuRowEditY% w%MenuOneColEditWidth% vprefs_ForceNewWordCharacters gEditValue, %prefs_ForceNewWordCharacters% Gui, MenuGui:Font, cGreen Gui, MenuGui:Add, Text, x%MenuGroup1of1HelpX% y%MenuRowHelpY% vhelpinfo_ForceNewWordCharacters gHelpMe, %MenuGuiHelpIcon% Gui, MenuGui:Font, cBlack @@ -476,9 +472,9 @@ ConstructGui() MenuRowHelpY := MenuRowY - MenuHelpIndentY MenuRowEditY := MenuRowY + MenuEditIndentY - hIntro= + helpinfo_Intro= ( -%ScriptTitle% is a simple, compact, and handy auto-completion utility. +%g_ScriptTitle% is a simple, compact, and handy auto-completion utility. It is customizable enough to be useful for regular typing and for programming. @@ -497,8 +493,8 @@ To allow for distribution of standardized preferences, a Defaults.ini may be dis Customizable features include (see also detailed description below) - * List of programs for which you want %ScriptTitle% enabled. - * List of programs for which you do not want %ScriptTitle% enabled. + * List of programs for which you want %g_ScriptTitle% enabled. + * List of programs for which you do not want %g_ScriptTitle% enabled. * Number of characters before the list of words appears. * Number of times you must press a number hotkey to select the associated word (options are 1 and 2, 2 has had minimal testing). * Enable or disable learning mode. @@ -527,24 +523,24 @@ Unicode Support: Full (untested) for UTF-8 character set. ) - hHelpText = %hIntro%`r`n`r`n%hIncludeProgramExecutables%`r`n`r`n%hIncludeProgramTitles%`r`n`r`n%hExcludeProgramExecutables%`r`n`r`n%hExcludeProgramTitles%`r`n`r`n%hLength%`r`n`r`n%hNumPresses%`r`n`r`n%hLearnMode%`r`n`r`n%hLearnCount%`r`n`r`n%hLearnLength%`r`n`r`n%hArrowKeyMethod%`r`n`r`n%hDisabledAutoCompleteKeys%`r`n`r`n%hDetectMouseClickMove%`r`n`r`n%hNoBackSpace%`r`n`r`n%hAutoSpace%`r`n`r`n%hSendMethod%`r`n`r`n%hTerminatingCharacters%`r`n`r`n%hForceNewWordCharacters%`r`n`r`n%hListBoxOffset%`r`n`r`n%hListBoxFontFixed%`r`n`r`n%hListBoxFontOverride%`r`n`r`n%hListBoxFontSize%`r`n`r`n%hListBoxCharacterWidth%`r`n`r`n%hListBoxOpacity%`r`n`r`n%hListBoxRows%`r`n`r`n%hHelperWindowProgramExecutables%`r`n`r`n%hHelperWindowProgramTitles% + helpinfo_HelpText = %helpinfo_Intro%`r`n`r`n%helpinfo_IncludeProgramExecutables%`r`n`r`n%helpinfo_IncludeProgramTitles%`r`n`r`n%helpinfo_ExcludeProgramExecutables%`r`n`r`n%helpinfo_ExcludeProgramTitles%`r`n`r`n%helpinfo_Length%`r`n`r`n%helpinfo_NumPresses%`r`n`r`n%helpinfo_LearnMode%`r`n`r`n%helpinfo_LearnCount%`r`n`r`n%helpinfo_LearnLength%`r`n`r`n%helpinfo_ArrowKeyMethod%`r`n`r`n%helpinfo_DisabledAutoCompleteKeys%`r`n`r`n%helpinfo_DetectMouseClickMove%`r`n`r`n%helpinfo_NoBackSpace%`r`n`r`n%helpinfo_AutoSpace%`r`n`r`n%helpinfo_SendMethod%`r`n`r`n%helpinfo_TerminatingCharacters%`r`n`r`n%helpinfo_ForceNewWordCharacters%`r`n`r`n%helpinfo_ListBoxOffset%`r`n`r`n%helpinfo_ListBoxFontFixed%`r`n`r`n%helpinfo_ListBoxFontOverride%`r`n`r`n%helpinfo_ListBoxFontSize%`r`n`r`n%helpinfo_ListBoxCharacterWidth%`r`n`r`n%helpinfo_ListBoxOpacity%`r`n`r`n%helpinfo_ListBoxRows%`r`n`r`n%helpinfo_HelperWindowProgramExecutables%`r`n`r`n%helpinfo_HelperWindowProgramTitles% - Loop, Parse, hHelpText,`n, `r + Loop, Parse, helpinfo_HelpText,`n, `r { IF ( SubStr(A_LoopField, 1,1) = ";") { - hModHelpText .= SubStr(A_LoopField,2) . "`r`n" + helpinfo_ModHelpText .= SubStr(A_LoopField,2) . "`r`n" } else { - hModHelpText .= A_LoopField . "`r`n" + helpinfo_ModHelpText .= A_LoopField . "`r`n" } } - Gui, MenuGui:Add, Edit, ReadOnly x%MenuGroup1BoxX% y%MenuRowY% w%MenuOneColGroupWidth% h%MenuTabHeightEdit%, %hModHelpText% + Gui, MenuGui:Add, Edit, ReadOnly x%MenuGroup1BoxX% y%MenuRowY% w%MenuOneColGroupWidth% h%MenuTabHeightEdit%, %helpinfo_ModHelpText% - hModHelpText = - hHelpText = - hIntro = + helpinfo_ModHelpText = + helpinfo_HelpText = + helpinfo_Intro = Gui, MenuGui:tab, @@ -559,10 +555,10 @@ Full (untested) for UTF-8 character set. Gui, MenuGui:Add, Button, xp+%MenuRowThreeButtonNext% yp w%MenuRowThreeButtonWidth% gRestore, Restore default Gui, MenuGui:Add, Button, xp+%MenuRowThreeButtonNext% yp w%MenuRowThreeButtonWidth% gCancel , Cancel - if (ScriptTitle == "TypingAid") + if (g_ScriptTitle == "TypingAid") { Gui, MenuGui:Font, cBlack bold - Gui, MenuGui:Add, Text, x%MenuGroup2of2EditX% Yp-10 gVisitForum, %ScriptTitle% + Gui, MenuGui:Add, Text, x%MenuGroup2of2EditX% Yp-10 gVisitForum, %g_ScriptTitle% Gui, MenuGui:Font, cBlack normal Gui, MenuGui:Add, Text, xp+60 Yp gVisitForum, is free software, support forum at @@ -573,41 +569,41 @@ Full (untested) for UTF-8 character set. } Gui, Menugui:+OwnDialogs - Gui, MenuGui:Show, h%MenuGuiHeight% w%MenuGuiWidth%, %ScriptTitle% Settings + Gui, MenuGui:Show, h%MenuGuiHeight% w%MenuGuiWidth%, %g_ScriptTitle% Settings Return } SetEnableTitles: -GetList("IncludeProgramTitles",0) +GetList("prefs_IncludeProgramTitles",0) Return SetDisableTitles: -GetList("ExcludeProgramTitles",0) +GetList("prefs_ExcludeProgramTitles",0) Return SetEnableProcess: -GetList("IncludeProgramExecutables",1) +GetList("prefs_IncludeProgramExecutables",1) Return SetDisableProcess: -GetList("ExcludeProgramExecutables",1) +GetList("prefs_ExcludeProgramExecutables",1) Return SetHelpTitles: -GetList("HelperWindowProgramTitles",0) +GetList("prefs_HelperWindowProgramTitles",0) Return SetHelpProcess: -GetList("HelperWindowProgramExecutables",1) +GetList("prefs_HelperWindowProgramExecutables",1) Return GetList(TitleType,GetExe) { - global MenuTitleType - global InProcessList - global ScriptTitle - InProcessList := true - MenuTitleType := TitleType + global Menu_TitleType + global Menu_InProcessList + global g_ScriptTitle + Menu_InProcessList := true + Menu_TitleType := TitleType If (GetExe =1) { WinGet, id, list,,, Program Manager @@ -633,7 +629,7 @@ GetList(TitleType,GetExe) } GetExe=0 - GuiControlGet, MenuTitleList, MenuGui: , %MenuTitleType% + GuiControlGet, MenuTitleList, MenuGui: , prefs_%Menu_TitleType% Sort,RunningList, D| U Gui, ProcessList:+OwnerMenuGui @@ -650,12 +646,12 @@ GetList(TitleType,GetExe) Gui, ProcessList:Add, Text, x10 yp+170, a) Select a program or window from the list or type a name in the`n%A_Space%%A_Space%%A_Space%%A_Space%%A_Space%'Edit' control (you may need to edit it further)`nb) Click ADD to add it to the list`nc) To remove a program/title, select an item from the 'current list' and`n%A_Space%%A_Space%%A_Space%%A_Space%click DEL. Gui, ProcessList:Add, Button, x10 yp+90 w190 gSaveTitleList, Save Gui, ProcessList:Add, Button, xp+210 yp w190 gCancelTitle, Cancel - Gui, ProcessList:Show, w420 h380, %ScriptTitle% Settings + Gui, ProcessList:Show, w420 h380, %g_ScriptTitle% Settings Return } VisitForum: -MsgBox , 36 , Visit %ScriptTitle% forum (www.autohotkey.com), Do you want to visit the %ScriptTitle% forum on www.autohotkey.com? +MsgBox , 36 , Visit %g_ScriptTitle% forum (www.autohotkey.com), Do you want to visit the %g_ScriptTitle% forum on www.autohotkey.com? IfMsgBox Yes Run, http://www.autohotkey.com/board/topic/49517-ahk-11typingaid-v2198-word-autocompletion-utility/ Return @@ -670,16 +666,16 @@ return RestoreDefaults() { - global LearnCount + global g_PrefsFile + global g_ScriptTitle global Menu_OldLearnCount - global PrefsFile - global ScriptTitle + global prefs_LearnCount ReadPreferences("RestoreDefaults") - IF ( Menu_OldLearnCount < LearnCount ) + IF ( Menu_OldLearnCount < prefs_LearnCount ) { - MsgBox, 1, Restore Defaults, Restoring Defaults will increase the Learn Count value.`r`nWhen exiting %ScriptTitle%, this will permanently delete any words`r`nfrom the Learned Words which have been typed less times`r`nthan the new Learn Count. Continue? + MsgBox, 1, Restore Defaults, Restoring Defaults will increase the Learn Count value.`r`nWhen exiting %g_ScriptTitle%, this will permanently delete any words`r`nfrom the Learned Words which have been typed less times`r`nthan the new Learn Count. Continue? IfMsgBox, Cancel { ReturnValue := "Cancel" @@ -692,11 +688,11 @@ RestoreDefaults() return } else { - IfExist, %PrefsFile% + IfExist, %g_PrefsFile% { try { - FileCopy, %PrefsFile%, %PrefsFile%-%A_Now%.bak, 1 - FileDelete, %PrefsFile% + FileCopy, %g_PrefsFile%, %PrefsFile%-%A_Now%.bak, 1 + FileDelete, %g_PrefsFile% } catch { MsgBox,,Restore Defaults,Unable to back up preferences! Canceling... ReadPreferences(,"RestorePreferences") @@ -715,7 +711,7 @@ MenuGuiGuiEscape: MenuGuiGuiClose: Cancel: Gui, MenuGui:Destroy -InSettings := false +g_InSettings := false Menu, Tray, Enable, Settings Return @@ -725,20 +721,20 @@ return Save() { - global LearnCount, ListBoxOpacity + global prefs_LearnCount, prefs_ListBoxOpacity global Menu_ChangedPrefs, Menu_ListBoxOpacityUpDown, Menu_OldLearnCount - global ScriptTitle + global g_ScriptTitle ; should only save preferences.ini if different from defaults - Menu_ChangedPrefs["ArrowKeyMethod"] := ArrowKeyMethod - Menu_ChangedPrefs["DisabledAutoCompleteKeys"] := DisabledAutoCompleteKeys - Menu_ChangedPrefs["NoBackSpace"] := NoBackSpace - Menu_ChangedPrefs["SendMethod"] := SendMethod + Menu_ChangedPrefs["prefs_ArrowKeyMethod"] := prefs_ArrowKeyMethod + Menu_ChangedPrefs["prefs_DisabledAutoCompleteKeys"] := prefs_DisabledAutoCompleteKeys + Menu_ChangedPrefs["prefs_NoBackSpace"] := prefs_NoBackSpace + Menu_ChangedPrefs["prefs_SendMethod"] := prefs_SendMethod Gui, MenuGui:Submit - ListBoxOpacity := Menu_ListBoxOpacityUpDown + prefs_ListBoxOpacity := Menu_ListBoxOpacityUpDown - IF (Menu_OldLearnCount < LearnCount ) + IF (Menu_OldLearnCount < prefs_LearnCount ) { - MsgBox, 1, Save, Saving will increase the Learn Count value.`r`nWhen exiting %ScriptTitle%, this will permanently delete any words`r`nfrom the Learned Words which have been typed less times`r`nthan the new Learn Count. Continue? + MsgBox, 1, Save, Saving will increase the Learn Count value.`r`nWhen exiting %g_ScriptTitle%, this will permanently delete any words`r`nfrom the Learned Words which have been typed less times`r`nthan the new Learn Count. Continue? IfMsgBox, Cancel { ReturnValue := "Cancel" @@ -762,6 +758,9 @@ SaveSettings() Local Menu_PrefsToSave Local Split + Local Split0 + Local Split1 + Local key Local value @@ -770,37 +769,37 @@ SaveSettings() Loop, parse, Menu_SendMethodOptionsCode, | ; get sendmethod { If (Menu_SendMethodC = A_Index) - SendMethod:=A_LoopField + prefs_SendMethod:=A_LoopField } - DisabledAutoCompleteKeys= + prefs_DisabledAutoCompleteKeys= If (Menu_CtrlEnter = 0) - DisabledAutoCompleteKeys .= "E" + prefs_DisabledAutoCompleteKeys .= "E" If (Menu_Tab = 0) - DisabledAutoCompleteKeys .= "T" + prefs_DisabledAutoCompleteKeys .= "T" If (Menu_CtrlSpace = 0) - DisabledAutoCompleteKeys .= "S" + prefs_DisabledAutoCompleteKeys .= "S" If (Menu_RightArrow = 0) - DisabledAutoCompleteKeys .= "R" + prefs_DisabledAutoCompleteKeys .= "R" If (Menu_NumberKeys = 0) - DisabledAutoCompleteKeys .= "N" + prefs_DisabledAutoCompleteKeys .= "N" If (Menu_Enter = 0) - DisabledAutoCompleteKeys .= "U" + prefs_DisabledAutoCompleteKeys .= "U" Loop, parse, Menu_ArrowKeyMethodOptionsText, | { StringSplit, Split, A_LoopField, - Split1 := Trim(Split1) - If (ArrowKeyMethod = A_Index) + If (prefs_ArrowKeyMethod = A_Index) { - ArrowKeyMethod := Split1 + prefs_ArrowKeyMethod := Split1 } } If (Menu_CaseCorrection = "on") - NoBackSpace=Off + prefs_NoBackSpace=Off Else If (Menu_CaseCorrection = "off") - NoBackSpace=On + prefs_NoBackSpace=On ; Determine list of preferences to save For key, value in Menu_ChangedPrefs @@ -839,7 +838,7 @@ return HelpMe() { - global ScriptTitle + global g_ScriptTitle Loop, Parse, %A_GuiControl%,`r`n { IF ( SubStr(A_LoopField, 1,1) = ";") @@ -850,7 +849,7 @@ HelpMe() Menu_Help .= A_LoopField . "`r`n" } } - MsgBox , 32 , %ScriptTitle% Help, %Menu_Help% + MsgBox , 32 , %g_ScriptTitle% Help, %Menu_Help% return } @@ -858,17 +857,17 @@ HelpMe() ; http://www.autohotkey.com/forum/viewtopic.php?p=37696#37696 HandleMessage( p_w, p_l, p_m, p_hw ) { - Global WM_SETCURSOR, WM_MOUSEMOVE + Global g_WM_SETCURSOR, g_WM_MOUSEMOVE Static Help_Hover, h_cursor_help, URL_Hover, h_cursor_hand, h_old_cursor, Old_GuiControl - if ( p_m = WM_SETCURSOR ) + if ( p_m = g_WM_SETCURSOR ) { if ( Help_Hover || URL_Hover) return, true } else if (A_GuiControl == Old_GuiControl) { return - } else if ( p_m = WM_MOUSEMOVE ) + } else if ( p_m = g_WM_MOUSEMOVE ) { if ( SubStr(A_GuiControl, 1, 9) == "helpinfo_" ) { @@ -923,17 +922,17 @@ return SaveTitleList() { - global InProcessList - global MenuTitleType + global Menu_InProcessList + global Menu_TitleType ControlGet, MenuTitleList, List, , ListBox1 - InProcessList := false + Menu_InProcessList := false Gui, ProcessList:Destroy Gui, MenuGui:-Disabled ; enable main window Gui, MenuGui:Show StringReplace, MenuTitleList, MenuTitleList, `n, |, All - GuiControl, MenuGui:Text, %MenuTitleType%, %MenuTitleList% - Menu_ChangedPrefs[MenuTitleType] := %MenuTitleType% + GuiControl, MenuGui:Text, %Menu_TitleType%, %MenuTitleList% + Menu_ChangedPrefs[Menu_TitleType] := %Menu_TitleType% return } @@ -941,7 +940,7 @@ SaveTitleList() ProcessListGuiEscape: ProcessListGuiClose: CancelTitle: -InProcessList := false +Menu_InProcessList := false Gui, ProcessList:Destroy Gui, MenuGui:-Disabled ; enable main window Gui, MenuGui:Show diff --git a/Source/Includes/Window.ahk b/Source/Includes/Window.ahk index 8f0834a..ede2167 100644 --- a/Source/Includes/Window.ahk +++ b/Source/Includes/Window.ahk @@ -2,15 +2,15 @@ EnableWinHook() { - global WinChangedEventHook - global WinChangedCallback + global g_WinChangedEventHook + global g_WinChangedCallback ; Set a hook to check for a changed window - If !(WinChangedEventHook) + If !(g_WinChangedEventHook) { DllCall("CoInitializeEx", Ptr, 0, Uint, 0) - WinChangedEventHook := DllCall("SetWinEventHook", Uint, 0x0003, Uint, 0x0003, Ptr, 0, Uint, WinChangedCallback, Uint, 0, Uint, 0, Uint, 0x0002) + g_WinChangedEventHook := DllCall("SetWinEventHook", Uint, 0x0003, Uint, 0x0003, Ptr, 0, Uint, g_WinChangedCallback, Uint, 0, Uint, 0, Uint, 0x0002) - if !(WinChangedEventHook) + if !(g_WinChangedEventHook) { MsgBox, Failed to register Event Hook! ExitApp @@ -22,14 +22,14 @@ EnableWinHook() DisableWinHook() { - global WinChangedEventHook + global g_WinChangedEventHook - if (WinChangedEventHook) + if (g_WinChangedEventHook) { - if (DllCall("UnhookWinEvent", Uint, WinChangedEventHook)) + if (DllCall("UnhookWinEvent", Uint, g_WinChangedEventHook)) { DllCall("CoUninitialize") - WinChangedEventHook = + g_WinChangedEventHook = } else { MsgBox, Failed to Unhook WinEvent! ExitApp @@ -41,8 +41,8 @@ DisableWinHook() ; Hook function to detect change of focus (and remove ListBox when changing active window) WinChanged(hWinEventHook, event, wchwnd, idObject, idChild, dwEventThread, dwmsEventTime) { - global DetectMouseClickMove - global OldCaretY + global prefs_DetectMouseClickMove + global g_OldCaretY If (event <> 3) { @@ -51,11 +51,11 @@ WinChanged(hWinEventHook, event, wchwnd, idObject, idChild, dwEventThread, dwmsE IF ( ReturnWinActive() ) { - IfNotEqual, DetectMouseClickMove, On + IfNotEqual, prefs_DetectMouseClickMove, On { - IfNotEqual, OldCaretY, + IfNotEqual, g_OldCaretY, { - if ( OldCaretY != HCaretY() ) + if ( g_OldCaretY != HCaretY() ) { CloseListBox() } @@ -80,12 +80,12 @@ GetIncludedActiveWindow() GetIncludedActiveWindowGuts() { - global Active_id - global Active_Title - global Helper_id - global LastActiveIdBeforeHelper - global ListBox_ID - global MouseWin_ID + global g_Active_Id + global g_Active_Title + global g_Helper_Id + global g_LastActiveIdBeforeHelper + global g_ListBox_Id + global g_MouseWin_Id Process, Priority,,Normal ;Wait for Included Active Window @@ -96,11 +96,11 @@ GetIncludedActiveWindowGuts() WinGetTitle, ActiveTitle, ahk_id %ActiveId% IfEqual, ActiveId, { - IfNotEqual, MouseWin_ID, + IfNotEqual, g_MouseWin_Id, { - IfEqual, MouseWin_ID, %ListBox_ID% + IfEqual, g_MouseWin_Id, %g_ListBox_Id% { - WinActivate, ahk_id %Active_id% + WinActivate, ahk_id %g_Active_Id% Return } } @@ -115,9 +115,9 @@ GetIncludedActiveWindowGuts() WinWaitActive, , , , ZZZYouWillNeverFindThisStringInAWindowTitleZZZ Continue } - IfEqual, ActiveId, %Helper_id% + IfEqual, ActiveId, %g_Helper_Id% Break - IfEqual, ActiveId, %ListBox_ID% + IfEqual, ActiveId, %g_ListBox_Id% Break If CheckForActive(ActiveProcess,ActiveTitle) Break @@ -136,81 +136,81 @@ GetIncludedActiveWindowGuts() ActiveProcess = } - IfEqual, ActiveId, %ListBox_ID% + IfEqual, ActiveId, %g_ListBox_Id% { - Active_id := ActiveId - Active_Title := ActiveTitle + g_Active_Id := ActiveId + g_Active_Title := ActiveTitle Return } ;if we are in the Helper Window, we don't want to re-enable script functions - IfNotEqual, ActiveId, %Helper_id% + IfNotEqual, ActiveId, %g_Helper_Id% { ; Check to see if we need to reopen the helper window MaybeOpenOrCloseHelperWindow(ActiveProcess,ActiveTitle,ActiveId) SuspendOff() ;Set the process priority back to High Process, Priority,,High - LastActiveIdBeforeHelper = %ActiveId% + g_LastActiveIdBeforeHelper = %ActiveId% } else { - IfNotEqual, Active_id, %Helper_id% - LastActiveIdBeforeHelper = %Active_id% + IfNotEqual, g_Active_Id, %g_Helper_Id% + g_LastActiveIdBeforeHelper = %g_Active_Id% } - global LastInput_Id + global g_LastInput_Id ;Show the ListBox if the old window is the same as the new one - IfEqual, ActiveId, %LastInput_Id% + IfEqual, ActiveId, %g_LastInput_Id% { - WinWaitActive, ahk_id %LastInput_id%,,0 + WinWaitActive, ahk_id %g_LastInput_Id%,,0 ;Check Caret Position again CheckForCaretMove("LButton") ShowListBox() } else { CloseListBox() } - Active_id := ActiveId - Active_Title := ActiveTitle + g_Active_Id := ActiveId + g_Active_Title := ActiveTitle Return } CheckForActive(ActiveProcess,ActiveTitle) { ;Check to see if the Window passes include/exclude tests - global ExcludeProgramExecutables - global ExcludeProgramTitles - global IncludeProgramExecutables - global IncludeProgramTitles - global InSettings + global g_InSettings + global prefs_ExcludeProgramExecutables + global prefs_ExcludeProgramTitles + global prefs_IncludeProgramExecutables + global prefs_IncludeProgramTitles - If InSettings + If g_InSettings Return, - Loop, Parse, ExcludeProgramExecutables, | + Loop, Parse, prefs_ExcludeProgramExecutables, | { IfEqual, ActiveProcess, %A_LoopField% Return, } - Loop, Parse, ExcludeProgramTitles, | + Loop, Parse, prefs_ExcludeProgramTitles, | { IfInString, ActiveTitle, %A_LoopField% Return, } - IfEqual, IncludeProgramExecutables, + IfEqual, prefs_IncludeProgramExecutables, { - IfEqual, IncludeProgramTitles, + IfEqual, prefs_IncludeProgramTitles, Return, 1 } - Loop, Parse, IncludeProgramExecutables, | + Loop, Parse, prefs_IncludeProgramExecutables, | { IfEqual, ActiveProcess, %A_LoopField% Return, 1 } - Loop, Parse, IncludeProgramTitles, | + Loop, Parse, prefs_IncludeProgramTitles, | { IfInString, ActiveTitle, %A_LoopField% Return, 1 @@ -223,16 +223,16 @@ CheckForActive(ActiveProcess,ActiveTitle) ReturnWinActive() { - global Active_id - global Active_Title - global InSettings + global g_Active_Id + global g_Active_Title + global g_InSettings - IF InSettings + IF g_InSettings Return, WinGet, Temp_id, ID, A WinGetTitle, Temp_Title, ahk_id %Temp_id% - Last_Title := Active_Title + Last_Title := g_Active_Title ; remove all asterisks, dashes, and spaces from title in case saved value changes StringReplace, Last_Title, Last_Title,*,,All StringReplace, Temp_Title, Temp_Title,*,,All @@ -240,5 +240,5 @@ ReturnWinActive() StringReplace, Temp_Title, Temp_Title,%A_Space%,,All StringReplace, Last_Title, Last_Title,-,,All StringReplace, Temp_Title, Temp_Title,-,,All - Return, (( Active_id == Temp_id ) && ( Last_Title == Temp_Title )) + Return, (( g_Active_Id == Temp_id ) && ( Last_Title == Temp_Title )) } diff --git a/Source/Includes/Wordlist.ahk b/Source/Includes/Wordlist.ahk index f91d995..f516d4e 100644 --- a/Source/Includes/Wordlist.ahk +++ b/Source/Includes/Wordlist.ahk @@ -2,12 +2,11 @@ ReadWordList() { - global LearnedWordsCount - global LegacyLearnedWords - global WordListDone - global wDB + global g_LegacyLearnedWords + global g_WordListDone + global g_WordListDB ;mark the wordlist as not done - WordListDone = 0 + g_WordListDone = 0 Wordlist = %A_ScriptDir%\Wordlist.txt WordlistLearned = %A_ScriptDir%\WordlistLearned.txt @@ -15,14 +14,14 @@ ReadWordList() MaybeFixFileEncoding(Wordlist,"UTF-8") MaybeFixFileEncoding(WordlistLearned,"UTF-8") - wDB := DBA.DataBaseFactory.OpenDataBase("SQLite", A_ScriptDir . "\WordlistLearned.db" ) - if !wDB + g_WordListDB := DBA.DataBaseFactory.OpenDataBase("SQLite", A_ScriptDir . "\WordlistLearned.db" ) + if !g_WordListDB { msgbox Problem opening database '%A_ScriptDir%\WordlistLearned.db' - fatal error... exitapp } - tableconverted := wDB.Query("SELECT tableconverted FROM LastState;") + tableconverted := g_WordListDB.Query("SELECT tableconverted FROM LastState;") for each, row in tableconverted.Rows { @@ -31,23 +30,23 @@ ReadWordList() IfNotEqual, WordlistConverted, 1 { - wDB.Query("DROP TABLE Words;") - wDB.Query("DROP INDEX WordIndex;") - wDB.Query("DROP TABLE LastState;") + g_WordListDB.Query("DROP TABLE Words;") + g_WordListDB.Query("DROP INDEX WordIndex;") + g_WordListDB.Query("DROP TABLE LastState;") - IF not wDB.Query("CREATE TABLE Words (wordindexed TEXT, word TEXT UNIQUE, count INTEGER);") + IF not g_WordListDB.Query("CREATE TABLE Words (wordindexed TEXT, word TEXT UNIQUE, count INTEGER);") { msgbox Cannot Create Table - fatal error... ExitApp } - IF not wDB.Query("CREATE INDEX WordIndex ON Words (wordindexed);") + IF not g_WordListDB.Query("CREATE INDEX WordIndex ON Words (wordindexed);") { msgbox Cannot Create Index - fatal error... ExitApp } - IF not wDB.Query("CREATE TABLE LastState (tableconverted INTEGER);") + IF not g_WordListDB.Query("CREATE TABLE LastState (tableconverted INTEGER);") { MsgBox Cannot Create Table - fatal error... ExitApp @@ -57,7 +56,7 @@ ReadWordList() CleanupWordList() } - wDB.BeginTransaction() + g_WordListDB.BeginTransaction() ;reads list of words from file FileRead, ParseWords, %Wordlist% Loop, Parse, ParseWords, `n, `r @@ -69,14 +68,14 @@ ReadWordList() break } Else { LearnedWordsCount=0 - LegacyLearnedWords=1 ; Set Flag that we need to convert wordlist file + g_LegacyLearnedWords=1 ; Set Flag that we need to convert wordlist file } } else { - AddWordToList(A_LoopField,0,"ForceLearn") + AddWordToList(A_LoopField,0,"ForceLearn",LearnedWordsCount) } } ParseWords = - wDB.EndTransaction() + g_WordListDB.EndTransaction() IfNotEqual, WordlistConverted, 1 { @@ -88,54 +87,51 @@ ReadWordList() LearnedWordsCount=0 } - wDB.BeginTransaction() + g_WordListDB.BeginTransaction() ;reads list of words from file FileRead, ParseWords, %WordlistLearned% Loop, Parse, ParseWords, `n, `r { - AddWordToList(A_LoopField,0,"ForceLearn") + AddWordToList(A_LoopField,0,"ForceLearn",LearnedWordsCount) } ParseWords = - wDB.EndTransaction() + g_WordListDB.EndTransaction() Progress, 50, Please wait..., Converting wordlist, %A_ScriptName% ;reverse the numbers of the word counts in memory - ReverseWordNums() + ReverseWordNums(LearnedWordsCount) - wDB.Query("INSERT INTO LastState VALUES ('1');") + g_WordListDB.Query("INSERT INTO LastState VALUES ('1');") Progress, Off } ;mark the wordlist as completed - WordlistDone = 1 + g_WordlistDone = 1 Return } ;------------------------------------------------------------------------ -ReverseWordNums() +ReverseWordNums(LearnedWordsCount) { ; This function will reverse the read numbers since now we know the total number of words - global LearnedWordsCount - global LearnCount - global wDB + global prefs_LearnCount + global g_WordListDB - LearnedWordsCount+= (LearnCount - 1) + LearnedWordsCount+= (prefs_LearnCount - 1) - LearnedWordsTable := wDB.Query("SELECT word FROM Words WHERE count IS NOT NULL;") + LearnedWordsTable := g_WordListDB.Query("SELECT word FROM Words WHERE count IS NOT NULL;") - wDB.BeginTransaction() + g_WordListDB.BeginTransaction() For each, row in LearnedWordsTable.Rows { WhereQuery := "WHERE word = '" . row[1] . "'" - wDB.Query("UPDATE words SET count = (SELECT " . LearnedWordsCount . " - count FROM words " . WhereQuery . ") " . WhereQuery . ";") + g_WordListDB.Query("UPDATE words SET count = (SELECT " . LearnedWordsCount . " - count FROM words " . WhereQuery . ") " . WhereQuery . ";") } - wDB.EndTransaction() - - LearnedWordsCount = + g_WordListDB.EndTransaction() Return @@ -143,67 +139,66 @@ ReverseWordNums() ;------------------------------------------------------------------------ -AddWordToList(AddWord,ForceCountNewOnly,ForceLearn=false) +AddWordToList(AddWord,ForceCountNewOnly,ForceLearn=false, ByRef LearnedWordsCount = false) { ;AddWord = Word to add to the list ;ForceCountNewOnly = force this word to be permanently learned even if learnmode is off ;ForceLearn = disables some checks in CheckValid - global DoNotLearnStrings - global ForceNewWordCharacters - global LearnedWordsCount - global LearnCount - global LearnLength - global LearnMode - global WordListDone - global wDB + global prefs_DoNotLearnStrings + global prefs_ForceNewWordCharacters + global prefs_LearnCount + global prefs_LearnLength + global prefs_LearnMode + global g_WordListDone + global g_WordListDB StringUpper, AddWordIndex, AddWord if !(CheckValid(AddWord,ForceLearn)) return - IfEqual, WordListDone, 0 ;if this is read from the wordlist + IfEqual, g_WordListDone, 0 ;if this is read from the wordlist { IfNotEqual,LearnedWordsCount, ;if this is a stored learned word, this will only have a value when LearnedWords are read in from the wordlist { - wDB.Query("INSERT INTO words VALUES ('" . AddWordIndex . "','" . AddWord . "','" . LearnedWordsCount++ . "');") + g_WordListDB.Query("INSERT INTO words VALUES ('" . AddWordIndex . "','" . AddWord . "','" . LearnedWordsCount++ . "');") } else { - wDB.Query("INSERT INTO words (wordindexed,word) VALUES ('" . AddWordIndex . "','" . AddWord . "');") + g_WordListDB.Query("INSERT INTO words (wordindexed,word) VALUES ('" . AddWordIndex . "','" . AddWord . "');") } - } else if (LearnMode = "On" || ForceCountNewOnly == 1) + } else if (prefs_LearnMode = "On" || ForceCountNewOnly == 1) { ; If this is an on-the-fly learned word - AddWordInList := wDB.Query("SELECT * FROM words WHERE word = '" . AddWord . "';") + AddWordInList := g_WordListDB.Query("SELECT * FROM words WHERE word = '" . AddWord . "';") IF !( AddWordInList.Count() ) ; if the word is not in the list { IfNotEqual, ForceCountNewOnly, 1 { - IF (StrLen(AddWord) < LearnLength) ; don't add the word if it's not longer than the minimum length for learning if we aren't force learning it + IF (StrLen(AddWord) < prefs_LearnLength) ; don't add the word if it's not longer than the minimum length for learning if we aren't force learning it Return - if AddWord contains %ForceNewWordCharacters% + if AddWord contains %prefs_ForceNewWordCharacters% Return - if AddWord contains %DoNotLearnStrings% + if AddWord contains %prefs_DoNotLearnStrings% Return CountValue = 1 } else { - CountValue := LearnCount ;set the count to LearnCount so it gets written to the file + CountValue := prefs_LearnCount ;set the count to LearnCount so it gets written to the file } - IfEqual, LearnMode, On + IfEqual, prefs_LearnMode, On { - wDB.Query("INSERT INTO words VALUES ('" . AddWordIndex . "','" . AddWord . "','" . CountValue . "');") + g_WordListDB.Query("INSERT INTO words VALUES ('" . AddWordIndex . "','" . AddWord . "','" . CountValue . "');") } else { - wDB.Query("INSERT INTO words (wordindexed,word) VALUES ('" . AddWordIndex . "','" . AddWord . "');") + g_WordListDB.Query("INSERT INTO words (wordindexed,word) VALUES ('" . AddWordIndex . "','" . AddWord . "');") } } else { - IfEqual, LearnMode, On + IfEqual, prefs_LearnMode, On { IfEqual, ForceCountNewOnly, 1 { @@ -213,9 +208,9 @@ AddWordToList(AddWord,ForceCountNewOnly,ForceLearn=false) break } - IF ( CountValue < LearnCount ) + IF ( CountValue < prefs_LearnCount ) { - wDB.QUERY("UPDATE words SET count = ('" . LearnCount . "') WHERE word = '" . AddWord . "');") + g_WordListDB.QUERY("UPDATE words SET count = ('" . prefs_LearnCount . "') WHERE word = '" . AddWord . "');") } } else { UpdateWordCount(AddWord,0) ;Increment the word count if it's already in the list and we aren't forcing it on @@ -241,7 +236,7 @@ CheckValid(Word,ForceLearn=false) Return } - IF ( StrLen(Word) <= Length ) ; don't add the word if it's not longer than the minimum length + IF ( StrLen(Word) <= prefs_Length ) ; don't add the word if it's not longer than the minimum length { Return } @@ -267,8 +262,8 @@ CheckValid(Word,ForceLearn=false) DeleteWordFromList(DeleteWord) { - global LearnMode - global wDB + global prefs_LearnMode + global g_WordListDB Ifequal, DeleteWord, ;If we have no word to delete, skip out. Return @@ -276,10 +271,10 @@ DeleteWordFromList(DeleteWord) if DeleteWord is space ;If DeleteWord is only whitespace, skip out. Return - IfNotEqual, LearnMode, On + IfNotEqual, prefs_LearnMode, On Return - wDB.Query("DELETE FROM words WHERE word = '" . DeleteWord . "';") + g_WordListDB.Query("DELETE FROM words WHERE word = '" . DeleteWord . "';") Return } @@ -288,20 +283,20 @@ DeleteWordFromList(DeleteWord) UpdateWordCount(word,SortOnly) { - global LearnMode - global wDB + global prefs_LearnMode + global g_WordListDB ;Word = Word to increment count for ;SortOnly = Only sort the words, don't increment the count ;Should only be called when LearnMode is on - IfEqual, LearnMode, Off + IfEqual, prefs_LearnMode, Off Return IfEqual, SortOnly, Return WhereQuery := "WHERE word = '" . word . "'" - wDB.Query("UPDATE words SET count = (SELECT count + 1 FROM words " . WhereQuery . ") " . WhereQuery . ";") + g_WordListDB.Query("UPDATE words SET count = (SELECT count + 1 FROM words " . WhereQuery . ") " . WhereQuery . ";") Return } @@ -310,26 +305,26 @@ UpdateWordCount(word,SortOnly) CleanupWordList() { - global LearnCount - global wDB - wDB.Query("DELETE FROM Words WHERE count < " . LearnCount . " OR count IS NULL;") + global prefs_LearnCount + global g_WordListDB + g_WordListDB.Query("DELETE FROM Words WHERE count < " . prefs_LearnCount . " OR count IS NULL;") } ;------------------------------------------------------------------------ MaybeUpdateWordlist() { - global LegacyLearnedWords - global wDB - global WordListDone + global g_LegacyLearnedWords + global g_WordListDB + global g_WordListDone ; Update the Learned Words - IfEqual, WordListDone, 1 + IfEqual, g_WordListDone, 1 { CleanupWordList() - SortWordList := wDB.Query("SELECT Word FROM Words ORDER BY count DESC;") + SortWordList := g_WordListDB.Query("SELECT Word FROM Words ORDER BY count DESC;") for each, row in SortWordList.Rows { @@ -346,7 +341,7 @@ MaybeUpdateWordlist() FileDelete, %A_ScriptDir%\Temp_WordlistLearned.txt ; Convert the Old Wordlist file to not have ;LEARNEDWORDS; - IfEqual, LegacyLearnedWords, 1 + IfEqual, g_LegacyLearnedWords, 1 { TempWordList = FileRead, ParseWords, %A_ScriptDir%\Wordlist.txt @@ -361,6 +356,6 @@ MaybeUpdateWordlist() } } - wDB.Close(), + g_WordListDB.Close(), } \ No newline at end of file diff --git a/Source/TypingAid.ahk b/Source/TypingAid.ahk index 6526b2d..0916226 100644 --- a/Source/TypingAid.ahk +++ b/Source/TypingAid.ahk @@ -42,11 +42,9 @@ ReadPreferences() SetTitleMatchMode, 2 ;setup code -MouseX = 0 -MouseY = 0 -Helper_id = -HelperManual = -DelimiterChar := Chr(2) +g_Helper_Id = +g_HelperManual = +g_DelimiterChar := Chr(2) AutoTrim, Off InitializeListBox() @@ -60,9 +58,9 @@ InitializeHotKeys() DisableKeyboardHotKeys() -WinChangedCallback := RegisterCallback("WinChanged") +g_WinChangedCallback := RegisterCallback("WinChanged") -if !(WinChangedCallback) +if !(g_WinChangedCallback) { MsgBox, Failed to register callback function ExitApp @@ -76,44 +74,52 @@ GetIncludedActiveWindow() ;Change the Running performance speed (Priority changed to High in GetIncludedActiveWindow) SetBatchLines, -1 -Loop -{ +MainLoop() - ;If the active window has changed, wait for a new one - IF !( ReturnWinActive() ) - { - Critical, Off - GetIncludedActiveWindow() - } else { - Critical, Off - } +; END + +MainLoop() +{ + global g_TerminatingEndKeys + Loop + { + + ;If the active window has changed, wait for a new one + IF !( ReturnWinActive() ) + { + Critical, Off + GetIncludedActiveWindow() + } else { + Critical, Off + } - ;Get one key at a time - Input, InputChar, L1 V I, {BS}%TerminatingEndKeys% + ;Get one key at a time + Input, InputChar, L1 V I, {BS}%g_TerminatingEndKeys% - Critical - EndKey := ErrorLevel + Critical + EndKey := ErrorLevel - ProcessKey(InputChar,EndKey) + ProcessKey(InputChar,EndKey) + } } ProcessKey(InputChar,EndKey) { - global Active_id - global DetectMouseClickMove - global ForceNewWordCharacters - global Helper_id - global IgnoreSend - global LastInput_Id - global Length - global OldCaretX - global OldCaretY - global TerminatingCharactersParsed - global Word + global g_Active_Id + global g_Helper_Id + global g_IgnoreSend + global g_LastInput_Id + global g_OldCaretX + global g_OldCaretY + global g_TerminatingCharactersParsed + global g_Word + global prefs_DetectMouseClickMove + global prefs_ForceNewWordCharacters + global prefs_Length - IfEqual, IgnoreSend, 1 + IfEqual, g_IgnoreSend, 1 { - IgnoreSend = + g_IgnoreSend = Return } @@ -130,7 +136,7 @@ ProcessKey(InputChar,EndKey) Return ;If we have no window activated for typing, we don't want to do anything with the typed character - IfEqual, Active_id, + IfEqual, g_Active_Id, { GetIncludedActiveWindow() Return @@ -143,87 +149,87 @@ ProcessKey(InputChar,EndKey) Return } - IfEqual, Active_id, %Helper_id% + IfEqual, g_Active_Id, %g_Helper_Id% { Return } ;If we haven't typed anywhere, set this as the last window typed in - IfEqual, LastInput_Id, - LastInput_Id = %Active_id% + IfEqual, g_LastInput_Id, + g_LastInput_Id = %g_Active_Id% - IfNotEqual, DetectMouseClickMove, On + IfNotEqual, prefs_DetectMouseClickMove, On { - ifequal, OldCaretY, - OldCaretY := HCaretY() + ifequal, g_OldCaretY, + g_OldCaretY := HCaretY() - if ( OldCaretY != HCaretY() ) + if ( g_OldCaretY != HCaretY() ) { ;Don't do anything if we aren't in the original window and aren't starting a new word - IfNotEqual, LastInput_Id, %Active_id% + IfNotEqual, g_LastInput_Id, %g_Active_Id% Return ; add the word if switching lines - AddWordToList(Word,0) + AddWordToList(g_Word,0) ClearAllVars(true) - Word := InputChar + g_Word := InputChar Return } } - OldCaretY := HCaretY() - OldCaretX := HCaretX() + g_OldCaretY := HCaretY() + g_OldCaretX := HCaretX() ;Backspace clears last letter ifequal, EndKey, Endkey:BackSpace { ;Don't do anything if we aren't in the original window and aren't starting a new word - IfNotEqual, LastInput_Id, %Active_id% + IfNotEqual, g_LastInput_Id, %g_Active_Id% Return - StringLen, len, Word + StringLen, len, g_Word IfNotEqual, len, 0 { IfEqual, len, 1 { ClearAllVars(true) } else { - StringTrimRight, Word, Word, 1 + StringTrimRight, g_Word, g_Word, 1 } } - } else if ( ( EndKey == "Max" ) && !(InStr(TerminatingCharactersParsed, InputChar)) ) + } else if ( ( EndKey == "Max" ) && !(InStr(g_TerminatingCharactersParsed, InputChar)) ) { ; If active window has different window ID from the last input, ;learn and blank word, then assign number pressed to the word - IfNotEqual, LastInput_Id, %Active_id% + IfNotEqual, g_LastInput_Id, %g_Active_Id% { - AddWordToList(Word,0) + AddWordToList(g_Word,0) ClearAllVars(true) - Word := InputChar - LastInput_Id := Active_id + g_Word := InputChar + g_LastInput_Id := g_Active_Id Return } - if InputChar in %ForceNewWordCharacters% + if InputChar in %prefs_ForceNewWordCharacters% { - AddWordToList(Word,0) + AddWordToList(g_Word,0) ClearAllVars(true) - Word := InputChar + g_Word := InputChar } else { - Word .= InputChar + g_Word .= InputChar } } else { ;Don't do anything if we aren't in the original window and aren't starting a new word - IfNotEqual, LastInput_Id, %Active_id% + IfNotEqual, g_LastInput_Id, %g_Active_Id% Return - AddWordToList(Word,0) + AddWordToList(g_Word,0) ClearAllVars(true) Return } ;Wait till minimum letters - IF ( StrLen(Word) < Length ) + IF ( StrLen(g_Word) < prefs_Length ) { CloseListBox() Return @@ -239,37 +245,37 @@ RecomputeMatchesTimer: RecomputeMatches() { ; This function will take the given word, and will recompile the list of matches and redisplay the wordlist. - global ArrowKeyMethod - global LearnMode - global ListBoxRows - global NoBackSpace - global MatchTotal - global singlematch - global SuppressMatchingWord - global Word - global wDB - + global g_MatchTotal + global g_singlematch + global g_Word + global g_WordListDB + global prefs_ArrowKeyMethod + global prefs_LearnMode + global prefs_ListBoxRows + global prefs_NoBackSpace + global prefs_SuppressMatchingWord + SavePriorMatchPosition() ;Match part-word with command - MatchTotal = 0 + g_MatchTotal = 0 - IfEqual, ArrowKeyMethod, Off + IfEqual, prefs_ArrowKeyMethod, Off { - IfLess, ListBoxRows, 10 - LimitTotalMatches := ListBoxRows + IfLess, prefs_ListBoxRows, 10 + LimitTotalMatches := prefs_ListBoxRows else LimitTotalMatches = 10 } else { LimitTotalMatches = 200 } - StringUpper, WordMatch, Word + StringUpper, WordMatch, g_Word - IfEqual, SuppressMatchingWord, On + IfEqual, prefs_SuppressMatchingWord, On { - IfEqual, NoBackSpace, Off + IfEqual, prefs_NoBackSpace, Off { - SuppressMatchingWordQuery := " AND word <> '" . Word . "'" + SuppressMatchingWordQuery := " AND word <> '" . g_Word . "'" } else { SuppressMatchingWordQuery := " AND wordindexed <> '" . WordMatch . "'" } @@ -277,13 +283,13 @@ RecomputeMatches() WhereQuery := " WHERE wordindexed GLOB '" . WordMatch . "*' " . SuppressMatchingWordQuery - IfEqual, LearnMode, Off + IfEqual, prefs_LearnMode, Off { WhereQuery .= " AND count IS NULL" OrderByQuery := " ORDER BY ROWID, Word" } else { - NormalizeTable := wDB.Query("SELECT MIN(count) AS normalize FROM Words" . WhereQuery . "AND count IS NOT NULL LIMIT " . LimitTotalMatches . ";") + NormalizeTable := g_WordListDB.Query("SELECT MIN(count) AS normalize FROM Words" . WhereQuery . "AND count IS NOT NULL LIMIT " . LimitTotalMatches . ";") for each, row in NormalizeTable.Rows { @@ -295,25 +301,24 @@ RecomputeMatches() Normalize := 0 } - WordLen := StrLen(Word) + WordLen := StrLen(g_Word) OrderByQuery := " ORDER BY CASE WHEN count IS NULL then ROWID else 'z' end, CASE WHEN count IS NOT NULL then ( (count - " . Normalize . ") * ( 1 - ( '0.75' / (LENGTH(word) - " . WordLen . ")))) end DESC, Word" } - Matches := wDB.Query("SELECT word FROM Words" . WhereQuery . OrderByQuery . " LIMIT " . LimitTotalMatches . ";") + Matches := g_WordListDB.Query("SELECT word FROM Words" . WhereQuery . OrderByQuery . " LIMIT " . LimitTotalMatches . ";") - singlematch := Object() + g_singlematch := Object() for each, row in Matches.Rows { - MatchTotal++ - singlematch[MatchTotal] := row[1] + g_singlematch[++g_MatchTotal] := row[1] continue } ;If no match then clear Tip - IfEqual, MatchTotal, 0 + IfEqual, g_MatchTotal, 0 { ClearAllVars(false) Return @@ -327,46 +332,45 @@ RecomputeMatches() ;------------------------------------------------------------------------ ~LButton:: -; Update last click position in case Caret is not detectable -; and update the Last Window Clicked in -MouseGetPos, MouseX, MouseY, MouseWin_ID -WinGetPos, ,TempY, , , ahk_id %MouseWin_ID% -CheckForCaretMove("LButton") +CheckForCaretMove("LButton","UpdatePosition") return ;------------------------------------------------------------------------ ~RButton:: -; Update the Last Window Clicked in -MouseGetPos, , ,MouseWin_ID -; Using GoSub as A_CaretX in function call breaks doubleclick -CheckForCaretMove("RButton") +CheckForCaretMove("RButton","UpdatePosition") Return ;------------------------------------------------------------------------ -CheckForCaretMove(MouseButtonClick) +CheckForCaretMove(MouseButtonClick, UpdatePosition = false) { - global DetectMouseClickMove - global LastInput_Id - global MouseWin_ID - global MouseX, MouseY - global OldCaretX - global OldCaretY - global TempY - global Word + global g_LastInput_Id + global g_MouseWin_Id + global g_OldCaretX + global g_OldCaretY + global g_Word + global prefs_DetectMouseClickMove ;If we aren't using the DetectMouseClickMoveScheme, skip out - IfNotEqual, DetectMouseClickMove, On + IfNotEqual, prefs_DetectMouseClickMove, On Return + if (UpdatePosition) + { + ; Update last click position in case Caret is not detectable + ; and update the Last Window Clicked in + MouseGetPos, MouseX, MouseY, g_MouseWin_Id + WinGetPos, ,TempY, , , ahk_id %g_MouseWin_Id% + } + IfEqual, MouseButtonClick, LButton { KeyWait, LButton, U } else KeyWait, RButton, U - IfNotEqual, LastInput_Id, %MouseWin_ID% + IfNotEqual, g_LastInput_Id, %g_MouseWin_Id% { Return } @@ -380,15 +384,15 @@ CheckForCaretMove(MouseButtonClick) Return } - ; If we have a Word and an OldCaretX, check to see if the Caret moved - IfNotEqual, OldCaretX, + ; If we have a g_Word and an g_OldCaretX, check to see if the Caret moved + IfNotEqual, g_OldCaretX, { - IfNotEqual, Word, + IfNotEqual, g_Word, { - if (( OldCaretY != HCaretY() ) || (OldCaretX != HCaretX() )) + if (( g_OldCaretY != HCaretY() ) || (g_OldCaretX != HCaretX() )) { ; add the word if switching lines - AddWordToList(Word,0) + AddWordToList(g_Word,0) ClearAllVars(true) } } @@ -402,13 +406,13 @@ CheckForCaretMove(MouseButtonClick) InitializeHotKeys() { - global ArrowKeyMethod - global DelimiterChar - global DisabledAutoCompleteKeys - global EnabledKeyboardHotKeys - global LearnMode + global g_DelimiterChar + global g_EnabledKeyboardHotKeys + global prefs_ArrowKeyMethod + global prefs_DisabledAutoCompleteKeys + global prefs_LearnMode - EnabledKeyboardHotKeys = + g_EnabledKeyboardHotKeys = ;Setup toggle-able hotkeys @@ -418,7 +422,7 @@ InitializeHotKeys() ; If we disable the number keys they never get to the input for some reason, ; so we need to keep them enabled as hotkeys - IfNotEqual, LearnMode, On + IfNotEqual, prefs_LearnMode, On { Hotkey, $^+Delete, Off @@ -427,10 +431,10 @@ InitializeHotKeys() HotKey, $^+c, On Hotkey, $^+Delete, Off ; We only want Ctrl-Shift-Delete enabled when the listbox is showing. - EnabledKeyboardHotKeys .= "$^+Delete" . DelimiterChar + g_EnabledKeyboardHotKeys .= "$^+Delete" . g_DelimiterChar } - IfEqual, ArrowKeyMethod, Off + IfEqual, prefs_ArrowKeyMethod, Off { Hotkey, $^Enter, Off Hotkey, $^Space, Off @@ -441,37 +445,37 @@ InitializeHotKeys() Hotkey, $PgUp, Off Hotkey, $PgDn, Off } else { - EnabledKeyboardHotKeys .= "$Up" . DelimiterChar - EnabledKeyboardHotKeys .= "$Down" . DelimiterChar - EnabledKeyboardHotKeys .= "$PgUp" . DelimiterChar - EnabledKeyboardHotKeys .= "$PgDn" . DelimiterChar - If DisabledAutoCompleteKeys contains E + g_EnabledKeyboardHotKeys .= "$Up" . g_DelimiterChar + g_EnabledKeyboardHotKeys .= "$Down" . g_DelimiterChar + g_EnabledKeyboardHotKeys .= "$PgUp" . g_DelimiterChar + g_EnabledKeyboardHotKeys .= "$PgDn" . g_DelimiterChar + If prefs_DisabledAutoCompleteKeys contains E Hotkey, $^Enter, Off - else EnabledKeyboardHotKeys .= "$^Enter" . DelimiterChar - If DisabledAutoCompleteKeys contains S + else g_EnabledKeyboardHotKeys .= "$^Enter" . g_DelimiterChar + If prefs_DisabledAutoCompleteKeys contains S HotKey, $^Space, Off - else EnabledKeyboardHotKeys .= "$^Space" . DelimiterChar - If DisabledAutoCompleteKeys contains T + else g_EnabledKeyboardHotKeys .= "$^Space" . g_DelimiterChar + If prefs_DisabledAutoCompleteKeys contains T HotKey, $Tab, Off - else EnabledKeyboardHotKeys .= "$Tab" . DelimiterChar - If DisabledAutoCompleteKeys contains R + else g_EnabledKeyboardHotKeys .= "$Tab" . g_DelimiterChar + If prefs_DisabledAutoCompleteKeys contains R HotKey, $Right, Off - else EnabledKeyboardHotKeys .= "$Right" . DelimiterChar - If DisabledAutoCompleteKeys contains U + else g_EnabledKeyboardHotKeys .= "$Right" . g_DelimiterChar + If prefs_DisabledAutoCompleteKeys contains U HotKey, $Enter, Off - else EnabledKeyboardHotKeys .= "$Enter" . DelimiterChar + else g_EnabledKeyboardHotKeys .= "$Enter" . g_DelimiterChar } ; remove last ascii 2 - StringTrimRight, EnabledKeyboardHotKeys, EnabledKeyboardHotKeys, 1 + StringTrimRight, g_EnabledKeyboardHotKeys, g_EnabledKeyboardHotKeys, 1 } EnableKeyboardHotKeys() { - global EnabledKeyboardHotKeys - global DelimiterChar - Loop, Parse, EnabledKeyboardHotKeys, %DelimiterChar% + global g_DelimiterChar + global g_EnabledKeyboardHotKeys + Loop, Parse, g_EnabledKeyboardHotKeys, %g_DelimiterChar% { HotKey, %A_LoopField%, On } @@ -480,9 +484,9 @@ EnableKeyboardHotKeys() DisableKeyboardHotKeys() { - global EnabledKeyboardHotKeys - global DelimiterChar - Loop, Parse, EnabledKeyboardHotKeys, %DelimiterChar% + global g_DelimiterChar + global g_EnabledKeyboardHotKeys + Loop, Parse, g_EnabledKeyboardHotKeys, %g_DelimiterChar% { HotKey, %A_LoopField%, Off } @@ -535,32 +539,32 @@ Return ; If hotkey was pressed, check wether there's a match going on and send it, otherwise send the number(s) typed CheckWord(Key) { - global ListBox_ID - global ListBoxRows - global Match - global MatchStart - global NumKeyMethod - global NumPresses - global singlematch - global Word + global g_ListBox_Id + global g_Match + global g_MatchStart + global g_NumKeyMethod + global g_singlematch + global g_Word + global prefs_ListBoxRows + global prefs_NumPresses StringRight, Key, Key, 1 ;Grab just the number pushed, trim off the "$" IfEqual, Key, 0 { - WordIndex := MatchStart + 9 + WordIndex := g_MatchStart + 9 } else { - WordIndex := MatchStart - 1 + Key + WordIndex := g_MatchStart - 1 + Key } - IfEqual, NumKeyMethod, Off + IfEqual, g_NumKeyMethod, Off { SendCompatible(Key,0) ProcessKey(Key,"") Return } - IfEqual, NumPresses, 2 + IfEqual, prefs_NumPresses, 2 SuspendOn() ; If active window has different window ID from before the input, blank word @@ -569,7 +573,7 @@ CheckWord(Key) { SendCompatible(Key,0) ProcessKey(Key,"") - IfEqual, NumPresses, 2 + IfEqual, prefs_NumPresses, 2 SuspendOff() Return } @@ -578,42 +582,42 @@ CheckWord(Key) { SendCompatible(Key,0) ProcessKey(Key,"") - IfEqual, NumPresses, 2 + IfEqual, prefs_NumPresses, 2 SuspendOff() Return } - IfNotEqual, Match, + IfNotEqual, g_Match, { - ifequal, ListBox_ID, ; only continue if match is not empty and list is showing + ifequal, g_ListBox_Id, ; only continue if match is not empty and list is showing { SendCompatible(Key,0) ProcessKey(Key,"") - IfEqual, NumPresses, 2 + IfEqual, prefs_NumPresses, 2 SuspendOff() Return } } - ifequal, Word, ; only continue if word is not empty + ifequal, g_Word, ; only continue if g_word is not empty { SendCompatible(Key,0) ProcessKey(Key,"") - IfEqual, NumPresses, 2 + IfEqual, prefs_NumPresses, 2 SuspendOff() Return } - if ( ( (WordIndex + 1 - MatchStart) > ListBoxRows) || ( Match = "" ) || (singlematch[WordIndex] = "") ) ; only continue singlematch is not empty + if ( ( (WordIndex + 1 - MatchStart) > prefs_ListBoxRows) || ( g_Match = "" ) || (g_singlematch[WordIndex] = "") ) ; only continue singlematch is not empty { SendCompatible(Key,0) ProcessKey(Key,"") - IfEqual, NumPresses, 2 + IfEqual, prefs_NumPresses, 2 SuspendOff() Return } - IfEqual, NumPresses, 2 + IfEqual, prefs_NumPresses, 2 { Input, KeyAgain, L1 I T0.5, 1234567890 @@ -649,7 +653,7 @@ CheckWord(Key) } SendWord(WordIndex) - IfEqual, NumPresses, 2 + IfEqual, prefs_NumPresses, 2 SuspendOff() Return } @@ -659,30 +663,30 @@ CheckWord(Key) ;If a hotkey related to the up/down arrows was pressed EvaluateUpDown(Key) { - global ArrowKeyMethod - global DisabledAutoCompleteKeys - global ListBox_ID - global ListBoxRows - global Match - global MatchPos - global MatchStart - global MatchTotal - global singlematch - global Word + global g_ListBox_Id + global g_Match + global g_MatchPos + global g_MatchStart + global g_MatchTotal + global g_singlematch + global g_Word + global prefs_ArrowKeyMethod + global prefs_DisabledAutoCompleteKeys + global prefs_ListBoxRows - IfEqual, ArrowKeyMethod, Off + IfEqual, prefs_ArrowKeyMethod, Off { SendKey(Key) Return } - IfEqual, Match, + IfEqual, g_Match, { SendKey(Key) Return } - IfEqual, ListBox_ID, + IfEqual, g_ListBox_Id, { SendKey(Key) Return @@ -702,7 +706,7 @@ EvaluateUpDown(Key) Return } - IfEqual, Word, ; only continue if word is not empty + IfEqual, g_Word, ; only continue if word is not empty { SendKey(Key) ClearAllVars(false) @@ -735,102 +739,102 @@ EvaluateUpDown(Key) } } - if DisabledAutoCompleteKeys contains %KeyTest% + if prefs_DisabledAutoCompleteKeys contains %KeyTest% { SendKey(Key) Return } - if (singlematch[MatchPos] = "") ;only continue if singlematch is not empty + if (g_singlematch[g_MatchPos] = "") ;only continue if singlematch is not empty { SendKey(Key) - MatchPos := MatchTotal + g_MatchPos := g_MatchTotal RebuildMatchList() ShowListBox() Return } - SendWord(MatchPos) + SendWord(g_MatchPos) Return } - PreviousMatchStart := MatchStart + PreviousMatchStart := g_MatchStart IfEqual, Key, $Up { - MatchPos-- + g_MatchPos-- - IfLess, MatchPos, 1 + IfLess, g_MatchPos, 1 { - MatchStart := MatchTotal - (ListBoxRows - 1) - IfLess, MatchStart, 1 - MatchStart = 1 - MatchPos := MatchTotal + g_MatchStart := g_MatchTotal - (prefs_ListBoxRows - 1) + IfLess, g_MatchStart, 1 + g_MatchStart = 1 + g_MatchPos := g_MatchTotal } else { - IfLess, MatchPos, %MatchStart% - MatchStart -- + IfLess, g_MatchPos, %g_MatchStart% + g_MatchStart -- } } else { IfEqual, Key, $Down { - MatchPos++ - IfGreater, MatchPos, %MatchTotal% + g_MatchPos++ + IfGreater, g_MatchPos, %g_MatchTotal% { - MatchStart =1 - MatchPos =1 + g_MatchStart =1 + g_MatchPos =1 } Else { - If ( MatchPos > ( MatchStart + (ListBoxRows - 1) ) ) - MatchStart ++ + If ( g_MatchPos > ( g_MatchStart + (prefs_ListBoxRows - 1) ) ) + g_MatchStart ++ } } else { IfEqual, Key, $PgUp { - IfEqual, MatchPos, 1 + IfEqual, g_MatchPos, 1 { - MatchPos := MatchTotal - (ListBoxRows - 1) - MatchStart := MatchTotal - (ListBoxRows - 1) + g_MatchPos := g_MatchTotal - (prefs_ListBoxRows - 1) + g_MatchStart := g_MatchTotal - (prefs_ListBoxRows - 1) } Else { - MatchPos-=ListBoxRows - MatchStart-=ListBoxRows + g_MatchPos-=prefs_ListBoxRows + g_MatchStart-=prefs_ListBoxRows } - IfLess, MatchPos, 1 - MatchPos = 1 - IfLess, MatchStart, 1 - MatchStart = 1 + IfLess, g_MatchPos, 1 + g_MatchPos = 1 + IfLess, g_MatchStart, 1 + g_MatchStart = 1 } else { IfEqual, Key, $PgDn { - IfEqual, MatchPos, %MatchTotal% + IfEqual, g_MatchPos, %g_MatchTotal% { - MatchPos := ListBoxRows - MatchStart := 1 + g_MatchPos := prefs_ListBoxRows + g_MatchStart := 1 } else { - MatchPos+=ListBoxRows - MatchStart+=ListBoxRows + g_MatchPos+=prefs_ListBoxRows + g_MatchStart+=prefs_ListBoxRows } - IfGreater, MatchPos, %MatchTotal% - MatchPos := MatchTotal + IfGreater, g_MatchPos, %g_MatchTotal% + g_MatchPos := g_MatchTotal - If ( MatchStart > ( MatchTotal - (ListBoxRows - 1) ) ) + If ( g_MatchStart > ( g_MatchTotal - (prefs_ListBoxRows - 1) ) ) { - MatchStart := MatchTotal - (ListBoxRows - 1) - IfLess, MatchStart, 1 - MatchStart = 1 + g_MatchStart := g_MatchTotal - (prefs_ListBoxRows - 1) + IfLess, g_MatchStart, 1 + g_MatchStart = 1 } } } } } - IfEqual, MatchStart, %PreviousMatchStart% + IfEqual, g_MatchStart, %PreviousMatchStart% { Rows := GetRows() - IfNotEqual, MatchPos, + IfNotEqual, g_MatchPos, { ListBoxChooseItem(Rows) } @@ -845,13 +849,13 @@ EvaluateUpDown(Key) ReturnLineWrong() { - global DetectMouseClickMove - global OldCaretY + global g_OldCaretY + global prefs_DetectMouseClickMove ; Return false if we are using DetectMouseClickMove - IfEqual, DetectMouseClickMove, On + IfEqual, prefs_DetectMouseClickMove, On Return - Return, ( OldCaretY != HCaretY() ) + Return, ( g_OldCaretY != HCaretY() ) } ;------------------------------------------------------------------------ @@ -872,13 +876,13 @@ AddSelectedWordToList() DeleteSelectedWordFromList() { - global MatchPos - global singlematch + global g_MatchPos + global g_singlematch - if !(singlematch[MatchPos] = "") ;only continue if singlematch is not empty + if !(g_singlematch[g_MatchPos] = "") ;only continue if singlematch is not empty { - DeleteWordFromList(singlematch[MatchPos]) + DeleteWordFromList(g_singlematch[g_MatchPos]) RecomputeMatches() Return } @@ -890,7 +894,7 @@ DeleteSelectedWordFromList() EvaluateScriptPathAndTitle() { ;relaunches to 64 bit or sets script title - global ScriptTitle + global g_ScriptTitle SplitPath, A_ScriptName,,,ScriptExtension,ScriptNoExtension, @@ -914,14 +918,14 @@ EvaluateScriptPathAndTitle() if (SubStr(ScriptNoExtension, StrLen(ScriptNoExtension)-1, 2) == "64" ) { - StringTrimRight, ScriptTitle, ScriptNoExtension, 2 + StringTrimRight, g_ScriptTitle, ScriptNoExtension, 2 } else { - ScriptTitle := ScriptNoExtension + g_ScriptTitle := ScriptNoExtension } - if (InStr(ScriptTitle, "TypingAid")) + if (InStr(g_ScriptTitle, "TypingAid")) { - ScriptTitle = TypingAid + g_ScriptTitle = TypingAid } return @@ -931,29 +935,29 @@ EvaluateScriptPathAndTitle() SuspendOn() { - global ScriptTitle + global g_ScriptTitle Suspend, On - Menu, Tray, Tip, %ScriptTitle% - Inactive + Menu, Tray, Tip, %g_ScriptTitle% - Inactive If A_IsCompiled { Menu, tray, Icon, %A_ScriptName%,3,1 } else { - Menu, tray, icon, %ScriptTitle%-Inactive.ico, ,1 + Menu, tray, icon, %g_ScriptTitle%-Inactive.ico, ,1 } } SuspendOff() { - global ScriptTitle + global g_ScriptTitle Suspend, Off - Menu, Tray, Tip, %ScriptTitle% - Active + Menu, Tray, Tip, %g_ScriptTitle% - Active If A_IsCompiled { Menu, tray, Icon, %A_ScriptName%,1,1 } else { - Menu, tray, icon, %ScriptTitle%-Active.ico, ,1 + Menu, tray, icon, %g_ScriptTitle%-Active.ico, ,1 } } @@ -989,17 +993,16 @@ ClearAllVars(ClearWord) CloseListBox() Ifequal,ClearWord,1 { - Word = - OldCaretY= - OldCaretX= - LastInput_id= + g_Word = + g_OldCaretY= + g_OldCaretX= + g_LastInput_id= } - singlematch = - sending = - Match= - MatchPos= - MatchStart= + g_singlematch = + g_Match= + g_MatchPos= + g_MatchStart= Return } From 26465015a554833062cc2423acc78a00af077c5f Mon Sep 17 00:00:00 2001 From: ManiacDC Date: Mon, 9 Mar 2015 10:08:15 -0400 Subject: [PATCH 44/62] Updated with latest changes to DBA --- Source/Lib/ADO.ahk | 2 +- Source/Lib/ArchLogger.ahk | 8 +++---- Source/Lib/Base.ahk | 4 ++-- Source/Lib/Collection.ahk | 2 +- Source/Lib/DataBaseADO.ahk | 12 +++++----- Source/Lib/DataBaseAbstract.ahk | 42 ++++++++++++++++----------------- Source/Lib/DataBaseFactory.ahk | 2 +- Source/Lib/DataBaseSQLLite.ahk | 8 +++---- Source/Lib/RecordSetADO.ahk | 6 ++--- Source/Lib/RecordSetSqlLite.ahk | 6 ++--- Source/Lib/SQLite_L.ahk | 4 ++-- Source/Lib/mySQL.ahk | 9 +++---- 12 files changed, 51 insertions(+), 54 deletions(-) diff --git a/Source/Lib/ADO.ahk b/Source/Lib/ADO.ahk index 7e126f7..dbb0a3b 100644 --- a/Source/Lib/ADO.ahk +++ b/Source/Lib/ADO.ahk @@ -6,7 +6,7 @@ * Provides Static ADO Helper classes and Enums * */ -class ADO +class gDBA_ADO { class CursorType { diff --git a/Source/Lib/ArchLogger.ahk b/Source/Lib/ArchLogger.ahk index f6f429a..a7de92f 100644 --- a/Source/Lib/ArchLogger.ahk +++ b/Source/Lib/ArchLogger.ahk @@ -1,24 +1,24 @@ #Include -class ArchLogger +class gDBA_ArchLogger { static Logger := new _ArchLoggerFile() SetLogger(newLogger){ - ArchLogger.Logger := newLogger + gDBA_ArchLogger.Logger := newLogger } Log(msg){ date := A_DD "." A_MM "." A_YYYY time := A_Hour ":" A_Min - ArchLogger.Logger.Log("# " date " ( " time " ) " msg) + gDBA_ArchLogger.Logger.Log("# " date " ( " time " ) " msg) } } class _ArchLoggerCallBack { - callBack := null + callBack := gDBA_null Log(msg){ this.callBack.( msg ) diff --git a/Source/Lib/Base.ahk b/Source/Lib/Base.ahk index 5121571..8f84168 100644 --- a/Source/Lib/Base.ahk +++ b/Source/Lib/Base.ahk @@ -3,7 +3,7 @@ *************************************** */ -global null := 0 ; for better readability +global gDBA_null := 0 ; for better readability /* Check for same (base) Type @@ -114,7 +114,7 @@ Contains(list, value){ * Provides some common used Exception Templates * */ -class Exceptions +class gDBA_Exceptions { NotImplemented(name=""){ return Exception("A not implemented Method was called." (name != "" ? ": " name : "") ,-1) diff --git a/Source/Lib/Collection.ahk b/Source/Lib/Collection.ahk index b8c92fd..9757af2 100644 --- a/Source/Lib/Collection.ahk +++ b/Source/Lib/Collection.ahk @@ -20,7 +20,7 @@ class Collection for each, item in objs this.Insert(item) } else - throw Exceptions.ArgumentException("Must submit Array!") + throw gDBA_Exceptions.ArgumentException("Must submit Array!") } Clear(){ diff --git a/Source/Lib/DataBaseADO.ahk b/Source/Lib/DataBaseADO.ahk index 61f34b3..3646d52 100644 --- a/Source/Lib/DataBaseADO.ahk +++ b/Source/Lib/DataBaseADO.ahk @@ -5,7 +5,7 @@ */ class DataBaseADO extends DBA.DataBase { - _connection := null + _connection := gDBA_null _connectionData := "" __New(connectionString){ @@ -31,7 +31,7 @@ class DataBaseADO extends DBA.DataBase if(this.IsConnected()) { this._connection.Close() - this._connection := null + this._connection := gDBA_null } } @@ -98,7 +98,7 @@ class DataBaseADO extends DBA.DataBase ;Execute( commandtext,ra,options) affectedRows := 0 rs := this._connection.Execute(sql, affectedRows) - if(IsObject(rs) && rs.State != ADO.ObjectStateEnum.adStateClosed) + if(IsObject(rs) && rs.State != gDBA_ADO.ObjectStateEnum.adStateClosed) { ret := this.FetchADORecordSet(rs) rs.Close() @@ -130,7 +130,7 @@ class DataBaseADO extends DBA.DataBase } FetchADORecordSet(adoRS){ - tbl := null + tbl := gDBA_null if(IsObject(adoRS) && !adoRS.EOF) { columnNames := new Collection() @@ -167,7 +167,7 @@ class DataBaseADO extends DBA.DataBase rs := ComObjCreate("ADODB.Recordset") /* batch - rs.Open(tableName, this._connection, ADO.CursorType.adOpenKeyset, ADO.LockType.adLockBatchOptimistic, ADO.CommandType.adCmdTable) + rs.Open(tableName, this._connection, gDBA_ADO.CursorType.adOpenKeyset, gDBA_ADO.LockType.adLockBatchOptimistic, gDBA_ADO.CommandType.adCmdTable) for each, record in records { @@ -181,7 +181,7 @@ class DataBaseADO extends DBA.DataBase rs.UpdateBatch() */ - rs.Open(tableName, this._connection, ADO.CursorType.adOpenKeyset, ADO.LockType.adLockOptimistic, ADO.CommandType.adCmdTable) + rs.Open(tableName, this._connection, gDBA_ADO.CursorType.adOpenKeyset, gDBA_ADO.LockType.adLockOptimistic, gDBA_ADO.CommandType.adCmdTable) for each, record in records { diff --git a/Source/Lib/DataBaseAbstract.ahk b/Source/Lib/DataBaseAbstract.ahk index 647207d..99ff581 100644 --- a/Source/Lib/DataBaseAbstract.ahk +++ b/Source/Lib/DataBaseAbstract.ahk @@ -168,11 +168,11 @@ class DataBase } IsValid(){ - throw Exceptions.MustOverride(this.__Class "." A_ThisFunc) + throw gDBA_Exceptions.MustOverride(this.__Class "." A_ThisFunc) } Query(sql){ - throw Exceptions.MustOverride(this.__Class "." A_ThisFunc) + throw gDBA_Exceptions.MustOverride(this.__Class "." A_ThisFunc) } QueryValue(sQry){ @@ -190,7 +190,7 @@ class DataBase } OpenRecordSet(sql, editable = false){ - throw Exceptions.MustOverride(this.__Class "." A_ThisFunc) + throw gDBA_Exceptions.MustOverride(this.__Class "." A_ThisFunc) } ToSqlLiteral(value) { @@ -206,45 +206,45 @@ class DataBase } EscapeString(string){ - throw Exceptions.MustOverride(this.__Class "." A_ThisFunc) + throw gDBA_Exceptions.MustOverride(this.__Class "." A_ThisFunc) } QuoteIdentifier(identifier){ - throw Exceptions.MustOverride(this.__Class "." A_ThisFunc) + throw gDBA_Exceptions.MustOverride(this.__Class "." A_ThisFunc) } BeginTransaction(){ - throw Exceptions.MustOverride( this.__Class "." A_ThisFunc) + throw gDBA_Exceptions.MustOverride( this.__Class "." A_ThisFunc) } EndTransaction(){ - throw Exceptions.MustOverride(this.__Class "." A_ThisFunc) + throw gDBA_Exceptions.MustOverride(this.__Class "." A_ThisFunc) } Rollback(){ - throw Exceptions.MustOverride(this.__Class "." A_ThisFunc) + throw gDBA_Exceptions.MustOverride(this.__Class "." A_ThisFunc) } Insert(record, tableName){ - throw Exceptions.MustOverride(this.__Class "." A_ThisFunc) + throw gDBA_Exceptions.MustOverride(this.__Class "." A_ThisFunc) } InsertMany(records, tableName){ - throw Exceptions.MustOverride(this.__Class "." A_ThisFunc) + throw gDBA_Exceptions.MustOverride(this.__Class "." A_ThisFunc) } Update(fields, constraints, tableName, safe = True){ - throw Exceptions.MustOverride(this.__Class "." A_ThisFunc) + throw gDBA_Exceptions.MustOverride(this.__Class "." A_ThisFunc) } Close(){ - throw Exceptions.MustOverride(this.__Class "." A_ThisFunc) + throw gDBA_Exceptions.MustOverride(this.__Class "." A_ThisFunc) } } class RecordSet { - _currentRow := null ; Row + _currentRow := gDBA_null ; Row __delete() { this.Close() @@ -255,35 +255,35 @@ class RecordSet } AddNew(){ - throw Exceptions.MustOverride(this.__Class "." A_ThisFunc) + throw gDBA_Exceptions.MustOverride(this.__Class "." A_ThisFunc) } MoveNext(){ - throw Exceptions.MustOverride(this.__Class "." A_ThisFunc) + throw gDBA_Exceptions.MustOverride(this.__Class "." A_ThisFunc) } Delete(){ - throw Exceptions.MustOverride(this.__Class "." A_ThisFunc) + throw gDBA_Exceptions.MustOverride(this.__Class "." A_ThisFunc) } Update(){ - throw Exceptions.MustOverride(this.__Class "." A_ThisFunc) + throw gDBA_Exceptions.MustOverride(this.__Class "." A_ThisFunc) } Close(){ - throw Exceptions.MustOverride(this.__Class "." A_ThisFunc) + throw gDBA_Exceptions.MustOverride(this.__Class "." A_ThisFunc) } getEOF(){ - throw Exceptions.MustOverride(this.__Class "." A_ThisFunc) + throw gDBA_Exceptions.MustOverride(this.__Class "." A_ThisFunc) } IsValid(){ - throw Exceptions.MustOverride(this.__Class "." A_ThisFunc) + throw gDBA_Exceptions.MustOverride(this.__Class "." A_ThisFunc) } getColumnNames(){ - throw Exceptions.MustOverride(this.__Class "." A_ThisFunc) + throw gDBA_Exceptions.MustOverride(this.__Class "." A_ThisFunc) } getCurrentRow(){ diff --git a/Source/Lib/DataBaseFactory.ahk b/Source/Lib/DataBaseFactory.ahk index 08d9752..bb421a4 100644 --- a/Source/Lib/DataBaseFactory.ahk +++ b/Source/Lib/DataBaseFactory.ahk @@ -1,6 +1,6 @@ class DataBaseFactory { - static AvaiableTypes := ["SQLite", "MySQL", "ADO"] + static AvailableTypes := ["SQLite", "MySQL", "ADO"] /* This static Method returns an Instance of an DataBase derived Object diff --git a/Source/Lib/DataBaseSQLLite.ahk b/Source/Lib/DataBaseSQLLite.ahk index 28ca052..080269d 100644 --- a/Source/Lib/DataBaseSQLLite.ahk +++ b/Source/Lib/DataBaseSQLLite.ahk @@ -28,12 +28,12 @@ class DataBaseSQLLite extends DBA.DataBase { throw Exception("Can not create a DataBaseSQLLite instance, because the connection handle is not valid!") } - ArchLogger.Log("New DataBaseSQLLite: Handle @" handleDB) + gDBA_ArchLogger.Log("New DataBaseSQLLite: Handle @" handleDB) } Close(){ - ;ArchLogger.Log("DataBaseSQLLite: Close DB Handle @" handleDB) + ;gDBA_ArchLogger.Log("DataBaseSQLLite: Close DB Handle @" handleDB) return SQLite_CloseDB(this._handleDB) } @@ -98,7 +98,7 @@ class DataBaseSQLLite extends DBA.DataBase */ Query(sql){ - ret := null + ret := gDBA_null if (RegExMatch(sql, "i)^\s*SELECT\s")){ ; check if this is a selection query @@ -175,7 +175,7 @@ class DataBaseSQLLite extends DBA.DataBase query := SQLite_Query(this._handleDB, sql) ;prepare the query if ErrorLevel - msgbox % errorlevel + msgbox % ErrorLevel try { diff --git a/Source/Lib/RecordSetADO.ahk b/Source/Lib/RecordSetADO.ahk index ce5e02f..2bfdfdb 100644 --- a/Source/Lib/RecordSetADO.ahk +++ b/Source/Lib/RecordSetADO.ahk @@ -12,7 +12,7 @@ class RecordSetADO extends DBA.RecordSet this._adoRS := ComObjCreate("ADODB.Recordset") if(editable) - this._adoRS.Open(sql, adoConnection, ADO.CursorType.adOpenKeyset, ADO.LockType.adLockOptimistic, ADO.CommandType.adCmdTable) + this._adoRS.Open(sql, adoConnection, gDBA_ADO.CursorType.adOpenKeyset, gDBA_ADO.LockType.adLockOptimistic, gDBA_ADO.CommandType.adCmdTable) else this._adoRS.Open(sql, adoConnection) } @@ -58,7 +58,7 @@ class RecordSetADO extends DBA.RecordSet Delete(){ if(this.IsValid() && !this.getEOF()) { - this._adoRS.Delete(ADO.AffectEnum.adAffectCurrent) + this._adoRS.Delete(gDBA_ADO.AffectEnum.adAffectCurrent) } } @@ -87,7 +87,7 @@ class RecordSetADO extends DBA.RecordSet if(this.IsValid()) { this._adoRS.Close() - this._adoRS := null + this._adoRS := gDBA_null } } diff --git a/Source/Lib/RecordSetSqlLite.ahk b/Source/Lib/RecordSetSqlLite.ahk index 26542e9..81a056e 100644 --- a/Source/Lib/RecordSetSqlLite.ahk +++ b/Source/Lib/RecordSetSqlLite.ahk @@ -95,18 +95,18 @@ class RecordSetSqlLite extends DBA.RecordSet Loop, %rc% { ctype := DllCall("SQlite3\sqlite3_column_type", UInt, this._query, Int, A_Index - 1, "Cdecl Int") - if (ctype == SQLiteDataType.SQLITE_NULL) { + if (ctype == gDBA_SQLiteDataType.SQLITE_NULL) { fields[A_Index] := DBA.DataBase.NULL ;"" - }else if(ctype == SQLiteDataType.SQLITE_BLOB){ + }else if(ctype == gDBA_SQLiteDataType.SQLITE_BLOB){ blobSize := DllCall("SQlite3\sqlite3_column_bytes", UInt, this._query, Int, A_Index -1, "Cdecl UInt") blobPtr := DllCall("SQlite3\sqlite3_column_blob", UInt, this._query, Int, A_Index - 1, "Cdecl Ptr") if ( blobPtr ) { - fields[A_Index] := MemoryBuffer.Create( blobPtr, blobSize ) + fields[A_Index] := MemoryBuffer.Create( blobPtr, blobSize ) }else{ fields[A_Index] := DBA.DataBase.NULL } diff --git a/Source/Lib/SQLite_L.ahk b/Source/Lib/SQLite_L.ahk index 6533378..33a95ef 100644 --- a/Source/Lib/SQLite_L.ahk +++ b/Source/Lib/SQLite_L.ahk @@ -86,7 +86,7 @@ #Include #Include -class SQLiteDataType +class gDBA_SQLiteDataType { static SQLITE_INTEGER := 1 static SQLITE_FLOAT := 2 @@ -328,7 +328,7 @@ SQLite_Bind(query, idx, val, type = "auto") { type := "text" } - ArchLogger.Log(A_ThisFunc ": Binding value as: " type) + gDBA_ArchLogger.Log(A_ThisFunc ": Binding value as: " type) if (type = "int" || type = "Integer") diff --git a/Source/Lib/mySQL.ahk b/Source/Lib/mySQL.ahk index 5fa8016..d5a0d8b 100644 --- a/Source/Lib/mySQL.ahk +++ b/Source/Lib/mySQL.ahk @@ -205,7 +205,7 @@ Mysql_fetch_field(requestResult) { Fetches all fields of the resultSet */ MySQL_fetch_fields(requestResult){ - global MySQL_Field + global gDBA_MySQL_Field fields := [] fieldCount := MySQL_num_fields(requestResult) @@ -213,7 +213,7 @@ MySQL_fetch_fields(requestResult){ Loop, % fieldCount { fptr := Mysql_fetch_field(requestResult) - fields[A_index] := new MySQL_Field(fptr) + fields[A_index] := new gDBA_MySQL_Field(fptr) } return fields } @@ -253,9 +253,6 @@ GetPtrAtAddress(_addr, _offset) ;============================================================ __MySQL_Query_Dump(_db, _query) { - local resultString, result, requestResult, fieldCount - local row, lengths, length, fieldPointer, field - result := DllCall("libmySQL.dll\mysql_query", "UInt", _db , "AStr", _query) @@ -389,7 +386,7 @@ Public Type API_MYSQL_FIELD decimals As Long End Type */ -class MySQL_Field +class gDBA_MySQL_Field { ptr := 0 From 747518878c03b03d7a585c2d54e426440fcd29cd Mon Sep 17 00:00:00 2001 From: ManiacDC Date: Tue, 10 Mar 2015 07:41:26 -0400 Subject: [PATCH 45/62] Fixed toggling number keys on/off --- Source/Includes/Preferences File.ahk | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/Source/Includes/Preferences File.ahk b/Source/Includes/Preferences File.ahk index 361bc58..db61005 100644 --- a/Source/Includes/Preferences File.ahk +++ b/Source/Includes/Preferences File.ahk @@ -260,7 +260,11 @@ ValidatePreferences() } if prefs_DisabledAutoCompleteKeys contains N + { g_NumKeyMethod = Off + } else { + g_NumKeyMethod = On + } IfNotEqual, prefs_ArrowKeyMethod, Off If prefs_DisabledAutoCompleteKeys contains E From fd6b5802d84d99547e38d697c0cf07aed1ba0387 Mon Sep 17 00:00:00 2001 From: ManiacDC Date: Tue, 10 Mar 2015 08:01:29 -0400 Subject: [PATCH 46/62] Added Exit button in a compiled script --- Source/TypingAid.ahk | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/Source/TypingAid.ahk b/Source/TypingAid.ahk index 0916226..958aeb7 100644 --- a/Source/TypingAid.ahk +++ b/Source/TypingAid.ahk @@ -975,8 +975,10 @@ BuildTrayMenu(State) } else { Menu, Tray, add, Resume, ResumeScript } - IF !(A_IsCompiled) + IF (A_IsCompiled) { + Menu, Tray, add, Exit, ExitScript + } else { Menu, Tray, Standard } Menu, Tray, Default, Settings @@ -1084,13 +1086,16 @@ SuspendOn() BuildTrayMenu("Paused") Pause, On, 1 Return - ResumeScript: Pause, Off EnableWinHook() BuildTrayMenu("Running") Return + +ExitScript: +ExitApp +Return SaveScript: ; Close the ListBox if it's open From f779c0fdd93f1668cb905b471a650af08baad4cd Mon Sep 17 00:00:00 2001 From: ManiacDC Date: Tue, 10 Mar 2015 08:12:33 -0400 Subject: [PATCH 47/62] Changed Pause button to use a checkmark rather than toggling between Pause/Resume to follow Windows Notification Area guidelines. --- Source/TypingAid.ahk | 36 +++++++++++++++++------------------- 1 file changed, 17 insertions(+), 19 deletions(-) diff --git a/Source/TypingAid.ahk b/Source/TypingAid.ahk index 958aeb7..497cbc0 100644 --- a/Source/TypingAid.ahk +++ b/Source/TypingAid.ahk @@ -30,7 +30,7 @@ CoordMode, Mouse, Screen EvaluateScriptPathAndTitle() SuspendOn() -BuildTrayMenu("Running") +BuildTrayMenu() OnExit, SaveScript @@ -963,18 +963,13 @@ SuspendOff() ;------------------------------------------------------------------------ -BuildTrayMenu(State) +BuildTrayMenu() { Menu, Tray, DeleteAll Menu, Tray, NoStandard Menu, Tray, add, Settings, Configuration - if (State == "Running") - { - Menu, Tray, add, Pause, PauseScript - } else { - Menu, Tray, add, Resume, ResumeScript - } + Menu, Tray, add, Pause, PauseResumeScript IF (A_IsCompiled) { Menu, Tray, add, Exit, ExitScript @@ -1080,17 +1075,20 @@ Configuration: GoSub, LaunchSettings Return -PauseScript: -DisableWinHook() -SuspendOn() -BuildTrayMenu("Paused") -Pause, On, 1 -Return - -ResumeScript: -Pause, Off -EnableWinHook() -BuildTrayMenu("Running") +PauseResumeScript: +if (g_PauseState == "Paused") +{ + g_PauseState = + Pause, Off + EnableWinHook() + Menu, tray, Uncheck, Pause +} else { + g_PauseState = Paused + DisableWinHook() + SuspendOn() + Menu, tray, Check, Pause + Pause, On, 1 +} Return ExitScript: From 0a2b0d96c7f4bda36db6bf51c58df92b0105b68e Mon Sep 17 00:00:00 2001 From: ManiacDC Date: Tue, 10 Mar 2015 14:53:39 -0400 Subject: [PATCH 48/62] updated sqlite3 to 3.8.8.3 (cyqlite version) from an old version of 3.7. --- Source/Lib/sqlite3.def | 25 ++++++++++++++++++++----- Source/Lib/sqlite3.dll | Bin 595072 -> 533504 bytes Source/Lib/x64/sqlite3.dll | Bin 900096 -> 580608 bytes 3 files changed, 20 insertions(+), 5 deletions(-) diff --git a/Source/Lib/sqlite3.def b/Source/Lib/sqlite3.def index 58e4dff..5756138 100644 --- a/Source/Lib/sqlite3.def +++ b/Source/Lib/sqlite3.def @@ -8,6 +8,7 @@ sqlite3_backup_pagecount sqlite3_backup_remaining sqlite3_backup_step sqlite3_bind_blob +sqlite3_bind_blob64 sqlite3_bind_double sqlite3_bind_int sqlite3_bind_int64 @@ -17,6 +18,7 @@ sqlite3_bind_parameter_index sqlite3_bind_parameter_name sqlite3_bind_text sqlite3_bind_text16 +sqlite3_bind_text64 sqlite3_bind_value sqlite3_bind_zeroblob sqlite3_blob_bytes @@ -27,9 +29,11 @@ sqlite3_blob_reopen sqlite3_blob_write sqlite3_busy_handler sqlite3_busy_timeout +sqlite3_cancel_auto_extension sqlite3_changes sqlite3_clear_bindings sqlite3_close +sqlite3_close_v2 sqlite3_collation_needed sqlite3_collation_needed16 sqlite3_column_blob @@ -61,11 +65,11 @@ sqlite3_complete16 sqlite3_config sqlite3_context_db_handle sqlite3_create_collation -sqlite3_create_collation16 sqlite3_create_collation_v2 +sqlite3_create_collation16 sqlite3_create_function -sqlite3_create_function16 sqlite3_create_function_v2 +sqlite3_create_function16 sqlite3_create_module sqlite3_create_module_v2 sqlite3_data_count @@ -82,6 +86,7 @@ sqlite3_enable_shared_cache sqlite3_errcode sqlite3_errmsg sqlite3_errmsg16 +sqlite3_errstr sqlite3_exec sqlite3_expired sqlite3_extended_errcode @@ -103,10 +108,12 @@ sqlite3_limit sqlite3_load_extension sqlite3_log sqlite3_malloc +sqlite3_malloc64 sqlite3_memory_alarm sqlite3_memory_highwater sqlite3_memory_used sqlite3_mprintf +sqlite3_msize sqlite3_mutex_alloc sqlite3_mutex_enter sqlite3_mutex_free @@ -114,29 +121,31 @@ sqlite3_mutex_leave sqlite3_mutex_try sqlite3_next_stmt sqlite3_open -sqlite3_open16 sqlite3_open_v2 +sqlite3_open16 sqlite3_os_end sqlite3_os_init sqlite3_overload_function sqlite3_prepare +sqlite3_prepare_v2 sqlite3_prepare16 sqlite3_prepare16_v2 -sqlite3_prepare_v2 sqlite3_profile sqlite3_progress_handler sqlite3_randomness sqlite3_realloc +sqlite3_realloc64 sqlite3_release_memory sqlite3_reset sqlite3_reset_auto_extension sqlite3_result_blob +sqlite3_result_blob64 sqlite3_result_double sqlite3_result_error -sqlite3_result_error16 sqlite3_result_error_code sqlite3_result_error_nomem sqlite3_result_error_toobig +sqlite3_result_error16 sqlite3_result_int sqlite3_result_int64 sqlite3_result_null @@ -144,10 +153,12 @@ sqlite3_result_text sqlite3_result_text16 sqlite3_result_text16be sqlite3_result_text16le +sqlite3_result_text64 sqlite3_result_value sqlite3_result_zeroblob sqlite3_rollback_hook sqlite3_rtree_geometry_callback +sqlite3_rtree_query_callback sqlite3_set_authorizer sqlite3_set_auxdata sqlite3_shutdown @@ -162,6 +173,7 @@ sqlite3_step sqlite3_stmt_busy sqlite3_stmt_readonly sqlite3_stmt_status +sqlite3_strglob sqlite3_stricmp sqlite3_strnicmp sqlite3_table_column_metadata @@ -200,4 +212,7 @@ sqlite3_wal_checkpoint sqlite3_wal_checkpoint_v2 sqlite3_wal_hook sqlite3_win32_mbcs_to_utf8 +sqlite3_win32_set_directory +sqlite3_win32_sleep sqlite3_win32_utf8_to_mbcs +sqlite3_win32_write_debug diff --git a/Source/Lib/sqlite3.dll b/Source/Lib/sqlite3.dll index 981efa18a438612d4331c6bb721fbc323ac20776..aa1efb0ddbb8894c3bac474747785212bdbe27ff 100644 GIT binary patch literal 533504 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

?f8Hi)i^b6!rR2yde>XOGn&(G6R&%* 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ĺ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 t6VX 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

&3U^8W4xTs6%DwUqIY6=?pCm& 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 P5$^9I$_G0CE1&-lVYHAb literal 595072 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%0Da0f_E-%xfA8cmu_MwlnEE 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 z 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

^u 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 diff --git a/Source/Lib/x64/sqlite3.dll b/Source/Lib/x64/sqlite3.dll index 4b2fffd242028b85b2b1d4fa85d6e2909024a5c0..984d2f671b32c3e95c0f8d6e8573ea0345d01ef9 100644 GIT binary patch literal 580608 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]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%0AE{`V6D`_N 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 |wItN`^JYijFP}yMl61VEs?-xm?Tk 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 Date: Wed, 11 Mar 2015 07:51:14 -0400 Subject: [PATCH 49/62] Added support for AHK 1.1.20.00 returning nil in A_CaretX/Y when it can't detect the caret position. --- Source/Includes/ListBox.ahk | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/Source/Includes/ListBox.ahk b/Source/Includes/ListBox.ahk index 1502df1..70f6aa9 100644 --- a/Source/Includes/ListBox.ahk +++ b/Source/Includes/ListBox.ahk @@ -398,6 +398,11 @@ CheckIfCaretNotDetectable() IfLess, NumMonitors, 1 NumMonitors = 1 + if !(A_CaretX) + { + Return, 1 + } + ;if the X caret position is equal to the leftmost border of the monitor +1, we can't detect the caret position. Loop, %NumMonitors% { From a3695affc05cadb131fe6f5af8693dc24d01adf8 Mon Sep 17 00:00:00 2001 From: ManiacDC Date: Tue, 31 Mar 2015 10:25:05 -0400 Subject: [PATCH 50/62] Fixed a bug where the WinEventHook was launching new threads while in the Settings window --- Source/Includes/Preferences File.ahk | 2 +- Source/Includes/Settings.ahk | 2 ++ Source/Includes/Window.ahk | 6 ++++++ 3 files changed, 9 insertions(+), 1 deletion(-) diff --git a/Source/Includes/Preferences File.ahk b/Source/Includes/Preferences File.ahk index db61005..1b22e8c 100644 --- a/Source/Includes/Preferences File.ahk +++ b/Source/Includes/Preferences File.ahk @@ -401,7 +401,7 @@ ParseTerminatingCharacters() g_TerminatingEndKeys := TempEndKeys } -SavePreferences(ByRef PrefsToSave) +SavePreferences(PrefsToSave) { global local index diff --git a/Source/Includes/Settings.ahk b/Source/Includes/Settings.ahk index 3e4987e..5164232 100644 --- a/Source/Includes/Settings.ahk +++ b/Source/Includes/Settings.ahk @@ -2,6 +2,7 @@ ; by HugoV / Maniac LaunchSettings: +DisableWinHook() Menu, Tray, Disable, Settings g_InSettings := true ClearAllVars(True) @@ -713,6 +714,7 @@ Cancel: Gui, MenuGui:Destroy g_InSettings := false Menu, Tray, Enable, Settings +EnableWinHook() Return Save: diff --git a/Source/Includes/Window.ahk b/Source/Includes/Window.ahk index ede2167..33d5bcf 100644 --- a/Source/Includes/Window.ahk +++ b/Source/Includes/Window.ahk @@ -43,12 +43,18 @@ WinChanged(hWinEventHook, event, wchwnd, idObject, idChild, dwEventThread, dwmsE { global prefs_DetectMouseClickMove global g_OldCaretY + global g_inSettings If (event <> 3) { return } + if (g_inSettings = true ) + { + return + } + IF ( ReturnWinActive() ) { IfNotEqual, prefs_DetectMouseClickMove, On From ca4eb30d3fe8a8e800f893c93f6f7758e6f32535 Mon Sep 17 00:00:00 2001 From: ManiacDC Date: Tue, 31 Mar 2015 10:53:50 -0400 Subject: [PATCH 51/62] Fixed Visit Forum link not highlighting (really this time) --- Source/Includes/Settings.ahk | 34 ++++++++++++++++++++-------------- 1 file changed, 20 insertions(+), 14 deletions(-) diff --git a/Source/Includes/Settings.ahk b/Source/Includes/Settings.ahk index 5164232..61ec9a3 100644 --- a/Source/Includes/Settings.ahk +++ b/Source/Includes/Settings.ahk @@ -26,7 +26,8 @@ ConstructGui() Global Menu_ArrowKeyMethodOptionsText, Menu_CaseCorrection, Menu_ListBoxOpacityUpDown, Menu_SendMethodOptionsCode, Menu_SendMethodC Global Menu_CtrlEnter, Menu_CtrlSpace, Menu_Enter, Menu_NumberKeys, Menu_RightArrow, Menu_Tab Global g_WM_SETCURSOR, g_WM_MOUSEMOVE, g_ScriptTitle - static VisitForum + ; Must be global for colors to function, colors will not function if static + Global Menu_VisitForum Menu_CaseCorrection= Menu_ArrowKeyMethodOptionsText= @@ -93,7 +94,7 @@ ConstructGui() MenuRowHelpY := MenuRowY - MenuHelpIndentY MenuRowEditY := MenuRowY + MenuEditIndentY - Gui, Font, s8, Arial + Gui, MenuGui:Font, s8, Arial Gui, MenuGui:Add, Tab2, x2 w%MenuTabWidth% h%MenuTabHeight%, General Settings|Wordlist Box|Programs|Advanced (Experts Only)|About && Help @@ -559,13 +560,13 @@ Full (untested) for UTF-8 character set. if (g_ScriptTitle == "TypingAid") { Gui, MenuGui:Font, cBlack bold - Gui, MenuGui:Add, Text, x%MenuGroup2of2EditX% Yp-10 gVisitForum, %g_ScriptTitle% + Gui, MenuGui:Add, Text, x%MenuGroup2of2EditX% Yp-10, %g_ScriptTitle% Gui, MenuGui:Font, cBlack normal - Gui, MenuGui:Add, Text, xp+60 Yp gVisitForum, is free software, support forum at + Gui, MenuGui:Add, Text, xp+60 Yp, is free software, support forum at Gui, MenuGui:Font, cGreen - ;the vVisitForum variable is necessary for the link highlighting - Gui, MenuGui:Add, Text, x%MenuGroup2of2EditX% Yp+%MenuTextMenuRowY% gVisitForum vVisitForum, www.autohotkey.com (click here) + ;the vMenu_VisitForum variable is necessary for the link highlighting + Gui, MenuGui:Add, Text, x%MenuGroup2of2EditX% Yp+%MenuTextMenuRowY% vMenu_VisitForum gVisitForum, www.autohotkey.com (click here) Gui, MenuGui:Font, cBlack } @@ -871,6 +872,13 @@ HandleMessage( p_w, p_l, p_m, p_hw ) return } else if ( p_m = g_WM_MOUSEMOVE ) { + if (Help_Hover || URL_Hover) + { + + Gui, MenuGui:Font, cGreen ;;; xyz + GuiControl, MenuGui:Font, %Old_GuiControl% ;;; xyz + } + if ( SubStr(A_GuiControl, 1, 9) == "helpinfo_" ) { if !(Help_Hover) @@ -882,10 +890,10 @@ HandleMessage( p_w, p_l, p_m, p_hw ) old_cursor := DllCall( "SetCursor", "uint", h_cursor_help ) Help_Hover = true URL_Hover = - Gui, Font, cBlue ;;; xyz - GuiControl, Font, %A_GuiControl% ;;; xyz + Gui, MenuGui:Font, cBlue ;;; xyz + GuiControl, MenuGui:Font, %A_GuiControl% ;;; xyz } - } else if (A_GuiControl = "VisitForum") + } else if (A_GuiControl = "Menu_VisitForum") { if !(URL_Hover) { @@ -896,17 +904,15 @@ HandleMessage( p_w, p_l, p_m, p_hw ) old_cursor := DllCall( "SetCursor", "uint", h_cursor_hand ) URL_Hover = true Help_Hover = - Gui, Font, cBlue ;;; xyz - GuiControl, Font, %A_GuiControl% ;;; xyz + Gui, MenuGui:Font, cBlue ;;; xyz + GuiControl, MenuGui:Font, %A_GuiControl% ;;; xyz } } else if (Help_Hover || URL_Hover) - { + { DllCall( "SetCursor", "uint", h_old_cursor ) Help_Hover= URL_Hover= - Gui, Font, cGreen ;;; xyz - GuiControl, Font, %Old_GuiControl% ;;; xyz h_old_cursor= } IF !(h_old_cursor) From 592d22b522da9a3f796505039686f120111f20b9 Mon Sep 17 00:00:00 2001 From: ManiacDC Date: Wed, 1 Apr 2015 09:36:45 -0400 Subject: [PATCH 52/62] Fixed hotkeys suspending the settings Window Added a warning when Canceling the settings window when unsaved changes exist --- Source/Includes/Settings.ahk | 25 ++++++++++++++++++++++--- Source/Includes/Window.ahk | 14 ++------------ Source/TypingAid.ahk | 12 ++++++++++-- 3 files changed, 34 insertions(+), 17 deletions(-) diff --git a/Source/Includes/Settings.ahk b/Source/Includes/Settings.ahk index 61ec9a3..952e19d 100644 --- a/Source/Includes/Settings.ahk +++ b/Source/Includes/Settings.ahk @@ -2,13 +2,18 @@ ; by HugoV / Maniac LaunchSettings: -DisableWinHook() +InactivateAll() Menu, Tray, Disable, Settings g_InSettings := true ClearAllVars(True) Menu_OldLearnCount := prefs_LearnCount +; initialize this to make sure the object exists Menu_ChangedPrefs := Object() ConstructGui() +; clear and re-initialize variables after constructing the GUI as some controls call the edit flag immediately +Menu_ChangedPrefs = +Menu_ChangedPrefs := Object() +Menu_ValueChanged := false Return ConstructGui() @@ -555,7 +560,7 @@ Full (untested) for UTF-8 character set. Gui, MenuGui:Add, GroupBox, x%MenuGroup1BoxX% y%MenuRowY% w%MenuTwoColGroupWidth% h50 , Configuration Gui, MenuGui:Add, Button, x%MenuGroup1EditX% y%MenuRowEditY% w%MenuRowThreeButtonWidth% gSave , Save && Exit Gui, MenuGui:Add, Button, xp+%MenuRowThreeButtonNext% yp w%MenuRowThreeButtonWidth% gRestore, Restore default - Gui, MenuGui:Add, Button, xp+%MenuRowThreeButtonNext% yp w%MenuRowThreeButtonWidth% gCancel , Cancel + Gui, MenuGui:Add, Button, xp+%MenuRowThreeButtonNext% yp w%MenuRowThreeButtonWidth% gCancelButton , Cancel if (g_ScriptTitle == "TypingAid") { @@ -711,11 +716,24 @@ RestoreDefaults() MenuGuiGuiEscape: MenuGuiGuiClose: +CancelButton: +if (Menu_ValueChanged == true) +{ + MsgBox, 4, Cancel, Changes will not be saved. Cancel anyway? + IfMsgBox, Yes + { + gosub, Cancel + } +} else { + gosub, Cancel +} +return + Cancel: Gui, MenuGui:Destroy g_InSettings := false Menu, Tray, Enable, Settings -EnableWinHook() +GetIncludedActiveWindow() Return Save: @@ -829,6 +847,7 @@ ApplyChanges() } EditValue: +Menu_ValueChanged := true IF (A_GuiControl && !(SubStr(A_GuiControl ,1 ,5) == "Menu_") ) { Menu_ChangedPrefs[A_GuiControl] := %A_GuiControl% diff --git a/Source/Includes/Window.ahk b/Source/Includes/Window.ahk index 33d5bcf..523d09d 100644 --- a/Source/Includes/Window.ahk +++ b/Source/Includes/Window.ahk @@ -111,12 +111,7 @@ GetIncludedActiveWindowGuts() } } - ;Force unload of Keyboard Hook and WinEventHook - Input - SuspendOn() - CloseListBox() - MaybeSaveHelperWindowPos() - DisableWinHook() + InactivateAll() ;Wait for any window to be active WinWaitActive, , , , ZZZYouWillNeverFindThisStringInAWindowTitleZZZ Continue @@ -127,12 +122,7 @@ GetIncludedActiveWindowGuts() Break If CheckForActive(ActiveProcess,ActiveTitle) Break - ;Force unload of Keyboard Hook and WinEventHook - Input - SuspendOn() - CloseListBox() - MaybeSaveHelperWindowPos() - DisableWinHook() + InactivateAll() SetTitleMatchMode, 3 ; set the title match mode to exact so we can detect a window title change ; Wait for the current window to no longer be active WinWaitNotActive, %ActiveTitle% ahk_id %ActiveId% diff --git a/Source/TypingAid.ahk b/Source/TypingAid.ahk index 497cbc0..caf72bd 100644 --- a/Source/TypingAid.ahk +++ b/Source/TypingAid.ahk @@ -65,8 +65,6 @@ if !(g_WinChangedCallback) MsgBox, Failed to register callback function ExitApp } - -EnableWinHook() ;Find the ID of the window we are using GetIncludedActiveWindow() @@ -933,6 +931,16 @@ EvaluateScriptPathAndTitle() ;------------------------------------------------------------------------ +InactivateAll() +{ + ;Force unload of Keyboard Hook and WinEventHook + Input + SuspendOn() + CloseListBox() + MaybeSaveHelperWindowPos() + DisableWinHook() +} + SuspendOn() { global g_ScriptTitle From 4de8c3417276efb1d5a4944eda3ab084b05acdbb Mon Sep 17 00:00:00 2001 From: ManiacDC Date: Thu, 2 Apr 2015 07:57:25 -0400 Subject: [PATCH 53/62] Fixed Programs page not populating Edit Button screen. Fixed edit boxes expanding to more than 1 line when reloading the GUI --- Source/Includes/Settings.ahk | 27 +++++++++++++++++---------- 1 file changed, 17 insertions(+), 10 deletions(-) diff --git a/Source/Includes/Settings.ahk b/Source/Includes/Settings.ahk index 952e19d..2a4a2ea 100644 --- a/Source/Includes/Settings.ahk +++ b/Source/Includes/Settings.ahk @@ -286,7 +286,7 @@ ConstructGui() MenuRowEditY := MenuRowY + MenuEditIndentY Gui, MenuGui:Add, GroupBox, x%MenuGroup1BoxX% y%MenuRowY% w%MenuTwoColGroupWidth% h%MenuRowHeight% , Sub-strings to not learn - Gui, MenuGui:Add, Edit, x%MenuGroup1EditX% y%MenuRowEditY% w%MenuTwoColEditWidth% vprefs_DoNotLearnStrings Password gEditValue, %prefs_DoNotLearnStrings% + Gui, MenuGui:Add, Edit, x%MenuGroup1EditX% y%MenuRowEditY% w%MenuTwoColEditWidth% r1 vprefs_DoNotLearnStrings Password gEditValue, %prefs_DoNotLearnStrings% Gui, MenuGui:Font, cGreen Gui, MenuGui:Add, Text, x%MenuGroup1of2HelpX% y%MenuRowHelpY% vhelpinfo_DoNotLearnStrings gHelpMe, %MenuGuiHelpIcon% Gui, MenuGui:Font, cBlack @@ -382,7 +382,7 @@ ConstructGui() MenuRowEditY := MenuRowY + MenuEditIndentY Gui, MenuGui:Add, GroupBox, x%MenuGroup1BoxX% y%MenuRowY% w%MenuOneColGroupWidth% h%MenuRowHeight% , Window titles you want %g_ScriptTitle% enabled for - Gui, MenuGui:Add, Edit, x%MenuGroup1EditX% y%MenuRowEditY% w%MenuOneColEditWidthEdit% vprefs_IncludeProgramTitles gEditValue, %prefs_IncludeProgramTitles% + Gui, MenuGui:Add, Edit, x%MenuGroup1EditX% y%MenuRowEditY% w%MenuOneColEditWidthEdit% r1 vprefs_IncludeProgramTitles gEditValue, %prefs_IncludeProgramTitles% Gui, MenuGui:Add, Button, x%MenuOneColEditButton% yp w130 gSetEnableTitles, Edit Gui, MenuGui:Font, cGreen Gui, MenuGui:Add, Text, x%MenuGroup1of1HelpX% y%MenuRowHelpY% vhelpinfo_IncludeProgramTitles gHelpMe, %MenuGuiHelpIcon% @@ -393,7 +393,7 @@ ConstructGui() MenuRowEditY := MenuRowY + MenuEditIndentY Gui, MenuGui:Add, GroupBox, x%MenuGroup1BoxX% y%MenuRowY% w%MenuOneColGroupWidth% h%MenuRowHeight% , Window titles you want %g_ScriptTitle% disabled for - Gui, MenuGui:Add, Edit, x%MenuGroup1EditX% y%MenuRowEditY% w%MenuOneColEditWidthEdit% vprefs_ExcludeProgramTitles gEditValue, %prefs_ExcludeProgramTitles% + Gui, MenuGui:Add, Edit, x%MenuGroup1EditX% y%MenuRowEditY% w%MenuOneColEditWidthEdit% r1 vprefs_ExcludeProgramTitles gEditValue, %prefs_ExcludeProgramTitles% Gui, MenuGui:Add, Button, x%MenuOneColEditButton% yp w130 gSetDisableTitles, Edit Gui, MenuGui:Font, cGreen Gui, MenuGui:Add, Text, x%MenuGroup1of1HelpX% y%MenuRowHelpY% vhelpinfo_ExcludeProgramTitles gHelpMe, %MenuGuiHelpIcon% @@ -404,7 +404,7 @@ ConstructGui() MenuRowEditY := MenuRowY + MenuEditIndentY Gui, MenuGui:Add, GroupBox, x%MenuGroup1BoxX% y%MenuRowY% w%MenuOneColGroupWidth% h%MenuRowHeight% , Processes you want %g_ScriptTitle% enabled for - Gui, MenuGui:Add, Edit, x%MenuGroup1EditX% y%MenuRowEditY% w%MenuOneColEditWidthEdit% vprefs_IncludeProgramExecutables gEditValue, %prefs_IncludeProgramExecutables% + Gui, MenuGui:Add, Edit, x%MenuGroup1EditX% y%MenuRowEditY% w%MenuOneColEditWidthEdit% r1 vprefs_IncludeProgramExecutables gEditValue, %prefs_IncludeProgramExecutables% Gui, MenuGui:Add, Button, x%MenuOneColEditButton% yp w130 gSetEnableProcess, Edit Gui, MenuGui:Font, cGreen Gui, MenuGui:Add, Text, x%MenuGroup1of1HelpX% y%MenuRowHelpY% vhelpinfo_IncludeProgramExecutables gHelpMe, %MenuGuiHelpIcon% @@ -415,7 +415,7 @@ ConstructGui() MenuRowEditY := MenuRowY + MenuEditIndentY Gui, MenuGui:Add, GroupBox, x%MenuGroup1BoxX% y%MenuRowY% w%MenuOneColGroupWidth% h%MenuRowHeight% , Processes you want %g_ScriptTitle% disabled for - Gui, MenuGui:Add, Edit, x%MenuGroup1EditX% y%MenuRowEditY% w%MenuOneColEditWidthEdit% vprefs_ExcludeProgramExecutables gEditValue, %prefs_ExcludeProgramExecutables% + Gui, MenuGui:Add, Edit, x%MenuGroup1EditX% y%MenuRowEditY% w%MenuOneColEditWidthEdit% r1 vprefs_ExcludeProgramExecutables gEditValue, %prefs_ExcludeProgramExecutables% Gui, MenuGui:Add, Button, x%MenuOneColEditButton% yp w130 gSetDisableProcess, Edit Gui, MenuGui:Font, cGreen Gui, MenuGui:Add, Text, x%MenuGroup1of1HelpX% y%MenuRowHelpY% vhelpinfo_ExcludeProgramExecutables gHelpMe, %MenuGuiHelpIcon% @@ -428,7 +428,7 @@ ConstructGui() ;HelperWindowProgramTitles Gui, MenuGui:Add, GroupBox, x%MenuGroup1BoxX% y%MenuRowY% w%MenuOneColGroupWidth% h%MenuRowHeight% , Window titles you want the helper window enabled for - Gui, MenuGui:Add, Edit, x%MenuGroup1EditX% y%MenuRowEditY% w%MenuOneColEditWidthEdit% vprefs_HelperWindowProgramTitles gEditValue, %prefs_HelperWindowProgramTitles% + Gui, MenuGui:Add, Edit, x%MenuGroup1EditX% y%MenuRowEditY% w%MenuOneColEditWidthEdit% r1 vprefs_HelperWindowProgramTitles gEditValue, %prefs_HelperWindowProgramTitles% Gui, MenuGui:Add, Button, x%MenuOneColEditButton% yp w130 gSetHelpTitles, Edit Gui, MenuGui:Font, cGreen Gui, MenuGui:Add, Text, x%MenuGroup1of1HelpX% y%MenuRowHelpY% vhelpinfo_HelperWindowProgramTitles gHelpMe, %MenuGuiHelpIcon% @@ -441,7 +441,7 @@ ConstructGui() ;HelperWindowProgramExecutables Gui, MenuGui:Add, GroupBox, x%MenuGroup1BoxX% y%MenuRowY% w%MenuOneColGroupWidth% h%MenuRowHeight% , Processes you want the helper window enabled for - Gui, MenuGui:Add, Edit, x%MenuGroup1EditX% y%MenuRowEditY% w%MenuOneColEditWidthEdit% vprefs_HelperWindowProgramExecutables gEditValue, %prefs_HelperWindowProgramExecutables% + Gui, MenuGui:Add, Edit, x%MenuGroup1EditX% y%MenuRowEditY% w%MenuOneColEditWidthEdit% r1 vprefs_HelperWindowProgramExecutables gEditValue, %prefs_HelperWindowProgramExecutables% Gui, MenuGui:Add, Button, x%MenuOneColEditButton% yp w130 gSetHelpProcess, Edit Gui, MenuGui:Font, cGreen Gui, MenuGui:Add, Text, x%MenuGroup1of1HelpX% y%MenuRowHelpY% vhelpinfo_HelperWindowProgramExecutables gHelpMe, %MenuGuiHelpIcon% @@ -456,7 +456,7 @@ ConstructGui() MenuRowEditY := MenuRowY + MenuEditIndentY Gui, MenuGui:Add, GroupBox, x%MenuGroup1BoxX% y%MenuRowY% w%MenuOneColGroupWidth% h%MenuRowHeight% , Terminating Characters (see http://www.autohotkey.com/docs/KeyList.htm) - Gui, MenuGui:Add, Edit, x%MenuGroup1EditX% y%MenuRowEditY% w%MenuOneColEditWidth% vprefs_TerminatingCharacters gEditValue, %prefs_TerminatingCharacters% + Gui, MenuGui:Add, Edit, x%MenuGroup1EditX% y%MenuRowEditY% w%MenuOneColEditWidth% r1 vprefs_TerminatingCharacters gEditValue, %prefs_TerminatingCharacters% Gui, MenuGui:Font, cGreen Gui, MenuGui:Add, Text, x%MenuGroup1of1HelpX% y%MenuRowHelpY% vhelpinfo_TerminatingCharacters gHelpMe, %MenuGuiHelpIcon% Gui, MenuGui:Font, cBlack @@ -466,7 +466,7 @@ ConstructGui() MenuRowHelpY := MenuRowY - MenuHelpIndentY Gui, MenuGui:Add, GroupBox, x%MenuGroup1BoxX% y%MenuRowY% w%MenuOneColGroupWidth% h%MenuRowHeight% , Force New Word Characters (comma separated) - Gui, MenuGui:Add, Edit, x%MenuGroup1EditX% y%MenuRowEditY% w%MenuOneColEditWidth% vprefs_ForceNewWordCharacters gEditValue, %prefs_ForceNewWordCharacters% + Gui, MenuGui:Add, Edit, x%MenuGroup1EditX% y%MenuRowEditY% w%MenuOneColEditWidth% r1 vprefs_ForceNewWordCharacters gEditValue, %prefs_ForceNewWordCharacters% Gui, MenuGui:Font, cGreen Gui, MenuGui:Add, Text, x%MenuGroup1of1HelpX% y%MenuRowHelpY% vhelpinfo_ForceNewWordCharacters gHelpMe, %MenuGuiHelpIcon% Gui, MenuGui:Font, cBlack @@ -609,6 +609,13 @@ GetList(TitleType,GetExe) global Menu_TitleType global Menu_InProcessList global g_ScriptTitle + global prefs_IncludeProgramTitles + global prefs_ExcludeProgramTitles + global prefs_IncludeProgramExecutables + global prefs_ExcludeProgramExecutables + global prefs_HelperWindowProgramTitles + global prefs_HelperWindowProgramExecutables + Menu_InProcessList := true Menu_TitleType := TitleType If (GetExe =1) @@ -636,7 +643,7 @@ GetList(TitleType,GetExe) } GetExe=0 - GuiControlGet, MenuTitleList, MenuGui: , prefs_%Menu_TitleType% + GuiControlGet, MenuTitleList, MenuGui: , %Menu_TitleType% Sort,RunningList, D| U Gui, ProcessList:+OwnerMenuGui From b100af047501a3e8751a3b47c54e86dba18227c5 Mon Sep 17 00:00:00 2001 From: ManiacDC Date: Thu, 2 Apr 2015 14:01:12 -0400 Subject: [PATCH 54/62] Added check to prevent attempting to launch the Settings window again if already in the Settings window. --- Source/Includes/Settings.ahk | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/Source/Includes/Settings.ahk b/Source/Includes/Settings.ahk index 2a4a2ea..7839627 100644 --- a/Source/Includes/Settings.ahk +++ b/Source/Includes/Settings.ahk @@ -2,6 +2,10 @@ ; by HugoV / Maniac LaunchSettings: +if (g_InSettings == true) +{ + return +} InactivateAll() Menu, Tray, Disable, Settings g_InSettings := true From 18ab8b674d42ed7d3cadda286a4dd37ed91da962 Mon Sep 17 00:00:00 2001 From: ManiacDC Date: Fri, 3 Apr 2015 08:16:55 -0400 Subject: [PATCH 55/62] Rewrote help to reference the new Settings screen fixed a typo in a Setting title --- Source/Includes/Preferences File.ahk | 275 +++++++++++++-------------- Source/Includes/Settings.ahk | 44 ++--- 2 files changed, 153 insertions(+), 166 deletions(-) diff --git a/Source/Includes/Preferences File.ahk b/Source/Includes/Preferences File.ahk index 1b22e8c..55971d5 100644 --- a/Source/Includes/Preferences File.ahk +++ b/Source/Includes/Preferences File.ahk @@ -433,243 +433,230 @@ SavePreferences(PrefsToSave) ConstructHelpStrings() { global - -helpinfo_IncludeProgramExecutables= -( -;IncludeProgramExecutables is a list of executable (.exe) files that %g_ScriptTitle% should be enabled for. -;If one the executables matches the current program, %g_ScriptTitle% is enabled for that program. -) -helpinfo_IncludeProgramTitles= -( -;IncludeProgramTitles is a list of strings (separated by | ) to find in the title of the window you want %g_ScriptTitle% enabled for. -;If one of the strings is found in the title, %g_ScriptTitle% is enabled for that window. -) - -helpinfo_ExcludeProgramExecutables= -( -;ExcludeProgramExecutables is a list of executable (.exe) files that %g_ScriptTitle% should be disabled for. -;If one the executables matches the current program, %g_ScriptTitle% is disabled for that program. -) - -helpinfo_ExcludeProgramTitles= +helpinfo_LearnMode= ( -;ExcludeProgramTitles is a list of strings (separated by | ) to find in the title of the window you want %g_ScriptTitle% disabled for. -;If one of the strings is found in the title, %g_ScriptTitle% is disabled for that window. +;"Learn new words as you type" defines whether or not the script should learn new words as you type them, either On or Off. ) -helpinfo_Length= +helpinfo_LearnLength= ( -;Length is the minimum number of characters that need to be typed before the program shows a List of words. -;Generally, the higher this number the better the performance will be. -;For example, if you need to autocomplete "as soon as possible" in the word list, set this to 2, type 'as' and a list will appear. +;"Minimum length of words to learn" is the minimum number of characters in a word for it to be learned. This must be at least Length+1. ) -helpinfo_NumPresses= +helpinfo_LearnCount= ( -;NumPresses is the number of times the number hotkey must be tapped for the word to be selected, either 1 or 2. +;"Add to wordlist after X times" defines the number of times you have to type a word within a single session for it to be learned permanently. ) -helpinfo_LearnMode= +helpinfo_ListBoxRows= ( -;LearnMode defines whether or not the script should learn new words as you type them, either On or Off. +;"Maximum number of results to show" is the maximum number of rows to show in the ListBox. This value can range from 3 to 30. ) -helpinfo_LearnCount= +helpinfo_Length= ( -;LearnCount defines the number of times you have to type a word within a single session for it to be learned permanently. +;"Show wordlist after X characters" is the minimum number of characters that need to be typed before the program shows a List of words. +;For example, if you need to autocomplete "assemble" in the word list, set this to 2, type 'as' and a list will appear. ) -helpinfo_LearnLength= +helpinfo_SendMethod= ( -;LearnLength is the minimum number of characters in a word for it to be learned. This must be at least Length+1. +;"Send Method" is used to change the way the program sends the keys to the screen, this is included for compatibility reasons. +;Try changing this only when you encounter a problem with key sending during autocompletion. +; 1 = Fast method that reliably buffers key hits while sending. HAS BEEN KNOWN TO NOT FUNCTION ON SOME MACHINES. +; If the script detects that this method will not work on the machine, it will switch to method 2. +; (Might not work with characters that cannot be typed using the current keyboard layout.) +; 2 = Fastest method with unreliable keyboard buffering while sending. Has been known to not function on some machines. +; 3 = Slowest method, will not buffer or accept keyboard input while sending. Most compatible method. +;The options below use the clipboard to copy and paste the data to improve speed, but will leave an entry in any clipboard +;history tracking routines you may be running. Data on the clipboard *will* be preserved prior to autocompletion. +; 4 = Same as 1 above. +; 5 = Same as 2 above, doesn't work on some machines. +; 6 = Same as 3 above. +; 7 = Alternate method. ) -helpinfo_DoNotLearnStrings= +helpinfo_DisabledAutoCompleteKeys= ( -;DoNotLearnStrings is a comma separated list of strings. Any words which contain any of these strings will not be learned. -;This can be used to prevent the program from learning passwords or other critical information. -;For example, if you have ord98 in DoNotLearnStrings, password987 will not be learned. +;"Auto Complete Keys" is used to enable or disable hotkeys for autocompleting the selected item in the list. ) helpinfo_ArrowKeyMethod= ( -;ArrowKeyMethod is the way the arrow keys are handled when a list is shown. +;"Wordlist row highlighting" is the way the arrow keys are handled when a list is shown. ;Options are: -; Off - you can only use the number keys -; First - resets the selection cursor to the beginning whenever you type a new character -; LastWord - keeps the selection cursor on the prior selected word if it's still in the list, else resets to the beginning -; LastPosition - maintains the selection cursor's position +; Off - only use the number keys +; First - resets the highlighted row to the beginning whenever you type a new character +; LastWord - keeps the highlighted row on the prior selected word if it's still in the list, else resets to the beginning +; LastPosition - maintains the highlighted row's position ) -helpinfo_DisabledAutoCompleteKeys= +helpinfo_NoBackSpace= ( -;DisabledAutoCompleteKeys is used to disable certain hotkeys from autocompleting the selected item in the list. -;Place the character listed for each key you want to disable in the list. -; ex: DisabledAutoCompleteKeys=ST -;will disable Ctrl+Space and Tab. -; E = Ctrl + Enter -; S = Ctrl + Space -; T = Tab -; R = Right Arrow -; N = Number Keys -; U = Enter +;"Case correction" is used to correct the case of any previously typed characters. +; On - characters you have already typed will be backspaced and replaced with the case of the word you have chosen. +; Off - characters you have already typed will not be changed ) helpinfo_DetectMouseClickMove= ( -;DetectMouseClickMove is used to detect when the cursor is moved with the mouse. +;"Monitor mouse clicks" is used to detect when the cursor is moved with the mouse. ; On - %g_ScriptTitle% will not work when used with an On-Screen keyboard. ; Off - %g_ScriptTitle% will not detect when the cursor is moved within the same line using the mouse, and scrolling the text will clear the list. ) -helpinfo_NoBackSpace= -( -;NoBackSpace is used to make %g_ScriptTitle% not backspace any of the previously typed characters -;(ie, do not change the case of any previously typed characters). -; On - characters you have already typed will not be changed -; Off - characters you have already typed will be backspaced and replaced with the case of the word you have chosen. -) - helpinfo_AutoSpace= ( -;AutoSpace is used to automatically add a space to the end of an autocompleted word. +;"Type space after autocomplete" is used to automatically add a space to the end of an autocompleted word. ; On - Add a space to the end of the autocompleted word. ; Off - Do not add a space to the end of the autocompleted word. ) -helpinfo_SuppressMatchingWord= -( -;SuppressMatchingWord is used to suppress a word from the Word list if it matches the typed word. -; If NoBackspace=On, then the match is case in-sensitive. -; If NoBackspace=Off, then the match is case-sensitive. -; On - Suppress matching words from the word list. -; Off - Do not suppress matching words from the word list. -) - -helpinfo_SendMethod= +helpinfo_DoNotLearnStrings= ( -;SendMethod is used to change the way the program sends the keys to the screen, this is included for compatibility reasons. -;Try changing this only when you encounter a problem with key sending during autocompletion. -; 1 = Fast method that reliably buffers key hits while sending. HAS BEEN KNOWN TO NOT FUNCTION ON SOME MACHINES. -; (Might not work with characters that cannot be typed using the current keyboard layout.) -; 2 = Fastest method with unreliable keyboard buffering while sending. Has been known to not function on some machines. -; 3 = Slowest method, will not buffer or accept keyboard input while sending. Most compatible method. -;The options below use the clipboard to copy and paste the data to improve speed, but will leave an entry in any clipboard -;history tracking routines you may be running. Data on the clipboard *will* be preserved prior to autocompletion. -; 1C = Same as 1 above. -; 2C = Same as 2 above, doesn't work on some machines. -; 3C = Same as 3 above. -; 4C = Alternate method. +;"Sub-strings to not learn" is a comma separated list of strings. Any words which contain any of these strings will not be learned. +;This can be used to prevent the program from learning passwords or other critical information. +;For example, if you have ord98 in "Sub-strings to not learn", password987 will not be learned. ) -helpinfo_TerminatingCharacters= +helpinfo_SuppressMatchingWord= ( -;TerminatingCharacters is a list of characters (EndKey) which will signal the program that you are done typing a word. -;You probably need to change this only when you want to recognize and type accented (diacritic) or Unicode characters -;or if you are using this with certain programming languages. -; -;For support of special characters, remove the key that is used to type the diacritic symbol (or the character) from the right hand side. -;For example, if on your keyboard layout, " is used before typing ë, ; is used to type ñ, remove them from the right hand side. -; -;After this, %g_ScriptTitle% can recognize the special character. The side-effect is that, it cannot complete words typed after -;the symbol, (e.g. "word... ) If you need to complete a word after a quotation mark, first type two quotation marks "" then -;press left and type the word in the middle. -; -;If unsure, below is a setting for you to copy and use directly: -; -;Universal setting that works for many languages with accented or Unicode characters: -;{enter}{space}{bs}{esc}{tab}{Home}{End}{PgUp}{PdDn}{Up}{Dn}{Left}{Right}¿?¡!()$ -; -;Default setting: -;%dft_TerminatingCharacters% -; -; More information on how to configure TerminatingCharacters: -;A list of keys may be found here: -; http://www.autohotkey.com/docs/KeyList.htm -;For more details on how to format the list of characters please see the EndKeys section (paragraphs 2,3,4) of: -; http://www.autohotkey.com/docs/commands/Input.htm +;"Suppress matching word" is used to suppress a word from the Word list if it matches the typed word. +; If "Case correction" is On, then the match is case-sensitive. +; If "Case correction" is Off, then the match is case in-sensitive. +; On - Suppress matching word from the word list. +; Off - Do not suppress matching word from the word list. ) -helpinfo_ForceNewWordCharacters= +helpinfo_NumPresses= ( -;ForceNewWordCharacters is a comma separated list of characters which forces the program to start a new word whenever -;one of those characters is typed. Any words which begin with one of these characters will never be learned (even -;if learning is enabled). If you were typing a word when you hit one of these characters that word will be learned -;if learning is enabled. -;Change this only if you know what you are doing, it is probably only useful for certain programming languages. -; ex: ForceNewWordCharacters=@,:,# +;NumPresses is the number of times the number hotkey must be tapped for the word to be selected, either 1 or 2. ) helpinfo_ListBoxOffset= ( -;ListBoxOffset is the number of pixels below the top of the caret (vertical blinking line) to display the list. +;"List appears X pixels below cursor" is the number of pixels below the top of the caret (vertical blinking line) to display the list. ) helpinfo_ListBoxFontFixed= ( -;ListBoxFontFixed controls whether a fixed or variable character font width is used. -;(ie, in fixed width, "i" and "w" take the same number of pixels) +;"Fixed width font in list" controls whether a fixed or variable character font width is used. +;(e.g., in fixed width, "i" and "w" take the same number of pixels) ) -helpinfo_ListBoxFontOverride= +helpinfo_ListBoxFontSize= ( -;ListBoxFontOverride is used to specify a font for the List Box to use. The default for Fixed is Courier, -;and the default for Variable is Tahoma. +;"Font size in list" controls the size of the font in the list. ) -helpinfo_ListBoxFontSize= +helpinfo_ListBoxOpacity= ( -;ListBoxFontSize controls the size of the font in the list. +;"list opacity" is how transparent (see-through) the Wordlist Box should be. Use a value of 255 to make it so the +;Wordlist Box is fully ypaque, or use a value of 0 to make it so the Wordlist Box cannot be seen at all. ) helpinfo_ListBoxCharacterWidth= ( -;ListBoxCharacterWidth is the width (in pixels) of one character in the List Box. +;"List character width override" is the width (in pixels) of one character in the Wordlist Box. ;This number should only need to be changed if the box containing the list is not the correct width. ;Some things which may cause this to need to be changed would include: ; 1. Changing the Font DPI in Windows -; 2. Changing the ListBoxFontFixed setting -; 3. Changing the ListBoxFontSize setting +; 2. Changing the "Fixed width font in list" setting +; 3. Changing the "Font size in list" setting ;Leave this blank to let %g_ScriptTitle% try to compute the width. ) -helpinfo_ListBoxOpacity= +helpinfo_ListBoxFontOverride= ( -;ListBoxOpacity is how transparent (see-through) the ListBox should be. Use a value of 255 to make it so the -;ListBox is fully Opaque, or use a value of 0 to make it so the ListBox cannot be seen at all. +;"list font" is used to specify a font for the Wordlist Box to use. The default for Fixed is Courier, +;and the default for Variable is Tahoma. ) -helpinfo_ListBoxRows= +helpinfo_IncludeProgramTitles= ( -;ListBoxRows is the maximum number of rows to show in the ListBox. This value can range from 3 to 30. +;"Window titles you want %g_ScriptTitle% enabled for" is a list of strings (separated by | ) to find in the title of the window you want %g_ScriptTitle% enabled for. +;If one of the strings is found in the title, %g_ScriptTitle% is enabled for that window. ) -helpinfo_HelperWindowProgramExecutables= +helpinfo_ExcludeProgramTitles= +( +;"Window titles you want %g_ScriptTitle% disabled for" is a list of strings (separated by | ) to find in the title of the window you want %g_ScriptTitle% disabled for. +;If one of the strings is found in the title, %g_ScriptTitle% is disabled for that window. +) + +helpinfo_IncludeProgramExecutables= +( +;"Processes you want %g_ScriptTitle% enabled for" is a list of executable (.exe) files that %g_ScriptTitle% should be enabled for. +;If one the executables matches the current program, %g_ScriptTitle% is enabled for that program. +) + +helpinfo_ExcludeProgramExecutables= ( -;HelperWindowProgramExecutables is a list of executable (.exe) files that the HelperWindow should be automatically enabled for. -;If one the executables matches the current program, the HelperWindow will pop up automatically for that program. +;"Processes you want %g_ScriptTitle% disabled for" is a list of executable (.exe) files that %g_ScriptTitle% should be disabled for. +;If one the executables matches the current program, %g_ScriptTitle% is disabled for that program. ) helpinfo_HelperWindowProgramTitles= ( -;HelperWindowProgramTitles is a list of strings (separated by | ) to find in the title of the window that the HelperWindow should be automatically enabled for. -;If one of the strings is found in the title, the HelperWindow will pop up automatically for that program. +;"Window titles you want the helper window enabled for" is a list of strings (separated by | ) to find in the title of the window that the helper window should be automatically enabled for. +;If one of the strings is found in the title, the helper window will pop up automatically for that program. +) + +helpinfo_HelperWindowProgramExecutables= +( +;"Processes you want the helper window enabled for" is a list of executable (.exe) files that the helper window should be automatically enabled for. +;If one the executables matches the current program, the helper window will pop up automatically for that program. +) + +helpinfo_TerminatingCharacters= +( +;"Terminating Characters" is a list of characters (EndKey) which will signal the program that you are done typing a word. +;You probably need to change this only when using this with certain programming languages. +; +;Default setting: +;%dft_TerminatingCharacters% +; +; More information on how to configure TerminatingCharacters: +;A list of keys may be found here: +; http://www.autohotkey.com/docs/KeyList.htm +;For more details on how to format the list of characters please see the EndKeys section (paragraphs 2,3,4) of: +; http://www.autohotkey.com/docs/commands/Input.htm +) + +helpinfo_ForceNewWordCharacters= +( +;"Force New Word Characters" is a comma separated list of characters which forces the program to start a new word whenever +;one of those characters is typed. Any words which begin with one of these characters will never be learned (even +;if learning is enabled). If you were typing a word when you hit one of these characters that word will be learned +;if learning is enabled. +;Change this only if you know what you are doing, it is probably only useful for certain programming languages. +; ex: ForceNewWordCharacters=@,:,# ) +; temporarily removed from the help string +;`r`n`r`n %helpinfo_NumPresses% helpinfo_FullHelpString = ( -%helpinfo_IncludeProgramExecutables% `r`n`r`n %helpinfo_IncludeProgramTitles% `r`n`r`n %helpinfo_ExcludeProgramExecutables% `r`n`r`n %helpinfo_ExcludeProgramTitles% +%helpinfo_LearnMode% `r`n`r`n %helpinfo_LearnLength% `r`n`r`n %helpinfo_LearnCount% + +%helpinfo_ListBoxRows% `r`n`r`n %helpinfo_Length% `r`n`r`n %helpinfo_SendMethod% + +%helpinfo_DisabledAutoCompleteKeys% `r`n`r`n %helpinfo_ArrowKeyMethod% `r`n`r`n + +%helpinfo_NoBackSpace% `r`n`r`n %helpinfo_DetectMouseClickMove% `r`n`r`n %helpinfo_AutoSpace% + +%helpinfo_DoNotLearnStrings% `r`n`r`n %helpinfo_SuppressMatchingWord% -%helpinfo_Length% `r`n`r`n %helpinfo_NumPresses% `r`n`r`n %helpinfo_LearnMode% `r`n`r`n %helpinfo_LearnCount% `r`n`r`n %helpinfo_LearnLength% `r`n`r`n %helpinfo_DoNotLearnStrings% +%helpinfo_ListBoxOffset% `r`n`r`n %helpinfo_ListBoxFontFixed% `r`n`r`n %helpinfo_ListBoxFontSize% -%helpinfo_ArrowKeyMethod% `r`n`r`n %helpinfo_DisabledAutoCompleteKeys% `r`n`r`n %helpinfo_DetectMouseClickMove% `r`n`r`n %helpinfo_NoBackSpace% `r`n`r`n %helpinfo_AutoSpace% +%helpinfo_ListBoxOpacity% `r`n`r`n %helpinfo_ListBoxCharacterWidth% `r`n`r`n %helpinfo_ListBoxFontOverride% -%helpinfo_SuppressMatchingWord% `r`n`r`n %helpinfo_SendMethod% `r`n`r`n %helpinfo_TerminatingCharacters% `r`n`r`n %helpinfo_ForceNewWordCharacters% `r`n`r`n %helpinfo_ListBoxOffset% +%helpinfo_IncludeProgramTitles% `r`n`r`n %helpinfo_ExcludeProgramTitles% `r`n`r`n %helpinfo_IncludeProgramExecutables% `r`n`r`n %helpinfo_ExcludeProgramExecutables% -%helpinfo_ListBoxFontFixed% `r`n`r`n %helpinfo_ListBoxFontOverride% `r`n`r`n %helpinfo_ListBoxFontSize% `r`n`r`n %helpinfo_ListBoxCharacterWidth% `r`n`r`n %helpinfo_ListBoxOpacity% +%helpinfo_HelperWindowProgramTitles% `r`n`r`n %helpinfo_HelperWindowProgramExecutables% -%helpinfo_ListBoxRows% `r`n`r`n %helpinfo_HelperWindowProgramExecutables% `r`n`r`n %helpinfo_HelperWindowProgramTitles% +%helpinfo_TerminatingCharacters% `r`n`r`n %helpinfo_ForceNewWordCharacters% ) } diff --git a/Source/Includes/Settings.ahk b/Source/Includes/Settings.ahk index 7839627..1caa0e0 100644 --- a/Source/Includes/Settings.ahk +++ b/Source/Includes/Settings.ahk @@ -275,7 +275,7 @@ ConstructGui() Gui, MenuGui:Add, Text, x%MenuGroup2of3HelpX% y%MenuRowHelpY% vhelpinfo_DetectMouseClickMove gHelpMe, %MenuGuiHelpIcon% Gui, MenuGui:Font, cBlack - Gui, MenuGui:Add, GroupBox, x%MenuGroup3of3BoxX% y%MenuRowY% w%MenuThreeColGroupWidth% h%MenuRowHeight% , Type space after autcomplete + Gui, MenuGui:Add, GroupBox, x%MenuGroup3of3BoxX% y%MenuRowY% w%MenuThreeColGroupWidth% h%MenuRowHeight% , Type space after autocomplete Menu_AutoSpaceOptions=|On|Off| StringReplace, Menu_AutoSpaceOptions, Menu_AutoSpaceOptions, |%prefs_AutoSpace%|,|%prefs_AutoSpace%|| StringTrimLeft, Menu_AutoSpaceOptions, Menu_AutoSpaceOptions, 1 @@ -496,42 +496,42 @@ Words should be stored in a file named 'Wordlist.txt' which should be located in In addition to being able to use the number keys to select a word, you can select words from the drop-down via the Up/Down arrows. Hitting Up on the first item will bring you to the last and hitting Down on the last item will bring you to the first. Hitting Page Up will bring you up 10 items, or to the first item. Hitting Page Down will bring you down 10 items, or to the last item. You can hit Tab, Right Arrow, Ctrl-Space, or Ctrl-Enter to autocomplete the selected word. This feature can be disabled or have some of its behavior modified via the Preferences file. -The script will learn words as you type them if LearnMode=On in the preferences file. If you type a word more than 5 times (or as defined in the preferences.ini file) in a single session the word will be permanently added to the list of learnedd words. Learned words will always appear below predefined words, but will be ranked and ordered among other learned words based on the frequency you type them. You can permanently learn a word by highlighting a word and hitting Ctrl-Shift-C (this works even if LearnMode=Off). You may use Ctrl-Shift-Del to remove the currently selected Learned Word. +The script will learn words as you type them if "Learn new words as you type" is set to On in Settings. If you type a word more than 5 times (or as defined in "Minimum length of word to learn") in a single session the word will be permanently added to the list of learned words. Learned words will always appear below predefined words, but will be ranked and ordered among other learned words based on the frequency you type them. You can permanently learn a word by highlighting a word and hitting Ctrl-Shift-C (this works even if "Learn new words as you type" is set to Off). You may use Ctrl-Shift-Del to remove the currently selected Learned Word. Learned words are stored in the WordlistLearned.db sqlite3 database. Learned words are backed up in WordlistLearned.txt. To modify the list of Learned words manually, delete the WordlistLearned.db database, then manually edit the WordlistLearned.txt file. On the next launch of the script, the WordlistLearned.db database will be rebuilt. -The script will automatically create a file named preferences.ini in the script directory. This file allows for customization of the script. -To allow for distribution of standardized preferences, a Defaults.ini may be distributed with the same format as Preferences.ini. If the Defaults.ini is present, Preferences.ini will not be created. A user may override the Defaults.ini by manually creating a Preferences.ini. +When Settings are changed, the script will automatically create a file named Preferences.ini in the script directory. This file allows for sharing settings between users. Users are encouraged to only edit settings by using the Settings window. +To allow for distribution of standardized preferences, a Defaults.ini may be distributed with the same format as Preferences.ini. If the Defaults.ini is present, this will override the hardcoded defaults in the script. A user may override the Defaults.ini by changing settings in the Settings window. Customizable features include (see also detailed description below) - * List of programs for which you want %g_ScriptTitle% enabled. - * List of programs for which you do not want %g_ScriptTitle% enabled. - * Number of characters before the list of words appears. - * Number of times you must press a number hotkey to select the associated word (options are 1 and 2, 2 has had minimal testing). * Enable or disable learning mode. - * Number of times you must type a word before it is permanently learned. * Number of characters a word needs to have in order to be learned. - * List of strings which will prevent any word which contains one of these strings from being learned. + * Number of times you must type a word before it is permanently learned. + * Number of items to show in the list at once. + * Number of characters before the list of words appears. + * Change the method used to send the word to the screen. * Enable, disable, or customize the arrow key's functionality. * Disable certain keys for autocompleting a word selected via the arrow keys. - * Enable or disable the resetting of the List Box on a mouseclick. * Change whether the script simply completes or actually replaces the word (capitalization change based on the wordlist file) + * Enable or disable the resetting of the Wordlist Box on a mouseclick. * Change whether a space should be automatically added after the autocompleted word or not. + * List of strings which will prevent any word which contains one of these strings from being learned. * Change whether the typed word should appear in the word list or not. - * Change the method used to send the word to the screen. + * Number of pixels below the caret to display the Wordlist Box. + * Wordlist Box Default Font of fixed (Courier New) or variable (Tahoma) width. + * Wordlist Box Font Size. + * Wordlist Box Opacity setting to set the transparency of the List Box. + * Wordlist Box Character Width to override the computed character width. + * Wordlist Box Default Font override. + * List of programs for which you want %g_ScriptTitle% enabled. + * List of programs for which you do not want %g_ScriptTitle% enabled. + * List of programs for which you want the Helper Window to automatically open. * List of characters which terminate a word. * List of characters which terminate a word and start a new word. - * List of programs for which you want the Helper Window to automatically open. - * Number of pixels below the caret to display the List Box. - * List Box Default Font of fixed (Courier New) or variable (Tahoma) width. - * List Box Default Font override. - * List Box Font Size. - * List Box Character Width to override the computed character width. - * List Box Opacity setting to set the transparency of the List Box. - * List Box Rows to define the number of items to show in the list at once. - + * Number of times you must press a number hotkey to select the associated word (options are 1 and 2, 2 is buggy). + Unicode Support: -Full (untested) for UTF-8 character set. +Full support for UTF-8 character set. ) helpinfo_HelpText = %helpinfo_Intro%`r`n`r`n%helpinfo_IncludeProgramExecutables%`r`n`r`n%helpinfo_IncludeProgramTitles%`r`n`r`n%helpinfo_ExcludeProgramExecutables%`r`n`r`n%helpinfo_ExcludeProgramTitles%`r`n`r`n%helpinfo_Length%`r`n`r`n%helpinfo_NumPresses%`r`n`r`n%helpinfo_LearnMode%`r`n`r`n%helpinfo_LearnCount%`r`n`r`n%helpinfo_LearnLength%`r`n`r`n%helpinfo_ArrowKeyMethod%`r`n`r`n%helpinfo_DisabledAutoCompleteKeys%`r`n`r`n%helpinfo_DetectMouseClickMove%`r`n`r`n%helpinfo_NoBackSpace%`r`n`r`n%helpinfo_AutoSpace%`r`n`r`n%helpinfo_SendMethod%`r`n`r`n%helpinfo_TerminatingCharacters%`r`n`r`n%helpinfo_ForceNewWordCharacters%`r`n`r`n%helpinfo_ListBoxOffset%`r`n`r`n%helpinfo_ListBoxFontFixed%`r`n`r`n%helpinfo_ListBoxFontOverride%`r`n`r`n%helpinfo_ListBoxFontSize%`r`n`r`n%helpinfo_ListBoxCharacterWidth%`r`n`r`n%helpinfo_ListBoxOpacity%`r`n`r`n%helpinfo_ListBoxRows%`r`n`r`n%helpinfo_HelperWindowProgramExecutables%`r`n`r`n%helpinfo_HelperWindowProgramTitles% From 1b9fc0fc25409223cacbe49e76788bedb439d5a4 Mon Sep 17 00:00:00 2001 From: ManiacDC Date: Fri, 3 Apr 2015 08:35:33 -0400 Subject: [PATCH 56/62] Prevent creation of 0 byte preferences file --- Source/Includes/Preferences File.ahk | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/Source/Includes/Preferences File.ahk b/Source/Includes/Preferences File.ahk index 55971d5..d6d4648 100644 --- a/Source/Includes/Preferences File.ahk +++ b/Source/Includes/Preferences File.ahk @@ -407,8 +407,16 @@ SavePreferences(PrefsToSave) local index local element local KeyName + local PrefsExist ValidatePreferences() + + IfExist, %g_PrefsFile% + { + PrefsExist := true + } else { + PrefsExist := false + } for index, element in PrefsToSave { @@ -421,7 +429,11 @@ SavePreferences(PrefsToSave) If (%element% == dft_%KeyName%) { - IniDelete, %g_PrefsFile%,% g_PrefsSections[KeyName], %KeyName% + ; Make sure preferences already exist so we don't create 0 byte file + if (PrefsExist == true) + { + IniDelete, %g_PrefsFile%,% g_PrefsSections[KeyName], %KeyName% + } } else { IniWrite,% %element%, %g_PrefsFile%,% g_PrefsSections[KeyName], %KeyName% } From fd781b3d906ebc11c9de517aa646ce971ef1cae2 Mon Sep 17 00:00:00 2001 From: ManiacDC Date: Fri, 3 Apr 2015 13:48:48 -0400 Subject: [PATCH 57/62] Fixed icon paths to be absolute paths --- Source/TypingAid.ahk | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/Source/TypingAid.ahk b/Source/TypingAid.ahk index caf72bd..1ca8c5a 100644 --- a/Source/TypingAid.ahk +++ b/Source/TypingAid.ahk @@ -948,10 +948,10 @@ SuspendOn() Menu, Tray, Tip, %g_ScriptTitle% - Inactive If A_IsCompiled { - Menu, tray, Icon, %A_ScriptName%,3,1 + Menu, tray, Icon, %A_ScriptFullPath%,3,1 } else { - Menu, tray, icon, %g_ScriptTitle%-Inactive.ico, ,1 + Menu, tray, Icon, %A_ScriptDir%\%g_ScriptTitle%-Inactive.ico, ,1 } } @@ -962,10 +962,10 @@ SuspendOff() Menu, Tray, Tip, %g_ScriptTitle% - Active If A_IsCompiled { - Menu, tray, Icon, %A_ScriptName%,1,1 + Menu, tray, Icon, %A_ScriptFullPath%,1,1 } else { - Menu, tray, icon, %g_ScriptTitle%-Active.ico, ,1 + Menu, tray, Icon, %A_ScriptDir%\%g_ScriptTitle%-Active.ico, ,1 } } From 6609b208732582a6b2483a7fb95e4381a10067e5 Mon Sep 17 00:00:00 2001 From: ManiacDC Date: Mon, 6 Apr 2015 07:41:20 -0400 Subject: [PATCH 58/62] Added a duplicate check when adding new Program Titles/Executables via the UI buttons. Fixed some help text --- Source/Includes/Preferences File.ahk | 6 +++--- Source/Includes/Settings.ahk | 16 ++++++++++++++-- 2 files changed, 17 insertions(+), 5 deletions(-) diff --git a/Source/Includes/Preferences File.ahk b/Source/Includes/Preferences File.ahk index d6d4648..3aa36cd 100644 --- a/Source/Includes/Preferences File.ahk +++ b/Source/Includes/Preferences File.ahk @@ -600,13 +600,13 @@ helpinfo_ExcludeProgramTitles= helpinfo_IncludeProgramExecutables= ( ;"Processes you want %g_ScriptTitle% enabled for" is a list of executable (.exe) files that %g_ScriptTitle% should be enabled for. -;If one the executables matches the current program, %g_ScriptTitle% is enabled for that program. +;If one of the executables matches the current program, %g_ScriptTitle% is enabled for that program. ) helpinfo_ExcludeProgramExecutables= ( ;"Processes you want %g_ScriptTitle% disabled for" is a list of executable (.exe) files that %g_ScriptTitle% should be disabled for. -;If one the executables matches the current program, %g_ScriptTitle% is disabled for that program. +;If one of the executables matches the current program, %g_ScriptTitle% is disabled for that program. ) helpinfo_HelperWindowProgramTitles= @@ -618,7 +618,7 @@ helpinfo_HelperWindowProgramTitles= helpinfo_HelperWindowProgramExecutables= ( ;"Processes you want the helper window enabled for" is a list of executable (.exe) files that the helper window should be automatically enabled for. -;If one the executables matches the current program, the helper window will pop up automatically for that program. +;If one of the executables matches the current program, the helper window will pop up automatically for that program. ) helpinfo_TerminatingCharacters= diff --git a/Source/Includes/Settings.ahk b/Source/Includes/Settings.ahk index 1caa0e0..07aac9f 100644 --- a/Source/Includes/Settings.ahk +++ b/Source/Includes/Settings.ahk @@ -670,7 +670,7 @@ GetList(TitleType,GetExe) VisitForum: MsgBox , 36 , Visit %g_ScriptTitle% forum (www.autohotkey.com), Do you want to visit the %g_ScriptTitle% forum on www.autohotkey.com? -IfMsgBox Yes +IfMsgBox, Yes Run, http://www.autohotkey.com/board/topic/49517-ahk-11typingaid-v2198-word-autocompletion-utility/ Return @@ -1004,6 +1004,18 @@ return AddNew1() { GuiControlGet, MenuOutputVar, ProcessList:,Edit1 + ControlGet, MenuTitleList, List, , ListBox1 + StringReplace, MenuTitleList, MenuTitleList, `n, |, All + MenuTitleList := "|" . MenuTitleList . "|" + + SearchString := "|" . MenuOutputVar . "|" + + IfInString, MenuTitleList, |%MenuOutputVar%| + { + MsgBox, 16, , Duplicate entry. + return + } + GuiControl, ProcessList:, ListBox1, %MenuOutputVar%| GuiControl, ProcessList:, Edit1, ControlFocus, Edit1 @@ -1019,7 +1031,7 @@ RemoveNew1() GuiControlGet, MenuOutputVar, ProcessList:, Listbox1 ControlGet, MenuTitleList, List, , ListBox1 StringReplace, MenuTitleList, MenuTitleList, `n, |, All - MenuTitleList := "|" MenuTitleList "|" + MenuTitleList := "|" . MenuTitleList . "|" StringReplace, MenuTitleList, MenuTitleList, |%MenuOutputVar%|, |, all StringTrimRight, MenuTitleList, MenuTitleList, 1 GuiControl, ProcessList:, ListBox1, | From d3bb14ba0100e6d85f6389725a513c2e7e4653ad Mon Sep 17 00:00:00 2001 From: ManiacDC Date: Tue, 7 Apr 2015 08:25:12 -0400 Subject: [PATCH 59/62] Final (hopefully) commit before merging to master Previously LearnedWords now appear when Learning is turned off Ctrl-Shift-C learns words again when Learning is turned off --- Changelog.txt | 15 ++++++++++ Images/TypingAidSettings.PNG | Bin 0 -> 24275 bytes Images/typewriter.png | Bin 0 -> 13878 bytes Readme.txt | 54 ++++++++++++++++++----------------- Source/Includes/Settings.ahk | 6 ++-- Source/Includes/Wordlist.ahk | 7 +---- Source/TypingAid.ahk | 51 ++++++++++++++------------------- Source/TypingAid.ahk.ini | Bin 578 -> 578 bytes 8 files changed, 69 insertions(+), 64 deletions(-) create mode 100644 Images/TypingAidSettings.PNG create mode 100644 Images/typewriter.png diff --git a/Changelog.txt b/Changelog.txt index 6a3a204..0a97af0 100644 --- a/Changelog.txt +++ b/Changelog.txt @@ -1,3 +1,18 @@ +*2.20.0 4/7/2015 +** Added a Settings window (thanks to HugoV for doing much of the coding). +** Changed the learned words to use an SQLite3 databas backend. This should help with future enhancements +** Changing settings no longer requires a script restart +** Added Active/Inactive Notification Area icons +** Added working Pause functionality +** Detecting Window switches now uses Windows Event Hooks, rather than a timer +** Added weighting based on number of characters left to type +** Changed license to GPLv3 for compatibility with AhkDBA SQLite3 interface +** Added the ability to learn words with no alpha characters when hitting Ctrl-Shift-C, or to read them in from Wordlist.txt +** Fixed Wordlist drawing on the mouse when unable to detect the caret position +** Fixed words not being learned when hitting Ctrl-Shift-C while Learning is off +** Large amounts of code refactoring, including renaming all global variables and fixing function scope +** Fixed having length of 1 not work with ForceNewWordCharacters + *2.19.9 12/18/2014 ** Fixed bug when creating TerminatingCharacters when generating preferences file. Broken TerminatingCharacters will be repaired if not already modified. ** Added "Threading" during the input loop to cause less missed keys diff --git a/Images/TypingAidSettings.PNG b/Images/TypingAidSettings.PNG new file mode 100644 index 0000000000000000000000000000000000000000..8f35155c3a5fb6cc4cae7bbaf5b9499f5f0d3e2f GIT binary patch literal 24275 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 b5&1-i!}4#Ih0&E1@X}Ni-pbcN%)|Z literal 0 HcmV?d00001 diff --git a/Readme.txt b/Readme.txt index 9cb6fcd..cc3576d 100644 --- a/Readme.txt +++ b/Readme.txt @@ -3,9 +3,8 @@ TypingAid is a simple, compact, and handy auto-completion utility. It is customizable enough to be useful for regular typing and for programming. [b]Download:[/b] -[url=https://github.com/ManiacDC/TypingAid/releases/download/v2.19.9/TypingAid.exe]TypingAid v2.19.9 Precompiled Executable[/url] -[url=https://github.com/ManiacDC/TypingAid/releases/download/v2.19.9/TypingAid64.exe]TypingAid v2.19.9 64-bit Precompiled Executable[/url] -[url=https://github.com/ManiacDC/TypingAid/archive/v2.19.9.zip]TypingAid v2.19.9 AHK Script[/url] +[url=https://github.com/ManiacDC/TypingAid/releases/download/v2.20.0/TypingAid.zip]TypingAid v2.20.0 Precompiled Executable[/url] +[url=https://github.com/ManiacDC/TypingAid/archive/v2.20.0.zip]TypingAid v2.20.0 AHK Script[/url] As of version 2.19.7.0, the script is no longer compatible with AHK Basic. Please get the newest version from [url]http://www.ahkscript.org[/url]. @@ -24,49 +23,50 @@ AHK Keyword Wordlist: [b]Screenshots:[/b] [img]https://github.com/ManiacDC/TypingAid/raw/master/Images/TypingAidListBox.png[/img] +[img]https://github.com/ManiacDC/TypingAid/raw/master/Images/TypingAidSettings.png[/img] [b][url=https://github.com/ManiacDC/TypingAid/raw/master/Changelog.txt]Change Log[/url][/b] [b]Features:[/b] -As you type your word, up to 10 (or as defined in the Preferences file) matches will appear in a drop-down dialog, numbered 1 - 0 (10th). To choose the match you want just hit the associated number on your keyboard (numpad does not work). Alternatively you can select an item from the drop-down using the Up/Down arrows. You can define a fixed position for the drop-down dialog to appear by hitting Ctrl-Shift-H to open a small helper window, or by specifying a list of programs in the preferences file. Please note that in Firefox, Thunderbird, and certain other programs you will probably need to open the helper window due to issues detecting the caret position. +As you type your word, up to 10 (or as defined in Settings) matches will appear in a drop-down dialog, numbered 1 - 0 (10th). To choose the match you want just hit the associated number on your keyboard (numpad does not work). Alternatively you can select an item from the drop-down using the Up/Down arrows. You can define a fixed position for the drop-down dialog to appear by hitting Ctrl-Shift-H to open a small helper window, or by specifying a list of programs in the preferences file. Please note that in Firefox, Thunderbird, and certain other programs you will probably need to open the helper window due to issues detecting the caret position. Words should be stored in a file named 'Wordlist.txt' which should be located in the script directory. These words may be commented out by prefixing with a semicolon or simply removed or added. Words may include terminating characters (such as space), but you must select the word before typing the terminating character. -In addition to being able to use the number keys to select a word, you can select words from the drop-down via the Up/Down arrows. Hitting Up on the first item will bring you to the last and hitting Down on the last item will bring you to the first. Hitting Page Up will bring you up 10 items, or to the first item. Hitting Page Down will bring you down 10 items, or to the last item. You can hit Tab, Right Arrow, Ctrl-Space, or Ctrl-Enter to autocomplete the selected word. This feature can be disabled or have some of its behavior modified via the Preferences file. +In addition to being able to use the number keys to select a word, you can select words from the drop-down via the Up/Down arrows. Hitting Up on the first item will bring you to the last and hitting Down on the last item will bring you to the first. Hitting Page Up will bring you up 10 items, or to the first item. Hitting Page Down will bring you down 10 items, or to the last item. You can hit Tab, Right Arrow, Ctrl-Space, or Ctrl-Enter to autocomplete the selected word. This feature can be disabled or have some of its behavior modified via Settings. -The script will learn words as you type them if LearnMode=On in the preferences file. If you type a word more than 5 times (or as defined in the preferences.ini file) in a single session the word will be permanently added to the list of learnedd words. Learned words will always appear below predefined words, but will be ranked and ordered among other learned words based on the frequency you type them. You can permanently learn a word by highlighting a word and hitting Ctrl-Shift-C (this works even if LearnMode=Off). You may use Ctrl-Shift-Del to remove the currently selected Learned Word. +The script will learn words as you type them if "Learn new words as you type" is set to On in Settings. If you type a word more than 5 times (or as defined in "Minimum length of word to learn") in a single session the word will be permanently added to the list of learned words. Learned words will always appear below predefined words, but will be ranked and ordered among other learned words based on the frequency you type them. You can permanently learn a word by highlighting a word and hitting Ctrl-Shift-C (this works even if "Learn new words as you type" is set to Off). You may use Ctrl-Shift-Del to remove the currently selected Learned Word. Learned words are stored in the WordlistLearned.db sqlite3 database. Learned words are backed up in WordlistLearned.txt. To modify the list of Learned words manually, delete the WordlistLearned.db database, then manually edit the WordlistLearned.txt file. On the next launch of the script, the WordlistLearned.db database will be rebuilt. -The script will automatically create a file named preferences.ini in the script directory. This file allows for customization of the script. -To allow for distribution of standardized preferences, a Defaults.ini may be distributed with the same format as Preferences.ini. If the Defaults.ini is present, Preferences.ini will not be created. A user may override the Defaults.ini by manually creating a Preferences.ini. +When Settings are changed, the script will automatically create a file named Preferences.ini in the script directory. This file allows for sharing settings between users. Users are encouraged to only edit settings by using the Settings window. +To allow for distribution of standardized preferences, a Defaults.ini may be distributed with the same format as Preferences.ini. If the Defaults.ini is present, this will override the hardcoded defaults in the script. A user may override the Defaults.ini by changing settings in the Settings window. Customizable features include: [LIST] -[*]List of programs for which you want TypingAid enabled.[/*] -[*]List of programs for which you do not want TypingAid enabled.[/*] -[*]Number of characters before the list of words appears.[/*] -[*]Number of times you must press a number hotkey to select the associated word (options are 1 and 2, 2 has had minimal testing).[/*] [*]Enable or disable learning mode.[/*] -[*]Number of times you must type a word before it is permanently learned.[/*] [*]Number of characters a word needs to have in order to be learned.[/*] -[*]List of strings which will prevent any word which contains one of these strings from being learned.[/*] +[*]Number of times you must type a word before it is permanently learned.[/*] +[*]Number of items to show in the list at once.[/*] +[*]Number of characters before the list of words appears.[/*] +[*]Change the method used to send the word to the screen.[/*] [*]Enable, disable, or customize the arrow key's functionality.[/*] [*]Disable certain keys for autocompleting a word selected via the arrow keys.[/*] -[*]Enable or disable the resetting of the List Box on a mouseclick.[/*] -[*]Change whether the script simply completes or actually replaces the word (capitalization change based on the wordlist file)[/*] +[*]Change whether the script simply completes or actually replaces the word (capitalization change based on the wordlist file).[/*] +[*]Enable or disable the resetting of the Wordlist Box on a mouseclick.[/*] [*]Change whether a space should be automatically added after the autocompleted word or not.[/*] +[*]List of strings which will prevent any word which contains one of these strings from being learned.[/*] [*]Change whether the typed word should appear in the word list or not.[/*] -[*]Change the method used to send the word to the screen.[/*] +[*]Number of pixels below the caret to display the Wordlist Box.[/*] +[*]Wordlist Box Default Font of fixed (Courier New) or variable (Tahoma) width.[/*] +[*]Wordlist Box Font Size.[/*] +[*]Wordlist Box Opacity setting to set the transparency of the List Box.[/*] +[*]Wordlist Box Character Width to override the computed character width.[/*] +[*]Wordlist Box Default Font override.[/*] +[*]List of programs for which you want %g_ScriptTitle% enabled.[/*] +[*]List of programs for which you do not want %g_ScriptTitle% enabled.[/*] +[*]List of programs for which you want the Helper Window to automatically open.[/*] [*]List of characters which terminate a word.[/*] [*]List of characters which terminate a word and start a new word.[/*] -[*]List of programs for which you want the Helper Window to automatically open.[/*] -[*]Number of pixels below the caret to display the List Box.[/*] -[*]List Box Default Font of fixed (Courier New) or variable (Tahoma) width.[/*] -[*]List Box Default Font override.[/*] -[*]List Box Font Size.[/*] -[*]List Box Character Width to override the computed character width.[/*] -[*]List Box Opacity setting to set the transparency of the List Box.[/*] -[*]List Box Rows to define the number of items to show in the list at once.[/*] +[*]Number of times you must press a number hotkey to select the associated word (options are 1 and 2, 2 is buggy).[/*] [/LIST] [b]Unicode Support:[/b] Full support for UTF-8 character set. @@ -78,11 +78,13 @@ Full support for UTF-8 character set. [b][url=https://github.com/ManiacDC/TypingAid/issues?q=is%3Aopen+is%3Aissue+label%3Aenhancement]Future Features[/url][/b] [b]Credits:[/b] -Jordi S Maniac +Jordi S HugoV kakarukeys Asaptrad +j4hangir +Theclaw [b][url=http://www.autohotkey.com/board/topic/636-intellisense-like-autoreplacement-with-multiple-suggestions/]Original Thread[/url][/b] diff --git a/Source/Includes/Settings.ahk b/Source/Includes/Settings.ahk index 07aac9f..e301714 100644 --- a/Source/Includes/Settings.ahk +++ b/Source/Includes/Settings.ahk @@ -490,11 +490,11 @@ ConstructGui() It is customizable enough to be useful for regular typing and for programming. Features: -As you type your word, up to 10 (or as defined in the Preferences file) matches will appear in a drop-down dialog, numbered 1 - 0 (10th). To choose the match you want just hit the associated number on your keyboard (numpad does not work). Alternatively you can select an item from the drop-down using the Up/Down arrows. You can define a fixed position for the drop-down dialog to appear by hitting Ctrl-Shift-H to open a small helper window, or by specifying a list of programs in the preferences file. Please note that in Firefox, Thunderbird, and certain other programs you will probably need to open the helper window due to issues detecting the caret position. +As you type your word, up to 10 (or as defined in Settings) matches will appear in a drop-down dialog, numbered 1 - 0 (10th). To choose the match you want just hit the associated number on your keyboard (numpad does not work). Alternatively you can select an item from the drop-down using the Up/Down arrows. You can define a fixed position for the drop-down dialog to appear by hitting Ctrl-Shift-H to open a small helper window, or by specifying a list of programs in the preferences file. Please note that in Firefox, Thunderbird, and certain other programs you will probably need to open the helper window due to issues detecting the caret position. Words should be stored in a file named 'Wordlist.txt' which should be located in the script directory. These words may be commented out by prefixing with a semicolon or simply removed or added. Words may include terminating characters (such as space), but you must select the word before typing the terminating character. -In addition to being able to use the number keys to select a word, you can select words from the drop-down via the Up/Down arrows. Hitting Up on the first item will bring you to the last and hitting Down on the last item will bring you to the first. Hitting Page Up will bring you up 10 items, or to the first item. Hitting Page Down will bring you down 10 items, or to the last item. You can hit Tab, Right Arrow, Ctrl-Space, or Ctrl-Enter to autocomplete the selected word. This feature can be disabled or have some of its behavior modified via the Preferences file. +In addition to being able to use the number keys to select a word, you can select words from the drop-down via the Up/Down arrows. Hitting Up on the first item will bring you to the last and hitting Down on the last item will bring you to the first. Hitting Page Up will bring you up 10 items, or to the first item. Hitting Page Down will bring you down 10 items, or to the last item. You can hit Tab, Right Arrow, Ctrl-Space, or Ctrl-Enter to autocomplete the selected word. This feature can be disabled or have some of its behavior modified via Settings. The script will learn words as you type them if "Learn new words as you type" is set to On in Settings. If you type a word more than 5 times (or as defined in "Minimum length of word to learn") in a single session the word will be permanently added to the list of learned words. Learned words will always appear below predefined words, but will be ranked and ordered among other learned words based on the frequency you type them. You can permanently learn a word by highlighting a word and hitting Ctrl-Shift-C (this works even if "Learn new words as you type" is set to Off). You may use Ctrl-Shift-Del to remove the currently selected Learned Word. Learned words are stored in the WordlistLearned.db sqlite3 database. Learned words are backed up in WordlistLearned.txt. To modify the list of Learned words manually, delete the WordlistLearned.db database, then manually edit the WordlistLearned.txt file. On the next launch of the script, the WordlistLearned.db database will be rebuilt. @@ -512,7 +512,7 @@ Customizable features include (see also detailed description below) * Change the method used to send the word to the screen. * Enable, disable, or customize the arrow key's functionality. * Disable certain keys for autocompleting a word selected via the arrow keys. - * Change whether the script simply completes or actually replaces the word (capitalization change based on the wordlist file) + * Change whether the script simply completes or actually replaces the word (capitalization change based on the wordlist file). * Enable or disable the resetting of the Wordlist Box on a mouseclick. * Change whether a space should be automatically added after the autocompleted word or not. * List of strings which will prevent any word which contains one of these strings from being learned. diff --git a/Source/Includes/Wordlist.ahk b/Source/Includes/Wordlist.ahk index f516d4e..bbe2766 100644 --- a/Source/Includes/Wordlist.ahk +++ b/Source/Includes/Wordlist.ahk @@ -191,12 +191,7 @@ AddWordToList(AddWord,ForceCountNewOnly,ForceLearn=false, ByRef LearnedWordsCoun CountValue := prefs_LearnCount ;set the count to LearnCount so it gets written to the file } - IfEqual, prefs_LearnMode, On - { - g_WordListDB.Query("INSERT INTO words VALUES ('" . AddWordIndex . "','" . AddWord . "','" . CountValue . "');") - } else { - g_WordListDB.Query("INSERT INTO words (wordindexed,word) VALUES ('" . AddWordIndex . "','" . AddWord . "');") - } + g_WordListDB.Query("INSERT INTO words VALUES ('" . AddWordIndex . "','" . AddWord . "','" . CountValue . "');") } else { IfEqual, prefs_LearnMode, On { diff --git a/Source/TypingAid.ahk b/Source/TypingAid.ahk index 1ca8c5a..c17bd15 100644 --- a/Source/TypingAid.ahk +++ b/Source/TypingAid.ahk @@ -1,15 +1,17 @@ ; TypingAid -; http://www.autohotkey.com/forum/viewtopic.php?t=53630 +; http://www.autohotkey.com/board/topic/49517-ahk-11typingaid-v2199-word-autocompletion-utility/ ; ; Press 1 to 0 keys to autocomplete the word upon suggestion ; Or use the Up/Down keys to select an item ; (0 will match suggestion 10) ; Credits: -; -Jordi S -; -Maniac -; -hugov -; -kakarukeys -; -Asaptrad +; -Maniac +; -Jordi S +; -hugov +; -kakarukeys +; -Asaptrad +; -j4hangir +; -Theclaw ;___________________________________________ ; Press 1 to 0 keys to autocomplete the word upon suggestion @@ -281,29 +283,21 @@ RecomputeMatches() WhereQuery := " WHERE wordindexed GLOB '" . WordMatch . "*' " . SuppressMatchingWordQuery - IfEqual, prefs_LearnMode, Off - { - WhereQuery .= " AND count IS NULL" - OrderByQuery := " ORDER BY ROWID, Word" - } else { - - NormalizeTable := g_WordListDB.Query("SELECT MIN(count) AS normalize FROM Words" . WhereQuery . "AND count IS NOT NULL LIMIT " . LimitTotalMatches . ";") + NormalizeTable := g_WordListDB.Query("SELECT MIN(count) AS normalize FROM Words" . WhereQuery . "AND count IS NOT NULL LIMIT " . LimitTotalMatches . ";") - for each, row in NormalizeTable.Rows - { - Normalize := row[1] - } - - IfEqual, Normalize, - { - Normalize := 0 - } + for each, row in NormalizeTable.Rows + { + Normalize := row[1] + } - WordLen := StrLen(g_Word) - OrderByQuery := " ORDER BY CASE WHEN count IS NULL then ROWID else 'z' end, CASE WHEN count IS NOT NULL then ( (count - " . Normalize . ") * ( 1 - ( '0.75' / (LENGTH(word) - " . WordLen . ")))) end DESC, Word" + IfEqual, Normalize, + { + Normalize := 0 } - - + + WordLen := StrLen(g_Word) + OrderByQuery := " ORDER BY CASE WHEN count IS NULL then ROWID else 'z' end, CASE WHEN count IS NOT NULL then ( (count - " . Normalize . ") * ( 1 - ( '0.75' / (LENGTH(word) - " . WordLen . ")))) end DESC, Word" + Matches := g_WordListDB.Query("SELECT word FROM Words" . WhereQuery . OrderByQuery . " LIMIT " . LimitTotalMatches . ";") g_singlematch := Object() @@ -423,15 +417,14 @@ InitializeHotKeys() IfNotEqual, prefs_LearnMode, On { Hotkey, $^+Delete, Off - - HotKey, $^+c, Off } else { - HotKey, $^+c, On Hotkey, $^+Delete, Off ; We only want Ctrl-Shift-Delete enabled when the listbox is showing. g_EnabledKeyboardHotKeys .= "$^+Delete" . g_DelimiterChar } + HotKey, $^+c, On + IfEqual, prefs_ArrowKeyMethod, Off { Hotkey, $^Enter, Off diff --git a/Source/TypingAid.ahk.ini b/Source/TypingAid.ahk.ini index ea4807fdaee42e4b678fc514b8128817328ef5b0..d15af47a7760cd5bd5493a1b56e88e42f8d541f5 100644 GIT binary patch delta 35 lcmX@aa)@OE6C<|~g8_pc1W)E=3}rWBFa+|ACTB9<1OR Date: Tue, 7 Apr 2015 09:39:03 -0400 Subject: [PATCH 60/62] Fixed a bug where the first letter typed would be missed in new documents in some programs --- Source/Includes/Window.ahk | 17 ++++++++++++----- Source/TypingAid.ahk | 12 ++++++++---- 2 files changed, 20 insertions(+), 9 deletions(-) diff --git a/Source/Includes/Window.ahk b/Source/Includes/Window.ahk index 523d09d..931f25c 100644 --- a/Source/Includes/Window.ahk +++ b/Source/Includes/Window.ahk @@ -78,10 +78,12 @@ WinChanged(hWinEventHook, event, wchwnd, idObject, idChild, dwEventThread, dwmsE ;------------------------------------------------------------------------ ; Wrapper function to ensure we always enable the WinEventHook after waiting for an active window +; Returns true if the current window is included GetIncludedActiveWindow() { - GetIncludedActiveWindowGuts() + CurrentWindowIsActive := GetIncludedActiveWindowGuts() EnableWinHook() + Return, CurrentWindowIsActive } GetIncludedActiveWindowGuts() @@ -95,6 +97,8 @@ GetIncludedActiveWindowGuts() Process, Priority,,Normal ;Wait for Included Active Window + CurrentWindowIsActive := true + Loop { WinGet, ActiveId, ID, A @@ -107,10 +111,11 @@ GetIncludedActiveWindowGuts() IfEqual, g_MouseWin_Id, %g_ListBox_Id% { WinActivate, ahk_id %g_Active_Id% - Return + Return, CurrentWindowIsActive } } + CurrentWindowIsActive := false InactivateAll() ;Wait for any window to be active WinWaitActive, , , , ZZZYouWillNeverFindThisStringInAWindowTitleZZZ @@ -122,6 +127,8 @@ GetIncludedActiveWindowGuts() Break If CheckForActive(ActiveProcess,ActiveTitle) Break + + CurrentWindowIsActive := false InactivateAll() SetTitleMatchMode, 3 ; set the title match mode to exact so we can detect a window title change ; Wait for the current window to no longer be active @@ -136,7 +143,7 @@ GetIncludedActiveWindowGuts() { g_Active_Id := ActiveId g_Active_Title := ActiveTitle - Return + Return, CurrentWindowIsActive } ;if we are in the Helper Window, we don't want to re-enable script functions @@ -167,7 +174,7 @@ GetIncludedActiveWindowGuts() } g_Active_Id := ActiveId g_Active_Title := ActiveTitle - Return + Return, CurrentWindowIsActive } CheckForActive(ActiveProcess,ActiveTitle) @@ -224,7 +231,7 @@ ReturnWinActive() global g_InSettings IF g_InSettings - Return, + Return WinGet, Temp_id, ID, A WinGetTitle, Temp_Title, ahk_id %Temp_id% diff --git a/Source/TypingAid.ahk b/Source/TypingAid.ahk index c17bd15..c1ab430 100644 --- a/Source/TypingAid.ahk +++ b/Source/TypingAid.ahk @@ -138,15 +138,19 @@ ProcessKey(InputChar,EndKey) ;If we have no window activated for typing, we don't want to do anything with the typed character IfEqual, g_Active_Id, { - GetIncludedActiveWindow() - Return + if (!GetIncludedActiveWindow()) + { + Return + } } IF !( ReturnWinActive() ) { - GetIncludedActiveWindow() - Return + if (!GetIncludedActiveWindow()) + { + Return + } } IfEqual, g_Active_Id, %g_Helper_Id% From c0ade08ebe16c2006c4b769fe63c74b77bb1d1ca Mon Sep 17 00:00:00 2001 From: ManiacDC Date: Thu, 9 Apr 2015 07:29:08 -0400 Subject: [PATCH 61/62] Fixed typo in Changelog --- Changelog.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Changelog.txt b/Changelog.txt index 0a97af0..952978f 100644 --- a/Changelog.txt +++ b/Changelog.txt @@ -1,6 +1,6 @@ *2.20.0 4/7/2015 ** Added a Settings window (thanks to HugoV for doing much of the coding). -** Changed the learned words to use an SQLite3 databas backend. This should help with future enhancements +** Changed the learned words to use an SQLite3 database backend. This should help with future enhancements ** Changing settings no longer requires a script restart ** Added Active/Inactive Notification Area icons ** Added working Pause functionality From ed91cbe9b3e274b3ec435fce4727e3d4e02f60cd Mon Sep 17 00:00:00 2001 From: ManiacDC Date: Thu, 9 Apr 2015 07:29:59 -0400 Subject: [PATCH 62/62] Fixed 2.20.0 date --- Changelog.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Changelog.txt b/Changelog.txt index 952978f..6ffc882 100644 --- a/Changelog.txt +++ b/Changelog.txt @@ -1,4 +1,4 @@ -*2.20.0 4/7/2015 +*2.20.0 4/9/2015 ** Added a Settings window (thanks to HugoV for doing much of the coding). ** Changed the learned words to use an SQLite3 database backend. This should help with future enhancements ** Changing settings no longer requires a script restart

w30I18rt!U1hLU>kt^4@vWOY4(*4Xft3x2M{j$h0Y0at_}3M zB+exz3?b;X^c^r7jZhhji4%+^(^=n^NuGkWrCyXR8Ip*Y3q1@i6tJYw*?`5j;8R%g7oJHPe_wQsJNy?Zv}Y*E!3p^=#1XJ z96y8FMCkHD`_6oGUP^j&_=v6w2*5ux@oL(*)?gg?3gr5fNrxD(1QP zxzb%!p9JJA*%VmyLAOpCC+Lh(KaQTap%)_)iw67;b=Y9z(^`>w0w?64`j-@f?a1f@ zO;YVfM^f~T7G>bASHlNY4K5jN^s4?=&^QQ9OzpV6LsAY~QCSQT8G`KB)Ect zc4XHBaSh*ZmFo3K2PLoJM~1ncx<-h*$k&BkT{`;??Kdu7kY2x;wO|b@vLU8cLkb zx)ypDAP-yPvpSF*krO|=Lz(j<{PhjZK2#1zR0W?E6oCD~dK_PA0$ns=_ttG(Bwwv4-`COeeWmBV8LHF|iT7+FrwT&usei z>1x;%D)ma1D4NtPBaI9aC$G+>#XE{aN4E%} z40NxD4pdBc5wn}_DF_)G&Dh4Tp*wY0@Po*R2{4~LGtcOlwa}!CbKUg}Du5c=!r)cp zp13O0;=uU8wn~Gq21>i7k*1Sc%EtrR-opdh=+6hV zPYfrufB$Vjd*J|Npm!m^;guWn7w|{e@{b0z#h(pmoBIc}lp_P${=W`r&wLVU_A`v72Za6o(P(*f-^)_;Vb>T>YFuLgrTQ|crEz&L zbT3bwt`@^yvzp*jaAmG4RRmyg;iq%L zG>MWULK9r?apPiVy_}Om(jA7$Dt>&D1~ks&arKH={_!l+FhtuTmZ}g5kw~1VP7fX2 z%S^q9{^w-s+LF-pbwwJE@tk_dkLO29y)gZ?t`yT55f>Ih;u{yn^!Y^Gztz=fya6|a z&n{?XsbM=++>?zGiGsQShgZOM#q<=F5vr^sL`0$`5Z>~rNSOAkt(Ici%L|Ll37p3s ztcoCdYJ*cx+XBCkA2L-TIb?D{Nvcdp4wu^jAx%72C2}zqDRGPp`&OX?#a!1(^MgFg z3+w_bNod~XCw;R6r)(>;#d#q(gcB~snz5gnS~6~^T@E4A$3#~ zn(IRmRBL(hpk@d~rh-vvVU5fh`W{Ltv&D$#h2l|#x>IID^A2ysRH!^j=^D-zM45H< zY$$3C*Fpm4pz@ax<2=ob+yxmbuLaKurIk&lE3=6A6k%>4WwHymqp+N$Oe0lMA(fTj zO{c1`GD7XoJ5g3eS0Agy+-0MPidP{s(MULoEW2MO;sTgBAR3nvqPr=o2g0bLNC>+2 zdYnv;V%D^pgGkSBxrlJd*2OFr8B}F0!D09EA{;@LlOQK?l3VztuZX)skx6M7^ElxN zBjWSm$VB0BDHA@o;GPkk+U4&i#2+(Z%71>KiWJhB&`HCLpb)e-4+kBhJGjo`R82Fd zXw2bZ3y7FQIHDb8;lVuQ9T%On=`IRJK@HYc_#!dKqz)Mb@}DQ&*TH;1 z+W!cX!ouO-@Y4V(Lxnj7W-EZ=+z#^upe*~ptlFb88YsqHXfk+O^1CEz$^V8jtZlA zI*#8X>{UP?AaT6FL19~9pLO<0%>lR#@IGMLIVZK*07_5!6~KNO;7Y(vfZqe&mhc74 zD<%j(@}DsgZ9N$@0$8e^)LsC54ak}D&EP?JC*Ur?oT(?ZcK{R5J*m|KJ_M|tCg7(q zKLk+OsQ;#<4%%OVeRvwm2^g1tQp?CVsr?8rWBN(W4$#{|H>v#y&#ef14Dctwq8Y-E z{Hb3rg!_5vM}4p;6Jsn}z&e;6fS&=L1N;r3_j^3kH1nkPgPfC^Z|+I03vdg7?Dt6c zElkQ=hkbB=3>Z02;7)@{VM}3N0&oKk09MUEsXYkz3^0GeNv#_|b@?&O2LWAq;2i); zOE`7>2jDksA!vIM`WWB^_?BSI6b{C@vKaUPw*&NaT~=Yg52g-!m~OsEAK9k;Js9T?*FWi=7BDvncq3!hWLdb-t6oel| zO5<5)s<|2QvghTMtHdRlp?{$~X`g`(rFeWbJf}=3p>X)bi~Aq-x=)yu=;ymM$>6aN zWPrmrMS30o8~GJlt5;beyNl~ROG4WcqJ!w|rc5=e82sQ!`t(y;HCFfPMJJNrD8D^b zREfTUh@)vKPE^s`GO{EIH9D8@o$RPFrqdfKwPOrLeb~qh#JHxRAB(6%kq5~tL{9v{ z1%8}B79bQ^j5dyWaI|qfWh6b(AeF^%)+1)D67Z3%R|zy7vre%FYjlfAKBgZSmI~OJ zYI<(YtU2m*8rtENktlV75cCxz!r&EM5k=hh#YzD;3_x_}=P#lCeO&$}{eYk;H8oYG zOfzV($kU0T4Z&F`iVrX6G^gi+)kF_aY`}yK;LzcgK^7E?sQIdn2E}6Zatw-y)p{U^ zP%#Mlr=P4zh)nn%5#6 zouruDXu60sKxLKra8*l}i)EceKrIxDa>DXP@(_{ahVxKjM3Ph`)u`W2rL@k1X@Kuu*wKA@E>fd5CS7DAks(_NDFl z;;M>Dc~B2aVzI>{6=qlnhhnTOwXVXb*CT8Y`ZBtT8C?fGbNyKs(YB;ep(@3zaJa^Y zc7SQckE4FNIt+Iv_<6c0-Kt$&CKYNuC^1PH!EfmbRVv^A<9a+=*T-xMo)j8zs!)XP zU@#z_c0rGEs@hSuAJv(k6A}wWBTXvhK_{?5HO6~}bncvv!u5HB4Mt~j`d>W+@d1Bg%8aVvKW+t?hVHchwx+#2k zMB|e8&!u z>q+P;dZ|!O^?VM>#Pwn?e_jY}t#8l8IMbBH54+F^6^dDTuwOsIq~E0o-xd#rftWz| zIs?ESBUtO;$~i1Z&ll@$zHyHl@{hynqZg9o za|U94@4}&ZIw=l4xn&uSrdL3Bv9X4Hr!I;SU2Ny1MMW3BF%$4{jSM33bKj{E%}8UI zYaDoq7KJr%C`90j86?XUI%+>C`bqX7Hzx$M3C*fNjUykVaiDX4;;sigkc=> zZL`65U6xs@am{Ejy?k9ximez^VN5k7Bl0SeP{b`Esg<`X#)!UPLh4h)Xy+eiFzD85 z$g1n2SWOM_B%C=H&Nf^$k+1&nY>u5k+aowBag6ArFfbRVvUq5@=w zi5Vh0zRt-2AB|NoouQ@2ZBI;6&>!lRlecg{C4&dgNZLS4b0Z>;HhzBaA~|*PSvEA0 z((ZIm!LVu$(2)!n2s4FE?xL#d5>Z53SbBL0mlG|zdfm)1(4L;>~J;u zn$l?klPg1=xH$jS6)eOLF|XxAdnpqV#|o_sb@2#(xpLTpy&*agli-+Ru6 zaG^e`@uYO0o2iE1t-xap;diiz8dxfXDsF%tS4BM;CPWBvoEXA5f9Xny$E+F>Q3H-g zd`pyw6S8!?G73#=U0Wm<3~@>v;oxtkfadC0@RO6;7k|gzg*3??54!#)!hR~_`oq$+ ze~LZLQ^f$C>x56#;oJzfF;7jT57g*Hx_`_>e7cQJ!98O~muFAIMGh)hhzrI`#dR8| zks-`(%HuRTeRyuPc9P-p12}9hYR6LX*U-!p}W$xBxR{rWgj-z@U zwSGL^p$}3}ROr}cmN<6V;=sh7FJ52}R>p2tHSJe`Ucf7WUryDuR{{NiG3RPpDj*lo z3g`m-4sZbQAmW~s=GWD>7|r;xw?%}OVsESyoa1~xS#ID_}HM~DQx_u6JZs9Yn-!Z(FuacpQXfF zQc_X~pkI+NLVt@T$K#BMYvQ6txsY=tlgU>X<}%3=pyY~BN=K!W++iWu!@^mSn(3&R zr{*BbBr}aHm0-9L;@5X7l}z_tiWM&lS*$QN8Cf(DaLTOm9hyu}`CUq<$33;#M8BIK z6W@=qNOOZU@0R9Yq&ecZBHlu2`lR`=G$W~qF}qoOmrFNqTO+=6*mqN;*(|@0_{uin z|L?r#?1bwI={_jaJ=!V0qxiLSN9Xr{?fz_pD8Fu&t`y~avqF5|Q8#a0Ccp1kF8n{8 zBGMhY=mlPnKdchz&XDDQLAw91%d6wdfh8%(SYornW*$&j(jx|@>@zUqewYUUCje`W zOnKkPOv%I8NZT-$bjvWN{B{`IybI==Bbah@1T&9?cS)#xldSGnsMD znQVUXnauF&S!^O3#|&-b*x1bR%=Ex`rt|_T&tc}(=dh$Z&S8eb=dh7%0#gvk?y1IvZhg;6Dfc zbKyT1_~ybN=BF@|=P@OHK1*CYpDC;7v*dO2nQ<@d&o5v}`xXHA0ybnq9y2uM!EYf; z+_#V!4!~3wvB{>zZ1}##?5yYW*|0h1vuX9`GxO2&*@y*8*qBEOSYo;b?QdbmHo#U3 zOS%K@=Phh_av}PwkR>+3JW#}j`IT#)Z?i4Q|xTElU>}rlfBJ$q1~QA9=&Y5+RKt2=w*iez07#H zmznCHV@e0$z;0$Jc##cV{UV#j_OQupFPrqhUZxbh#MF+LSX%naYzcb>AAEZiAAg&# z%rE$X!Ep442IHLVhLl}DHYiu$Zbl#sM;S7>3-i!(iGE z*!MGof&JVtYTwTdh6Q&UMt9t8Fn)BmVd(aI3?nAo3q1E4Ozb|xIj`PlFtpuoP;R;3 zF!G)U49f5a4ThWt4W`xy4aWBY2Ocyiy$>0Tdml0w-Ul3g$e@@WMw*8WNsqvM^I?P1 z{HS5r4Zk!fY@N|?q6OeKDkrWrDs2ah$~^~+DSJOR8jc<|8V-JCJewUgj_f#UJh%6# z@r=r2M$?XCi2JqCY&u~~YC2&|JaED|ta-qg)S(%Zc4)?gPcQW}Gl9353}ezw zrkr$>@uPJ3rJIHnWWWTdGfakCW|)$C0iR}?O!e6&BP%eS`B8z%bi!g9-CGEEv1#NT z#U>N8nvAakScz%mt0gAWn58CV&QjCpU)fBcND>-iH%XdLKzJ zq&%9CUHo){Y4INtl3Tw>Ji-c+pui&rFVRsG^yYdl$R}7 z*TEJXWTplB+()MPJ{~)vFm{vxPp9MHz1!d3Zm+`^eHxpbm#=Tey*aPX@88&drQ2`E z<*{fgQr%T><)LkjuRg@!)f8hrY7h5=H?bxtA|o<*toH+{mLfa#&$~M z4@KsQ5|S1q6(!XrZB4o*>6N5l($S>h$>%4xCEuC6Kl$_I^dS{P9vJe}kT-`+8`?bd zk)a<9J$qRBu)-8nD?58rc6({Am#Fu z>r);|*_*OIFZQRyz`^QZj?;O8*eDc8w2QNFg{ou<7j~+}u zH0jXlLrsTnIP}z^cMqL7l>Nm+U%dRq(JzL6dD)kDeEHdzBM;jSuQ}Xy_=dy3I{eh( z-otwj5B<-p|GD7E~;21r%_^WN`BoaHa_iIvjQ$OUGQd1RTYRuQ*j;UhuJ( z!Dar)USoe^ud_e1H`rU?U+=JY*?TO>xNbuF^cmBCz2@;XyVg9j=Iu56*L=R_g#X#M zK7Q+yw?2K#`1X*u$G>g)aOa1XPwxKY>%X0S=(!puUexw#FKhd>Pqcq(pJ|7*ue77uv4}67TiD36A7=$hFB^H*el{|RDN4>PMM=z4 zl#~k;CA&@8q_o3*t>RHOE3=gEDT?VjB~$sn!jx`hx*-7bMnzR_QqEJhDe211aQ{%5 zuH2$zE4L|glpiTM%69nO0sBvtdCFbN0%ZsA-KQ*8?uY+_Fdu>W3z)xz`D%vTg;^ap@Luz!L0N0ct*E0o}^M91jTBYq?8zxp;qHGrPZjIHbBI?7WV6mqm`}36ypuX zvy~f-;|w<&M~=GNIC98y2>+AOr0g@^ro3+4uDoTuLwVbHyRzS?j5}!jfpW-ri*nd_ zgYqBa^~zU>d(8NAlRnb&JdRGu{{BlnqS#PNKA*h0APdt;>kZtZi0O)U_0Oe zz*CcV73&C2vC4a$ruP0Fk(!nnjHf63hbYv>^{h5mC3%CpJQ?fhmQzlHkUl}>;e&zi3 z`xVnQ_peko-LDJ{+|QJr`>T{~@Vo7PWz0kOmnje5Z&Mz*{{rRF`^%MI-CwQz`u<8~ ziZ=3WowtOW?>fXf;x{*o^}?BQU9n%fKdTYp;c33B9egnKQ$j!K6>^_qp$MSPxId1d zqKaV)17EqsmoD*&I8%3vb)o?hG5yY!Zlhx4?zE6we5rJXbeoVB{cxq2)iMvmchguq z_>G6TnI9Ym-$H}Trm{MOG~*vOCE*fbWH!L%g)eUB;xF#r<1hUpW3<4x1%8BE{uE>K z=qYo{8#{jUDfuXdgrVj!_+3;e`sLv|(QiK;#loLm z?#EX?T=e)pbT$rt1DD(Q`~BF5Zr~QNos9>l=~e%52NZ$$IH>N!Q8eSQOAD!x@K^l7 z85letC)DRqvH>d-uV>-)5a`?*a4*=79h+WC!X@$Cy?ZD)A;t{zveg@H3-wTx0Y@c}&XZ6myk#vdfpwebA?)*9>{ zNe}uCpS04x8E!O-%eyt$<_<-Q48g0#jKAxItpz;sE*=aJntZAlo+zYSu{dXl%iO}H zE4Wcbd;Q=ex$*Pk&4ahQtK%OB9wQB}upylhKe+kDLAScN5Hc zfcgI)dv6}6Q~CJ+UuU@)QcYoqsYX=FzGkf%j3tA~jI9*IjCC+EGS(DDrBYF&WQj^O zwo)mwMI2o57`_wuRJ?CE3h-b5X#Icm=dgc>m_mHluz!3GG7nC{=NZ%By7_m4>6y9I zTxNnNj+g>Z3&|fq$j8=)+tJgOvn^k=Y;NydrZxdv=b%a8I;W;VrHm%^Y*mXUMYR+U zZp%?ylT4k`t$MXnb>eEas&|8ClhC_&N_Iw;X{wrK!&~2P4r?!NqvNq1gE|#WM;<)K z5KYGpLCqVc#UN@DXfcRQ$FvWgB4pYQ%I4s9-)!n)=C*mN099=oXB)co&EWWUORgMi z)vK*)W02BA@JK_kZf)x7P;JL1Xr01s_klFghSSkLWy-Xn7I4#aP}Xp&kk$X~gSuba zQ!{Q;s;*3-!h?kL^i~4~m^OSlZbBv9*>sYYnb0eE*p+JZ;EwZTE|j4<=Ad!_3Qv0< zqsl|6Q@dw|X~mNfdueVMqV54Qx8 zY`+wqUBc6w10)7$VG+K`qG+1`AV21#d9WV~|EDoAtcs`IU>>``35Wc8cG_kPqZHZs zv?dUhd;yXRoLFG$SE zqDB-GOk$F%dFj|hRd<_?;hdU|`DM{DSeZN8?Wkk0JL=dzxVJl~AvF9{Va&n|D9bR0;E~?v?jFs1ox=U&e!D+BWO>x`FUz7E!tP31##vUftZrGyvaw}L%T&wT zEPGn^x6HD<%W|~kJ(iDJPPcr{a=zuOmTz0GvRrSu$#SRVrx~u`F*{(XzH>Bg+KK=9aB2+gWzB>}J`|GRtzL<$acqTIO0lXSv97h2{H}yDY!3 z{MPbE%U>-|T6!D9`HZqGZW(KNm1SkiYL>Mu8(Ah=CRwIf-e!4+WtwHWWpB%VmIEw@ zS&p$BZ~2JjG|Oi#U$9(g`G(~x%k`F9EO%P&wLEC~o2B!CEf>pZ%NWZmEX!L~wX9{? zz_NwqEta=grd#&2%(A@8a+KwG%Lgr=w0zETf#utl>n%UB{LJ!O%cGX3ETcAs^I6=o ztYtaNYb>i<*0+qeY;KuknPS=1vbW_x%N)zQEhkt`wtUiZhUHw#Jj*vMS6Z&MeBY95 zZ_ZQ;nE%aRS2xru*iifIPI2lz;ry@qDCB0#{4PHITeJN!5mrG?NBm&U@AMpgRU=E(y;={(ZQQoo9R+ z3g5S>ziLpgUTK*_GKTBJcW6dX%NM_j{UXJpUDu0v9MulLOYj?x=S%T4g*OMJl z@$KRKl(D?Z^2!Io_Y)_CyvDw-qXe~>hw@H1A36@eSwzDkaXO?nuV?tLO89?`x_rW` zu}0kRqwIL{OX;4!HBYe3`M)zJ+vf0Sg)!6q)_(Ti+P`F*^T)X8 zZ_WAd=kq}(B#ot3-a9+L%)eiSM$V?%c`uwlxxrBs+ItT;QM7Z-t^6hm-7!xy(EM`C zA3jeg8Ok?bzAW;Kf#+sWbD0)lUmm+WxaZ(OTrv8$zrubYzhcoy+(nV<#r=AvB2H|? z%j{buDtqvqVYium6K;&ZDZj6xMT-=PiYi>VaG~IrqtBlg`~|-H{4PUgn%|gT z&PB5hwRL}YLN|eTqmv@$FCOTY*g4g3r&k-JOUX#b1yHm+fI1xaYb&?2rBGQg`c`-Lw5!6SeURO|B~c0Z{**(#C5B| z?<@7e@PhW-^pXFUe>t0;!53cGZAV(5N|yg`$84{a%AbG-!*Y6VSI7%(GsW-ug`$F= z*U`~#wCA2##q5zf4Zv;%7X||>oIgm*a;9WpHBBXtLjcBHVH$8YfDN^YF->{sUhr2V zLAbJZ^i@T}H_Qbs+p#G6^f3KRC)2u?DSLIR6jQ!g*tTixr0Y{F_o-9<&Z^aFx-}lT zuJo|z9uHoS_0Z5lSM=}kaQz}BF1+i;zCFj?P$~LnqttrYBC#_!sdF8Z z>c^rs%!DRfnx@Ly6L<_^b5(%UOcmR-S0hy&b#9uNoZ3F2ZAwDZ)K=|mRij+zuScPD zZkp5~rB%o9{)GHX-V)oVFtD)3%riCQa5q&7Lt%3WA9up~)UG{`Lky34wC`eXAEMTo z;7Ymh7LNoyAy-e*Rh^wd&2??*plOHp8fTO6hVOQ%sz-;q;i*}vX+n6Pn<`nd^%sTf zFTHSsKx#J)CwzuRt2S*Co3)}*j}27a-@(;vluO%$q%OB6hS&TyY1ckAyeP@u%A<$5 zaOF|k;OZmY&=6E08s78IVdKQ+2_2GB&$&&CNl9f=I<#pU*14B|S6S2c?NUZ3pRO)goJ&0OQKJC(~d8-u7cyK8_J-6phwcvTx`E~kn z9~NcXt}V-_ZHw@s1iGQCRohm2IAu~7yE1DV(HXHKT-g$BN|;jYl`rE;m~xzfzs^+U z%vc?cmo+pungq6qMAO#XVmg}JOgGb=W6ym#`aIN(Fk{U`^N7hcGtG0no;NS@dc`a< zubHL1mUGU3z1hUMv>lv7+iSis-nMBEKg^%zw23%HoME-lw2025V5zZ)QoO2&%xF&NJ>uJtb&2#4SdWZ8+A2^$w?as%} zXU;z7E9V>Mp!1z`#5v}ijmqBqRC;84BtEL)rN5zJNS*|SJjyJ`d5{*qg>bT;J zM3%0_G(0LWtES1SWwL6UtU4Ue9iaP}sf00;s!cgaqVI&%x_$27#e2g2atX__mRDGo zv#elwt>yKWH7#G69}ee=i6I->_XnzGJD#64c<>+&98q;6N4$BqSa_2LS3Bq5iov1$ zv>s`CHd**+alXw3t+?Be%iF^zuV-fJF+Fi-9~H?FH13p4)1$3)5+N9XZWmMS92`DB z^A>HW%JpmuzO3pwTyfkZrpjzpC+lDi;stkC=J#ZHm|Fk1R@K_sY0rP38ew^#do+6o zLp*cO4Hv?Ob#QWMkjH7MQqnWMFrQ&xTqv&NqUX6qEvUbngY-cyxZDWJ@z=u8r%-y`$V)t2%+HdX<|b zgF}#=NKQo(Q&EvMbdT`85 zbq6vB9AV{KO7JkbaKs$N?j2UetMPCYbntLJq9CYh&{l?cW~k?`u4a*4uimlDZ~cXB z{=@RJz2SOT+492fVRNEwt~w@c?q{2aTRv@>XSvSuOUt8{MRLOakJ#f?ML!RlV=b#% zcCgI0e8BQ0%MUE`=Yw5Y#Np-g693+u-`#)8v>se$!u2A$%w)j8L0NZ(*NbquNJ5jQ zd{DJ$+3M!jNp0G;OTMLjN@|CWojP~9wR(-3wQAR?dqchYrW!S^R?FtFd9|TKtf+|t zs`+JhY>Hf`LPdv1B`2NhBLw4&B_IFWy*qm;g?^zQz_q{yiTPs5j zwCz*ubp*?D!v4Qo7PcR{D&(EEyQa3g{BkxMpKhpZ<=4PLK7o%hU-MYQ?xq8M!B2kI zm~VMs?eybfvh$exnDe;vxc7v4!g+$LNTzyEnWvnm+$YVGTtV}sGu72=nlsHnZ)#+! z`*fk{&I~idd)9f@JQI1w@9~m(^CLmC&$k=*Rr9K|#4K^&aNqFsdei0Q@N!@GUU&JH^RD-v^Pc;jv$n`u z=R^O)$a=2iS#P$v+sp=UgS)}s?rwLsoA=H8?oM|n*SG04)68_&xVxNP?k;bazuVny zJ~khFAG@FUpK#^WW^a$b$6d_TLW{YQ>H}|++2n39Tih-F7Jq8gMzhhKT6Aw@uQ#>O z)WV;;pF8`^KJPQ{Gp;aN=q=FyaA9NtR~-dbXklcbk9+67_B;Dsb+=IedkcLSyuNV0 za2H0tbiU;OpuJDK$brZK|7-Va^Of_J`N;XmZ1uJ}Q;U7$e8acY*SzJC<=(gETUTXb zmt!H8Wub$7hYVk@xUV>Q?$pSk3%+-Fx!;?^4lnNq^Mm)J`O*E(`_4V$9PxfOKYKsB zKNbEd!pmXIg;qIwG2}v1y`$!+`-}67VJu#dLQ@MJbAC0yIyCveMg7jzNyp7`_XJlc z{o(v+{`CKJ*O_(hI`3qmlfkduviupFvaF%RLht@(fAnVm9&%a6yaw~y42yc#@LGWD zm1VgBUgTA_O<_CzKc8~1?bY(0_Ac{kc-MPXy&+zvH^A%f4f3*SU&U+Vb@h_|OMhpF z@c+g-dbfE!yj#6aUOTU?m+ajVjOTgxTUSGEPZql=UN`R!?{+UQc<=vwY$_l16_!%? z|0>GD58nOz@RoS5^8Vfb*zWJ${(JLdOz#sc4ZVtazj3JY3Aegeme)+LI@#!c;jVYD zp?P4i#4hk$#`>0bDX+!6F7@hrmAp9bdsqKg_kMB1*QMTb45vQte-G6(&3h{7>p53V zN{)BP)$5bMHU_5VE4?yael(uVTst?4S57dd>%40j&pdaJ`wXwi_O;Gi=dJQKxtrW& z=PZHOXu9XWEvI<8nB*=Cx?B3+cC8Y9_MEPs^roKE{O@JH**jsU@zgofT9ILtBX|De zur}Iv-!IU%37+63^8Yl3G|_$7UF)s)-t*q|)_AME<=)%go9x41_g?cBd3oM_-Z<|; z?*VV3H^IB#8}HrgjrHn!b-bEhHSbsV6>p4p%>CIt;?8#8@uqvvdvm=xUIXtrZ?-qf zo8dju2#ZtxDfcX>m-x$fiMW8P$MikIs>>Xq=0x^vuF?u+g#?ml)a3AweDx`r|!q@yY5f! zkM0ldckK07yQ|zpZ>77!z1eH!_401?es}+L|8W0uPrLja=Ae4CcZqko7wa|h8hTfF z7kfp#D6h0v%8T(zdKYqdwY+zg*T*aF_4YEnm%W#~dESfO3tm5uPYQ3OH`*KFUF}uy zhI@Uz)?Q2R4L<80=8DgUytnw2d)-~)_Vl`YoxOA~&FkWI@KU|zUNf($cazt`JLw*G z8|&gc?;Ur!`?mYC`;z;DJJWsEo$k(XpLTOyKDqh4p5iXzvtoh!xcjL4i2I=XfIA`h zYV)Ic+uLc%aV6|`-2KqldE&ILudU{6=7_@xCyT3QuW?S9hn%aOW?V=6KYjh>9rJ$h zzF~b>?XC3QVO@BQ2f@9d1{*qnqO1;x==y z;5f!*ZYj5uf#KO;`2+2i;4&G42?524y~; zb#NGa>XwvaGE20z*O(>Ng7xeRw>f*6k{lxa+`W|YFXF9tpLh4NR(!(R^RYX`UFF1^ zW#-Dr6_MCTbmW9zJyI=FB~m$3DRNz;V&vM$HIed>t0Lthmq*G*E{l|o#6&KRToft7 zk&sB_SN{hNoOqG_zJ9Nm$Z7vC|9k(Gf71WcKj9zufA^32NBp1sL;gYkEB|Z%fd7TR z-{0r&_P_N%_doM@`8)mX{zv{c|3iN(-!4Az*ZS}K8~k_u75=CG+x`xJv%l0|?632m z_2>Jq_<8;D|TNhEyD^2^7=6t$4GxHL;S@5*#DB(H}(~lRrr5pzq)ggd&1;8^H0C(RQAep;^SKO#6P)h z+=tvbW*om$20Ck;O3oCH1NSmto9|EW_4oMi`K|p;{uF<`ztVrlzs+y&_w+mZZ~3?Q z%l(c1&3=NP?GN#j{pbCs{pS8M|8;+k-^Q=z-{U{!kMIZkcl%BKN&dtBLw*&%x<{#N`+fahel!18{|-OiZ{jEVH~EeH&%7J_I(|+6I)A!%%KObb?ET2M%dgzAe8;N* z5AYfGD*NkcZa=rVThEPluXjf}CER`dVj1Zy;^=S(C)Tugvdyoj*PnjnbYXM+G(Y4D z{1uOhDdm(db8*=M$185@dix#SIJ!|bwp7hpdVfTC93yx?rg^Dzj&T%hS3E7~q)dU% z%f@oVWW;ukn6xWivsUpD4R5$}{}*3&xi#ppRN2@v=M1b?fj*0mzpp`;TT2Ghk=CPJ zdf}*HIWfiiUq7I1Y}wduu{CSi12Gyy|J)AVt ziOG%O;AW4qv3Hie{I&D!cH`6W)9LH##8Pt_mMN3g zWAbB;A+-7$^^xHw_xGoQa@$SS-fE3@C6Ic8CdCp z11q)ef>K{K-?}IFN`_Rv2mdjUh(xu*AOGgV9=9bCL&HXSpEw@x|tz+Q#<0`WS3(vkvNtd60V7dKs%azVe z&nU~lu4gc1f~Y6v^6vwiGc0Gp!t<{HO>)!Lsh2v8v`nc|rOK2kQ=#AEPyAaixod~z zumQ|_iHZI&HuuCIxpVkiuyD@#$CA5_znZnyt*NkJ;mTFHD_70QZ8D09%{_lF>vGeV z=hm#1o4b6$!jrjobfeH5HTwPV{=P=He$iT z&-Ui#7C4kyu$ST`a$`!Z$vsjwcEQ3U#Y>clS+nMvn6mU2lbg-tmAZza-J4rKx73`P zwHRuX1q&1FFIZSHe_18Q)VaC!6?MAY8WWSdu2lE59x=HY>=0N7>(G!9lc8BG(Klwn z!mQ$DV@oVpSeo^H!o+JTFId>WaosXOL*4!{kx5Sd3WG+(wre+TWRv105@Vd`5~It; zjvSOzYFw%4W{+HRF`Jb4qJR8PhPq@)#-C3Ws{ho5PnEgsso5K+JvS}!-mxDPFL8Iw zm`(RE?VE$4cDeQ2Yq~w~8r^SsEn`IgnKMU!yZb=@`b$6Az37ug)%#t#bVlOL8C6^S zuxQbup!-i2J+S-L8C`CDZPCovX42QpnHiB88)GgldO@)ZFIw^AB`apEzHa8m)iXD4 zUcGwXiny6q1%1uD_L)jsHZNYhW#5xc7N5#JRqxgHZ{+5_eN*oHO`5X6w9vx8QyX*F z=jML=%bV}z=5GA@msM|mock-yx!ZGhZQo8OZw^*>KZiNBVA+BN-=EUoVe+uu$Jgas z(Gq8+H_lyYR(h43T5e|(zI5I)e04A#Olt5-;k)r$oS}Tv-0j}&R&;vsJv+bqh3-Fh zA8nR8UED6*H=b;|y0^Kv^XkNv0QvnbI!}LfnU=F-O*qfgXgbEYqun>m0zTXB=3M7U z=MvLAn6hEcdmO#G&5YnXeLK#wo;x46(&yc7e{=pRd;2`&tm|~-cf})olWEPdu2ZI~ zb0jDaO-CDdt#c{AFuvwHonszx-gA=Nb&kfQS5xjQRGFr5N7*tyqD z;5T24d(3>p`SQLd99LmC+1+ZkIwkoYG(RYXE#72~61yhPIbg;*HG=tHVWx3beugRJ z)-t2qk?sh$g^6{SI4iuhl;{etpIgOT`Y-EDk@L)dU0b48xp^D|zmFrBfAJlx8OMps zyK~t>?su-Ext*KI5%xiRBYVh6q04@5S+l`;KPa=7obzvP3UkM3C+AkDo_n*~%*=5< z;f#N4=SHLH8fYH=mnD;X-nDt4`Q0hTFXSh=vMkRTXd1Z3gSBv@-EQ)jmhp_Sv(w*Q z&U%o?)diWs)KxZGXI48mv!=Y^JjH4Fer^%d$ZhF%r`u1sTeY8C#$@t;m47L-nddFD z7VbdP+`W){TVLm#!W75j`h;*>{@$6(H2~VGbyPWvUmJN&1-F9hxILVK&NF6ZFlDve z``z*GEw-OJ%)@E!%k4|KRxxdy&Tc1njp^_&WtMl|DJx-GI8T}jg5~#8Fr{#k>?6O8=v= z$1|+!IRe$&xsqR{HCTt9b7nY4xz44Z8*4t}$kqAxX6Kt1Z6)DL z>;FLGIu|mQ>r82mFkR_vtd6&%Krs>*Jj7bM|~=$#W98a_C{RGbpjo%plHQ^>d4w z=bdc~^&M`xtK#-_J~V@z+05fL<|gM;!vRC*pFhpdH$~u=f#b=bxsX(~hxR zO)UXx^B`?>M(kzB58C88*Sf`+`>R=ZE5LG`^JBYWt=&b_bo@&9DJRWMbAMo(F5^?9 zpIh1_yVDtF6>}F&<;hi~94SScMrNPs#u34YJH}~cZZ?z5Lkx*JWt`S#0arscq^Xyy zHrKHq%w-J2ZJX}ygY5bHxfhs8j;8f>t}pH9#+l;IQ0Ac>$2$7CSDL9N{KV|(Ud&wF z$$L>8WBGw&E-MPOImDU835HXt&KJzZ0&|~PXg+u9n|fxvxtF=n@RME2!Z~4fIIjd{ zG1`nYo1Ax@5oV3k$D}&nGW-`ff}?3o=9l|x&Tv!TPV48UAJbaTxyRjPraQykVQ!9F zh+1J5abEBm=L0j?eV?+pk=h%s=Az9PIlAd_X03wL)jS%EtGxY`(p+fxUooy$PNJD> zhu_DYMJcV~uFuBqN1W^Z(v)$&Fyok);%-g1v~!tT*)8EFIv2ZlaU<#y#`TNyni=d2 ze>c-^w{xt8vwKPB__I$+pFWOXMdflX2}di_N#rICDEklB-Zp z!$xzxbHMr0+2!1C^2|MEm2-#lsWXtwiB zIpv&b)VfgHt?pKJFQ&h}&IN9SibjfZWb6i0)P2H4Ifa~`%(G5y^R(l;M~(0F=1RT( z&TS57Ud=v^k6q@Ja?+jS=3~cmZ{X^?!{(4VXfn7K?{a4jSN1*T#4_Z|-BV6kcYwRu zeCXxBhVZ^#9i22i*POeBx#CGTHtYG7Tzu5GCwC_6b~rtVIk=Bo4_dYl0p~vFOneAW z0ngx}*x5WPoF^~yH0ra@X6~j7rF!Y{+Fa!e+h8t<<`WRC9ysQmAgauA2d#nZLfhssAM-9IEcTwpVqj zen=jxt84hUm)kz+JSbC2w$~uqQoP}uWoGnF>p8reF5uG4Q2f;Jn8UMGdCqz`{sJ0Y zG}lenx^WwM-=6*L?C1ixZb9wM1Nw4#T)N?@Wkb26f=%0i4 z!QYAk-AD7zM%x?-TXPO29G`}#@g23zg=~8&lM05Hf3f zQum8#u40>u*y(9#n~U1!wgrYq=T2I|X1e*tUVnK3E%ldU+ZVI_KWLjTw9U^H?4LQB zXPfgcy??Vn`#6U8et~A40NGxk+0emZ+kBB7{%PBMv28BuhvgG(n>*O)y~H*jvdiOA z+x(kt=7QSbucYliSe|2z*<;&>w*nYb(YBAV{a3Q(UCQ=vu%HcZLVY6Um5mpl5BIFZO*X6FK3%~+y2$4b-ICVf0b?j zwQXPC4*!^K4wgrhW1@4y>&1rF46p0j{6X0K>ZXtbH;263a){;XT4DEzwqA)Xwz-n+ z?{UkhEn)xPCxzYbS`xCNZSGQiZJH)^X1nnHLzYKk)&%dLcqHt<(xV|q+v)6J$Jg7k zhGkRBz3+s>E4CtJeajfz{wm97Ef-o2w|vO*ROxU!W;O`0ro;q-oES#5jRJi@Z@b7Awtc7A@c~G>DA!{XvY;C)nTq+#CT|LagHevhnc6n@S9X9W=oNw!=X}ma`fA`C< z|B{xs90=QAj(@4;M$5MM zhV2K84>`edw&jqA!}mY8{YnS&&CBxyZwmfS2g=Mr|{z>-w-)(j|ZMDm>U3@s)1$KT8-4r(8Yv1>5 ze_z`5tp1L0e2?1xYi|pe&y#Dz@@Q(yr@mcYS$02B)z0^!YGMB$%?igetZF#l*N=HO z*pIwx+pn~|KP`MexkT9CjLSk++7|X-yh_M}cKRk>6*fO)x5troJU83<+hM!Qu+vk+ z4ljQ@yZH5R_yg;N({-(#{!g}r&E;+RKb{zN*WK1YicE8;&KI|{yjj;Ud+wHhn zsqp>dL&D*td>r<_%x;HAEQj7?$9v}5^zi!itGQ{DIM?5Fo6(obZmJ%sz#kVw7ic=G z^&Vz4+|+$%5^IVP_2;(x>2?xO<-AKV`S;zjbbM{%!buRXfJHf9D&1;d{dJ zI=5?McAsbX`Q7E0#=OVF@_ev&$WBee;pN!(f3@quam)Pv|Nkbp2a>!AZ#Vsei7`}hgOCjIe9L{&WkHYnFOZl*Q zhvlwK;rnB@gzsNoA><8qJmcnv!@0-~H(_uF)hA^nWc3}wt(L8*YAJ1Sl4=y|6le!k zF@|Oi8j{hHI>WegJgiA2=&69y4Zp;)gMqc-r!|!&apT_K-^%Z*4fj;%bfRLK%#5&? zgaY2lXyB<-p_V#`I$Y8+^BW7ipE7(1w?e5K(>#;4Tb(o++KXSsLrnAFmt-5B>cj8I zgmW7iHa~Ea`t}&i9YCf<$4vV3cepb`AK%tz|lrZE>3G#j_M+!8`U;z0I!KhOCRoyiB*-vL3RV~4wfr->> zU9hQ>X_=9hm5|BZUV(*+IMDp6b<}~1FL<+k#@TLznO575dK|baVNgR*S5i-EZ=#+d zyI>LuHguvvD}jcH_1CVlc@+xwTh)=W>5p!*`iGyq_)AD*I^)~5Khlo zWr{is9B|Gwi>(P(H6#w)d zqd9j%d4uJoA!>Edu@shGli}e;`}bmMK6uc8ge)pnJF|h-42nFN`xMi9XXGyj4e`uM zK_zH3wq>|?WfWNN+6~R-DSOR$NCZ)m_bqWXesiJ?XRJH( zzwvu9K*Jr)j&}uDTsq!G)CKJL7n#1n@CO>IU@%t)hitN{JwFvIlQyZB(~Lk_T9pJ#JjagOij=&`T1}27`Ivly<2jE zZe(wnm_nTcwpY5To$oxJC6P-;!(oQ^&36m$iSL%Ao7W9bp-$|^t>X!8O*@*qCADkU zIw7T1Giry^jrEDPYm?H2>H*qxYs0PL?V1`r+_hUuDwPK`u3=JJQlCY$6rQX?!(*kw z?>qA>msoDH+->=_r70bDe}QEg%ZiqDEt^^fg&Ew*7JgTvD&Y!_ABpBP4rkT)XX1?U zxn-NfBThs|*<4r0-NL_1_>0niNlA1XiIfcfOwyS@Qz1C;ps!*4QJsV<@}7pQzha3c z9o*5i%35cFKh_`@*TPP^ES#VGRv*~T{nSMI9v6|TPK+KSg*U#W7Hs@2YJ9}OBdYJB5O z@!@9jPdA_jmsD~U()n&s9XV?Bn7hZ`bMLs|Dx?Pou&3Z@jtmt+$sge`m$YRjb#$yLR1s>o>f= z@q zQxcv|AG7YFvbWr<_l-GnQ^@>Pr9^ztJaN0_yCKc~u)A$fh0XDgit$@VHwuP3apxED zz4Ukg9bx+&cg3frw!e1Pv>U@_v;SSX=Wl=0kQL%XwzLeJ_bk zZ}n>GuP1Ig7!)tM8XThL?xl@PF(-MlxL9_DMMnkfz2 zyx%s*#_QeqVXedWlYR)Ajj_|Y^{)8KZ%uEw?{pjcerYkzmeZ=!r+>;XFJrzAe-F|= z_-n%_eh}M%y|{Qx5nw__o0I`8tCp%qpCsmtuF5Btl-(oJQy#yRlmv*)q%i0 z`EhX_`vy;@4!+C;J!hor=Y}5Y*@N#pL*ml1<5aCeIFw+Z{CB25K7O+qR(_wu`eygx z9{2Q&xav7q=cv05wjO}2pgvD37U0WG@Fn8R9sP0k{1l_C8cy}U_t&FucKATU0^R3N zSNvz;{;T`0kX2Q8Yg&F=V_GzA+90lCi?$uEi>qC5Mb7Wyf7}0W`TXBpKl0bZ|K)#J z0(?1YtuIJpqf9a!cPU?L@yYN6C&^0Vri3x=NJVu6dz0$8ct5F)i!YOUxVVJGP<$mbkc$B;n#7l8lSrkW^eeLOSE(AEYZT`kbKaj*FL&bX>fW^ufhzNG2{;Az8Rs zn`Gl+Lz07wO~@!*9IN2sWHKHXXOW4x_#&Bvi!YPOxcCa0f{Uw3E-rpVrsLulWEL(S zC3A7ni=qAjTx>w{aIrC2ii`1NIW9IQt8lReS&NG;$p&0(O*Y|T64{E2?Z^&XOeVW= zaT(czi`Q_X^B^u(C&zHH899!N9mq*s%qIRlQ2`I((YRQi6QU(>u?{JXiy0&q7srtb zxVVp0#Kjt%+^md?Ge~t@tiVal+PGNr3Z@Ac4`0c;fs1|Pm?m8Or5wu_7b91(d~vY? z8IOxMk%_pNOeW#t3^ExP-y~CT@sjc^UtDZRrsLuQG7A^CkUU)6L6+d+A+i(~y$UQ- zT)dpD#l_pc87~kkUU&0 zTE&<}xcC@Zj*G98O}My&Y{kXBWH&BWtID###gSw`E;g&ivcSca! z1w4fNxaji3G71-;AjNQTIVp{cTS+V~9w2eJ_$R4=i&xZOS>R$Ksg8?xliIkrpVY&} z6QmI?M)NGycwDSVn&Dyt(h?V&k|bPgO_FhOC`rY|(WEmjK1{me;#|@l7i0K&l#Yv6 zkt|%SL9%hNDapab4rCNA_9kO-aX1-|iw}{BxcDrYgo_KwWL#WLrr_chl8cK!k?FYj zCz*wd(Y2XwT&zmw;bI2K!^L~aQe50jmgC}=WGycKN;cpkk4iL~aM7*9a>d1HvI7@a zlij%Z138F`C&^)4tX-G=0xmvJPT~RasPS|I3*Epz85h$@X?`Tf>;Nra`2N!e6C|uk} z#^U1S7OdyESi2?7xHyJP!NszzC^uZ()S7h|7k7}QxVVQb$HgznDqK8B*5cw1WCJdi zPhwcOSdr|&#mZziE>h<)=Fj@z{Pqb3m5B?Y+M{ja&YlIG9DKX zktw(sa|`8+i|ffOTx{5$^#B)}lX?=WCy-{i_#8>bMgLaH85f@<>9}}=WZ~kUBpVkaw^7cxcrO`+i!YGLxcD=ff{XRL zvTfkvV`MHazD}0l;(D?i7t7qvx{Zr*WD_pVBwKNDKG~0pzmWsD*!T{n8y6oT$8hl} zavT@ekdwHW(~WYT7!~ky+{eYQNHi|i?M^x4;&@UT7Z0bgAI8N>J=m^r@eWcO7e|nK zxLBbl`y5<+g(TzRYSJASpH62#gNvNrFr#qsGcq0*+x4P6ad8cqhl>yPraW=6d>_gX z7vCdWaq;24loc+<^#`cSgCWraO#ld6~ zE-oXxak2VvV-DitgX9=4P9f$&h6!IGJ}$mais54G5v&8a*lZ;8i;Mk6v3zmy8PW_F zw~=IA{El?R#rC6FzPR`>$;8F&BnKB0$MAW9i-X7%T%16rdAPWWEW*VV zcT*;~xRET!1CFITd^v1*51$vfIF4+>#V^SYT%3O|+ZQhWNe<&;%s9#r7wePbxY(JP zhoSHWrbX=T3=HcQ~WDzbdRd8_wS%r&-)QpS8CbRFt#XHGvT>OCS$HjvRE;fCP^1;Ov zVjgClfjvnSF1|{lad9_^#l;h(0xqUL&i))1b4Wd0oJZnu@okcXi`P6sKe%|9bjQUO zQ`n#5Vh@soi%*iVxVVOl$Hj_MStoI^*ORP&xcCT}hl^WD9xgur6lI8u#d2wfi`irc zE^Z^cak0@fzVG2;Te2S)r;`J?822>WI4*V~=8>p?Yw;*t{DPFg#TL&{hPXJ9RK&$q zq&6-_O=sM=Sb;Rd#YUthE{-NixcCI=ii=;9?zkBJEbAdIHYVA)*p`gK#c^aTE)iHn(J7A`I&dAN8&&A9l+ zJjw?bkCRQfSm!0yTU=~McHrUyvKtq7kv+Ir@@3XlTudj2ad9s>iHkpz=*fKlg!Nyc ztZ;E2DUFN2kczmtG>>f@7e6COxOn4y$_*DMkgm8`X93$aF4kVcc8!aD$#`6xPA1{v z4l)@RcabT$c=7A3XSi6K%*Dk!NFFXeMwZ~>e6k7`Pmr~^*ys(`H(cyPw&LRRWCt!r zzeyS5;&5^R7iW>fxOjjZ!^JC?vh6>{v3htb@o_PmMB(CMQVbWHyu~ys(C*o#cZ#b?P}T-;3ZaPhg7tP{AnoovFza;qp$TpUOa;9|?wOdl>bTElvXi=U8U zk4FXUvX*(r#f#T5kGS~8diux3%nj`8aPhDA`Td29<2JHy#l^iO7Z)$x%=F`8OR@wP zCy?d1_#WASi1j_1KKyV$;PaUt1&i*-I`9l*trbO`l z;+RIbIFKaa;;W=HF4ijKm~>p6L9%i2+QN<*g^Lr(BwUP-a!f8RK1Sx@Vh3(|U5<+* zx#4vaE`CV%<6`y&jya5r+sH{=ti=tkQMpV5e3F#F#iOJGF81K2*Xp?VEUAr)qqtc$ z9v9ytNw}EHO{<-8aSh4D#hbZ#H3t_Dk%_oi_!7rV!NsFwIxZ#_cT65GK0ub^;&)^d zE>0`qnBBP8rKDpH;NlE&3>Powrq+|V_*7};cN)K&;5Q@|7oWI{<%o-0NF!W4Nm}A! z+cJ(x#l`2jk+eH5ZsR7>99;aA8%QVN;x$)N7Pxo^nTw0h#yMsYE_N*En6o`E*pkL_8K3pClD=@q1Dm7Za{^Ofy`ZPEv8P zN=4R5T--piadGx_jv0@O-&JD1aB*N|)#i**x7cTxmw&LO|)f}@27gMS; zkGQy;9Kpr$H5_vs7n{{$SkG|02(BQdaj|_J)=ymQL~7&WZc+~yza%Yj@#ea$pSU=f zbjHQqq`SI@i8rvW;^J^J3Kv(_qug=v^7_m>E_NcbaPiZItgEYP#x`O3;^Hmj7%t8yCvkBX@u&0o0y{NzOfg(^n^7jX_ywtqi=|tzZQ^3* zB!Y|gkStt$lZ?W}m^REKE>0y=aPb2&3m0!~%RJ)ZrR^NE1Q%zMRk-*u*?@~wYht$I z;%u@<-N4ND?2B;mIbxpW`yu?36vM^(Da->db|)2ZaSEx7i$hXb?zp&zG{eO)9UPO4 zi@%btxY)9zWBTCY36hPAr#rFE;o>Kq83!&-x|MAf7h`T?9mT~iWCJcv?#ecci+jm_ zT>Rs9<`EZHbz|Ah;4>P2M`CgDcu(dF7eCElpM#6ld$T>_;?pD(7vJr}eg+o{4`zAc z;_)FYBV4>Ln{^Ktdy`eT*mNk~YBlq|=^tz<1O79LBv;9`BU0~d419$Z{O z4&vew1s4n7!}7qz#l+0wHyvzyFXe)ZeMkjde3n$k#rdQ*F1|zR;bQS|loc+{C-LeA z79Gzzjf(?FGA>RaopEtC>5hxbNFQ80Lb7o2+WVL{T)h2$_6fN744I6J%g7X5tTTbn z3|xF{5@m~vFO%iCc4+Y{JDHvIiI6B>QoZDi+OQTzs4y!^O44%;s1b{Dt_q zc!Cte#R`v7wzyb{l*Yx5Bo-IDlM1*vnpDKalhY}GT9!BpWxzkWIQf*AQN%%cQOeVN6w-=ad94*i;EwTJX|a^n{^czE0U$SSok^0 z78kD|J8-c)*@KI7$$nhSBZqNuCpm(P1Lv@=;$qedl;?AtJBAm%NLk@xMN%0TCy?5> zc+*R)hqze$WwujX97WP`aV^Qh#YL~M>~XPt9_53JMilv0QPn%@X!ebJ#z?yGTV`JV>hJ;;h%1FI2#TWFjv9Kyq=h(k99X7h98gxcE3(gp03|CAfI`X7&TPIFM|@#UW%jF3uo(a4~8N z%N`eBBgb&j|B&T~izA5tJm-JmPb3-_D{W&N$Hi*fS&q0kf;3b2u<8yzQ*iMB>5Pl* zcCoJF;yN-47r!CnadGs=Y_qudImyMvnB8n+xcCBDgo_P6VLQdexnu(_mj0CO6c^*k zeq6l#GuB01TuYAQ;wL2P1-^&Czeq7$Ox?qN}VvToqw*3TW&Qt!hH_puJ( z;(C&ai!;AuesQt)SFF3ZSmJS?rX+@iygmVnd0I;as(H59%R|! z;+uyU?u+c_;dW9H7q9(}eG4vLc7*B2#cxShT>R@e>nbjOaDw#{7t8(0^x@)Y$2CiE zv3eobY{JDXasU@Mk|Vfym>kE&Qbk-25O7=q9=X6ZrEziLMGOlUsmju{#KrqaDlTrn z)HUh2Shcuoa&WOD8IOz8$Ru36qJ(R5aj_AZhl_ubMYxz&(lx7a@hP$a7t6)CW-Bfp zA-i$$@=~rjh>L5;5nQZX+BGL}@f7i2Vta?zU&cJ*;yx0Gi{D@6nu@qMyu53YaB&>z zjEkp8S6nR24TODgF^6R0;@xV-#Z_b!E_&CwW+E;=cD-xn;^MQFT(cY(2UK>=4qU8J zh2?~c)v7TsxY(zLYf8M#cPIEXsfdePNp)Q8SkpE2aPbgnhKuEExh5GGe(f zSYEg|J&AP{7q3sI85gg+g>4EKA0wM^@y7P9*@KI}q_B)|u|+D|Ngm&e;7(Eu7t7to zG~;5c9xNAJY}}J&fs4J;S+2OayN_$e;^KZX9T%_Y>zY}(xRm7K;);H(Ke$L`#%3!n zmKZ?U;$m%b3>RM*NZI1z#zAy9pM3&6k;OKHi~H|nI&twdNyf!mLs(~U@%n7`FSyvA zjK{^ep=|HC_`qFEKQ1;N#yXFS_mO$H*dm8=#>ESVyJjseZX$bdvEm5U4P2Z=j^W~k zBPsI*bPum1#c**1DS?a2NgOU7Bb9M+&?w3U7hfXrxY%km`#N0wm~_U)%rPt@T)g{k zwrgCxaxB{jF1|@-;o^(qSw^@x`ab3h7oQ}%ak0hylr=8iNsi&-1acA=XYzO|e<9lx zY%r1e!o{CS1zddX0ppsZzHP|F`bLpE@19#${ZKRJjZ&4iz4Aie`% z3v2CWnsIR^If9GXdnxnRSl?jAex?%_cO2mJ3l}pFQO`%-;E^hgSX~xC!N7?7#;!|W1E|&Y1a>m8gWGgOiB71PL*Kcf_xcDnMf{XKyGyO|A z{s5Pg(zy5uiN(b^C)nrUV%I;IFI;T)C(9cbKPRcUc>PJ{3m4xenYdW?6w3k^N0RZl zIO{L=gSdE_Ou@w}r)h_aeIlNjhl|q-d1e(Z-ci^yTXFF#vL6?}j`GYAT%2){XZ+Xs zZ2}8l?3q|xypL4J#h4h+#N*;Oq%$ryEajO@Tr5}GGdZ}piA=`DUa_8;i;GpS@XT^t z{435gJ8M^QBrbMMV!qyFJ%O*^;+bN&SR&Ok6>xDlX@rXvI(a4u7r!IjadB&B z<`EZncJa)3Tzus=&*b9blU<7{hgFQE-o3xbmC%*(Vj`g#p}l~ow(TQZqH=l;)`S~E`CSG<6`PPtTVXyDw&0g zRqkW@adG?olsPV5zlbu$#S6Ew&fwzHyF3&97T=TM4PSYtA}&5j;&E~C*PdyKizUBh zea6MB4>Fy&c*FOsGq^bC7p4anM;`UeQd}(gJJW-U^G+~5xVY*M&m66-L|i*;)=&A9j%nT(6o>-c6mE)FEKaPc9Mhl}6e=$j?Dxb!C9Y{JE(WH&B$jrYxd zTzrun#>GSAI4(9y@VP*N-`NhQ#$SPcH(Vk_8iw}?;xL7WQ`NhR) zsmw1fMtAhhNnCt_lz4~l0MNai<%o;1q#iCVCGog;YAy4Ni*J6!JmTUf+k7(?7w_8c zn<=YfI!hV(oE{;Cz zn+mx2F=>R0vA?ig;9{?+h)KuAE*C}2C|ul6rr_efiz8+pF19HZF{^O#1F{PvJMNB*{ zeoK;ZF}*v}hKs+GKDe0hIMa!XJ3eDNaq+%=5i=JTGrx+M<+ymu0lLG*5#%5)?)W-l zj^LvChGz)iV%2XW#$Qdj!RJV6T)f~A(~SQ=?R^b=TvfI2nk1d1rG+V9M!{zQl^|cC zd>B9>q#p(;5YtMFBFQ9~G$To7n3=RGeuZ4*MZIF|1C3XONt!finl^d8s1;E{`LHV2 z7ZD{tpGxdSUj&3)^qnbFeLF;x7UkKoej5Jah(4eB=BQxdSxu<$r)}K@)fUJ8TP@_@-b` zo&Zh!a&b_e1x-9z5|lrJChk}ol+Z!c2YzZQ`f`j1H1XYU2}&9?@!4kw<$ln_-#IrZQ=o}|c79N1 zKokG|!l2B9CO)<*C?${Lc?$4LfHKg;AG!*522K1T;BBCZ?^+v_8qmbw0W^RnZeItR zgC_p$JA#q|P5i+c*dH|UeeZ;>pou%Lf!#q9-(8FGgC>4!BkT{FI0~2pO?)q49yIY= zn_+*}0qzAXe+<`Fz%KwwK@)#70-J*-UegkkO3=j51J-~hzH19&1~hR^G$=QLCf*0Q z12pmb-Vgmi6ED3bC_|u$H@CsgpouSTM?8Zje($Y8nFUSU2`G6SV+0;bAvQo0KL;oW zP5f`2LAeMt@z6Ht#yY?+12%&uuIWNNfF|C0M^NIRiGO`(P)0!$|LkKynF39G*~j5) z(8TwA3i^O1eh6>`H1RJ1@=ct7fnWDo=n0zmnEi+W(8Pau0CodS{M^@IE6~KRJP2EX zCf@Y*ptOM|{^~kpMIfeKHO?)Td3!sT(40E2-taVR3z~Qga4Klxj+r2yO(BN>KLt1kG;zUUj0-ez z2(TVB@kxMM(8Lb|Hi9O86wm;gxc;Bv3(&-W0g;q1?54|Rlx6g9&-eA1Moe7 zIo1cpLj#!yO?)cgkD$wdp9jddaULiAD~y>m@Zd}EHRws;FU%t*L8pPQ{Wa_Zx)%8B zfHk0}fUo=wYy!Fp_!&Sm=vm-xzl9w@cLU!CNP$iR?+0{&o&qlVSL6cFA>aoA-Q)uo zy&ROkCm(ntpdWMt@SgxfpyhYSv4Ba?wZOXo2S85(-+TnVVSV5xz*FP{e;F_XdJ6b) zz>i7)At;vIlHKohU~clZc2@oj)KXyRW0#z7O`^e4n8XyQi!Pk<&adj;}A z6XS|p=0FpF32+27@zy}Gl)x9nA1Nr7QqaV0Ma5D9nz%n$EH$8s=K&3%i93%kmR8V5 z|NeF@5LklyzN-Qifn`BiwklY$q@gHYSX(fK4_rz~bx}oOLqR-Hi_cXS;W={;FifF9 zx6{Xe4IC_#V0A%7pux~%v3^;<(W_rvB*k@w6$K4}_`(=CrfSIYlgsks9evrh3LPV% zm9K>+%PWp)SQcMeTQU`#E}AXC@4Exb@qUQKRkl3cA=fn)Q*Y|iXtdM%+t`*vU)90K z8k^;&A5A+@=AhA+S!UW*_igg1^D58QW;=5%&J4V&YBwYrOy+jd$^C%>`!`Np)XpAKf7 z<;AkRx}>7GAsAm$TQpTL4cpuPu#YKM>ui_V`G$4vF_?A?EtOD@J+sh8$0OSxi))Lz zWfe;sO5(+}!KtF@f?4NWw{@}YymG0m3>+`Hk|1B($!_n`oxCF4Ppime)P=S#zK&Ox zah%nTak9(?+LrU&S~v1^F1PKcb=GxFZ0Z$UBH1&R z*Qd@YW<9e#X|t@bP%@bcd|l6uJ5yKIvGp~_r*$`Zu0AM-bEwgpLs|z@N4r1vp>w0z z58G1r9vx-gnCv>b4~^NE&exi!WtsVsaT)hyYTE8^*%Db6I45gUU5|4ykvoI%+I-2_0F|e#Sf1c`oXty52Ca1G^9NT@F_R{{;^T)>87aYSXYYd#b z$2;b()<@$LmSMNmmHF!gzZ^$?qeHG~7y89qzp?B|@0@Jbqo4H{Nz)d`8+JbqzugU- zBxaQ6#Tf0S=dwvtp4pdKX2ykWH#3iEdz(74Z3SdgK0(*f?aY2mTG!KUbgndYwC9>V z1|FL-P1?4(?oZ8$!n(f3tmCJPD^7JgQ!le`lh$=jo^3O; zj56ySYeBP)pRT4px?gQ4zhlieal%{st^&6E((*Jm^)h9!txF%XzLsIvW1QLjYT5J^ zWi)zgVe)l-GxzFxdY<{^23LI8ecSr^jm@lQj#KNdvF_9E$JSZb*Vr!Ca&$TE$@83f zT#aL0PnYx9jzL|=*2x@`Nwbd~-nF5o?Y5jdJFFb<>X+^5L#?02Y@e{&n|5`L!_?7_ z=6M8H#S3=PW7l@m`O+SbYYng4+I8)5y7CCyn&UC`wdI-hw7qoSwjA1ze%IqM+v+yD z4v%#`KkRC+!V~te~e`7X>+v9QB((K2suk|(SXgl~}v#x9HsN1nGGk55|Z2mF0 z=N>pAdrjizetEZCw3mIrbbh`ylOSTP;_g zV<>08y~aBsca7)L!|tE`xz?eyOOJ64qV@NSS^CHBkNK1Bh)sX8o*sv8Ltp7WG_L_X z)9$vfT=UhA3BTAU|DezMTl?8HR&yNGH{p$uJ8h@={1;L*VNIZ z?RvB=ZEBCvj1RlbpJOAJZ5NYimMx~QSgjN@0xYgb?#ZYIZ&PR*JaQ7wwz@}vaHqfrD;EtX51Zi@}oqOS7%*FSBehA2q;7tZV05@@>1@$1XpazP8J$$12MfwypJ?;XJVO zn`t-GRvf!a4)d+ew{erq(#uWY;)) z9bwkV_#>OMUHM=4YwBXhv96QB@r84z*~S$cE}mNVoshro^Sh^|$78OqTr}g(=2PD~ ztouygXr7+arhMDSt~fL6o8vcWEj!a!e(X?2k9Yk}deG9HbH>!!o-aJM=SRX=pZVnw zQzrY>bJgZod;0jD1O0rZ$IEs-jvPjQ^pEJ#A7*=3J|SPXv3=^w!}QIQ-nzlAPg%AN z=pR3Svc9&DP4oDa<#I~vvA9?NhWvcTb~_9ou#X*{UV1zlyT+mWqki_i2HlQW-~ZCQ z#r#E?9Dk3On|Q2ctSFWhftuXsXDSa|;~txiFZNHFI@h@RryqKZ^BirFFxGaIW$LvU zt^1+wO22pI>*pGaYrSm82XoFrN6z7x?6sM;8}+c|`1zCd%=10_JM8Gs^&1h^?Qzs4 zzuLif`GIu@9d-Tq%D%77x39~Vrq9gzq~lWCOXmZPHQ!}J^PFeO;XM+4tYetG<@o(A z@@&qU*^C!Gm+ii^EUkyWXT-&37r^bm2FZtwEd<9BW|C$vW%0 zM$NI4^5>YVF76Kj1{+@6+=TkUTX^Za7Z4?S0lhEyl9}>z+H;CfXjR zzfD?~)6P$N`O7c1s~x(tJ^P_$x zX;YJ?ZwDQ*=#t@A*DqGdcg4A~vtvG*V{qAMmE~_cmvCGyQD2?2{qm2iU&^XpL>AjDHa4?g=CBgH*B>}B^P4rsTn~7Q`O4*Q+S^=j zyL6;Ibbc~*F#YBi3${P(m}mK*VS5!L-^tJaYJK*m?D|aAbKFx<{0;f-{p@0n!4-RE zuA$8-=b&TW*fFH^aGXoozR}U1eAk?zPNoiKtS>eu9iKWUF}4!cJTT*2*IP_xkC(4$ z2Rm+TKT?j%PHd}U*P3&7oG=a>t+`^`m^##;!8uC!gP!m~m7;)y8o>W7^ct zKQ14bV`6#2h*P^h^*`(wpP#*yj_2o(OYtxE;XCecsQQk3F50fP-izt!@(=3|I>x2? zb?8ICR2zO#^&IChS1wTV@0{HE=c?ytQ}PcwboJxA;@ibjV{pvByqI&`BjH?l(#p3= zp3gbMw4EJeW`DMw{mzRVd$q$Re$Vp!Y{j`?p1;kxp|4jKYpe67j!U-JJX03SS9#}T zvs}}D<54zsJR@NJ9>@4~KQ=aPZ0cz8bsLVm8oAna?$I_e+nF?F4;uFr4;piZI=ki^ z+t+#LX*J$A<>v|AFLh*IJ>yv18+;4y4W5O28JqI!`^C0v9#H2VPiN|Q*kM=dsLyLk zwoi^|G{&p#>E|m`W}XckKDXzF(!(*|6#qgWn>fxNE}Qu2tYka#GIcY@uIf4RqhEW) zKi5ZRhpnk|k9F=>G8}dNd`g{r41cNi4!g5`qa!BBuXga6vy`l}^T)$B2OVvkzIBX+ zxwFnVUz;&x#xeP;%sJ)onbPqrw~m7j9jUvE&pffiIu~%h^17RP?C|u^Jas-?m3uz4 zuk*Ux(XYpnA8>++eadVC1=L0|gE52VWJLaFCov2%*6|=TKd2H%xAKP|f zUyVM#>ha+p_TjtgQ)hdPZO2@rk?+m<#CSaDm6>f8qjwZG@Cz8~T9{*V>6*FUANO5b z`?WLs)#njA2e{(LoL4Fq9P^TWy6mUwJJwH%e|i4gv;E7ywSB37&Uw8`3#r?R_%7{A{nsOZ`lJUd@)KU2lAy+&J?Z zeCz6DdB=g1OJ5tAGRR~5C*cc??f9l$dW?BjZLERJ*kLZLw$4|kOGC_r{GKqs zNBsQy%s%$lSBaE^UjH#!_}=t=*JBT50QdRfK6l*H?nBV+-RNTr-~zyEfZn5>d$OO5 zAkeLzn0!_?vtp)Jzlv7`Ad*JcMbMN#~jl8)AGBq+#mI+b4Be##yxYm56)BfV_#}~ zJ2`~*+>`85wBeq!{D$=(aLv+tm&k?SU4wFdKbGHx{L$qBnYdQu4A|xg^z&mt95&%T z65KnFd!urXQ0@cEee$^99rvDC^BU-bvhSTF@-W~xfS&=*gCF=!N`8Nm-=pN7uH1u_ zdxP=&zWUp|{HAXqY;*5_zo{~@YVsGq^ zV6QOX1AuP>xbLIhn~{4la^FSnhsb@_e~NzecQ4Pc%QM{_lei ziBxPCxeT`EUQ^stk^3hed!NY1@5TPv0PY#jy%V{&k>0zg9QC=cZ4Y!Sge|z|2lr0o zo`XBqVvDRVA(rsna(>_ZO!$d=>GE5m+>e)g>2iqZ;=A2|vjJ-XHv_fj15Q4*>1~>;yajcpUHpz%KxQ0G#-1>_r5q1grzR2hahy9dHj|1n^bB;^mrm;w9> z5cpSoR~B$KU^U>qfLj4~0`3Le4|odjFMyJlAs28i;BvrvKr`UOfKLHF4;TY{1@JAv zGl1U!3V(-h{R7?zs0M5TbO3G#d=@YacnI))!2bgL9&p?d#5dp~Kn>t#Koam#z~=z> z1HK9PG2l0VWxvPoZ2{*2Rs-GxxCQVbz^4IYfX4to2D}U?{8z5!PjTVg$VWk3dHrwqxk?2-`~mEAHXdt_Yp%08KpN%`-xU;a_<$Jb}SEMJiW@>O|2 zz9tXK*X0}XkW9(La!?+TN98ejT)ruX`Hnmx|0Lg){~^=zJ$X{TFHgx23jv?2f1=$k<|N z-P9HdC+cY*#71^7x#Lhr^;=ghblencYYV3ksr4O^NOL4R8oR)-H;OvjJ948-^KuMn zGV|N##)wz9Ih+bNhLe%{oH%e5<_m0&G_|F+$Fru^%{;!NMQ-SO_08bVvW(#Jm@XB` z%kL+ah;E6(#Aa-JLX4vPcCba8+Z5RnM=LW=dEHo3Mspq3%AGV#vG(?8s=hTAyTyo^ z_IR`nfv)0aOT>uSm|4=9%!#M=cpGv`44K)21Yj<)T&Jmd<@vGz!NERj=^OodaO+2p|)6;4Fzw<6pY1V9T$ zWm_!V>^RYRrO8&bYp!n!H??M69!VscV$C_n?a8daQH(>w$Y3N>*(4e1iZo@l=!!?t zgK>;gE)rOMUMD;kvmg;kcDAKp*=8ea(yBCeDiO<`^>LOCw?%KuD%z5W|(P6=ETM03?ZV#4S;u9t&($I=YbKZJT&KYED1fbzQAG55|4gXM%L+LLEm^Hf~8PaG4I&u zYJp?+=P`3xF~+tbIfkWdGMTsZNMI=vYwtkOLS5vH9LsvghJOq%CHH<9S#_NpS6MiCv{8zsv z0{dW&AgO06Wz|>Zw{}Kcg@_2oKr0qH=x(7+hMk)mldYYp=GeCE`8U}XF|KKn9ac_A z##*p6iG<_zxe3hT8^%b+IulJ1BTZrfo>eLLyaEbzI)%L}whjL~_HUGZC$CjK$dX!WhZJ^e{|M&cbD0wjNGh z^*O^+ftq`9;jwbAEexJ9(=%KvRb-gvWL@AG`ek@HF-G8>`kd>COi|8^&9d@(&&*FTk~CHU5sBySO9&m3gn21FFGn4LOgc6Q{m?NjE~ya~f~97D%kS}Go{|Hy8O zHf592HiQYUJ+Xpox+NYn?Z={5Wt(RsHpsb#*cR=$a8-SKV^gvo_e(lcEtLx)ktt$+ zXvPY!DP=BEy|SFNkl|4TMNy2Wz&v23lIf?^!{r{X^za%F*Lk?X!yO*J&BMJO zzT3k?9-i{>jECnu{96wfEY0+Pyobv@e1(TMd$`%dw|V$35085IK@U%Rc-F(e_HbyK zH%)3eFJN~1GmmTBv>*2R}_%aW#^Y9HG zzS+aA9!_}pgC4%a!*_Z3GagQRc+A81d-xk3KIGwP5C6!+&wBVp4_*;+rljN#IWF4+vuZl;LS6#Q^YCNM_&HM2+>b5za9IeJ`H>Ijv z8;-|u!+Vq9Nm7=(3D0xZ;2Jd*S&f_TQCzWXz)FI*_I~2=DSne2k+r;EU{{i+z`C~1 zWGgFGceY?9oD_L~U|lTH9!_10OJzKqL604Qb+|BEA8ky8aqHlp0`G{VR(B>6xCK$0 zh&Azw`n&nOtDEIXgS$~J+`*KelDj6FyoEwH#IYXVBrlVvERjkjqK&wlkzCt_o`0Xu z2lo}t-N1V#%L>>Q4{2({sn+Xo>lrmdCGN*#8V9Uc<%94Nsd94e3m5}Bkgf&h2DnM zakS}{)#{Ove1*q1WbRyXs6Q=Wk5{St5zi=kHEuG8u}+=M9H~ga?<~~O8eAJCV%z0e zbwoqr*D;E&i)3Uxr;e0?Paj+89Z+ zqUjQN~8&7X;HW_mPpCTMZ9%``?hjv zQHz=zYl>PjPbVc=%m4j0n&uvHHnzeP;tzCcND)sXN zSmZ?5YABN6;At`KG@7wJA0cr$Pa7(dhP1~UGz{~nI29DIE85Wo4d{{r~68h)Sb zQ~!`%9nvX3?NfgSWpfovWt2bX^ZxoSWnRwyjpFzw=%W8HCMg3{0r2Z{{Et7QTy=;} zUwP#fX?|ysJaI>ny!7pl%J=R*UY^-|vpn=wZKse{6A@dko~vJW?07o>o^oD$ob1FFDNqqR@mja z#YL}H9(a}ZuU7tQ@=>1KgQXuoQJGUAw|qq)P#DOmkXw$jz_B?M3X07?mZJlshrIG2 z%d-`7%ZpJ|xFWD*$wCFYyeQLwXgAvB5TH8H0t%Mo{ITyqQ2n2gV3jXnktx8xJkx`# z+!Rm{wEoyZMgb+jS#Ai(EBD$`3JT z&=Oc~%`b1VDIHXMR&o3x5*I5*3pLYUdF3H20Uml~R<3+y3ecSg=Yv-aCv%vpr z)jI-L<9z|#(ZCx7*Wq0Pyi|n0uNS@ar%YR}f@dcN04B zzQJ|C?P|p*koqpX+Yp892-aU~@c&jon|f1$bvjT|hPNFestukg26`Y*_s{xCyzM}} z;;0!#JKVCsU#{FJYL!7k8E_05r|{-O7_Hc68(KAj=J9qMr|`~1SoIoJI&+*_ldKf# z*n)RDnpBS|w4h}oc<RyU}=lPK3Vx)5)qRC;jXLVfy_ z-betm$E>%Kcz1->Vkzr);2jsd*@vSoswTZ0hYjfszIlS%Wa|GExR>GGm-AtD{yPu) zW+k16RteNUU)eIZ{duZ=J9_2cd3YZufQU+Y3cIdYO+R>vdxf*2xNqp<) zVtBm*^tphGA>#tr@G{VR|K|eyD+ASxcY>NgSK?m<;;RvF2=P6kOK{YvJl&}3T#B|A zsIrUk|D~uyIeeSwVzjD+W|yEg|JDEk$Ow#XJ!|OU%&Zl>r^Jh#jVR5;TN|*BM7CdA zG-+N1k#+R%|0fHS6-!kB15THuL+R3VS-L!3k*-WvrEAi)>CNeebZa`E?n-y3d((aC z{&YG$nx0G_NKd5?rKi&~>DlyLdOm#wuZ5Kiga%3n$_B~@Dh4VCss?HXY6mtCGz_#3 z#0RX zs`hN&)4M0VXL`@vp3?D(@viZy@%izRy_I`w_jd2?-+O59?B3A6@_n24#rLK69oRRA zSKKNlY9_iS`X;6(W+q^_iej0C{YqfDTG*-|)|rJp%3*={K<~f-j8`zyn!$#_zQNJK znZfzNa*VWcXB=bg-gy9{J%rckN`^v1H5l>cp+1Z`Jv4(+&kdCfmkw79*A6!fcMbOs zj}A`_&koOH{2^GNYF95T(7!9a>kzCkyK8RO{H`N-C9h;8G*Swil#f)5RE|`Q)Qr@Q zbdB_m^o{g;Ryr^;HF9WVdSnLnnj4vi&1AH6v~09|v|_Y!v}&|ww03m!Xv1jhXdJd2 zg&k)`=aenWc2~fjwXkT{?rvq(sojT^WlP3FW3+D7Snb$m*fWP~7d}hxo!ol>o|}g6=Jp=JYl-w=)xH{d zu>pSU+Sj|UPkD2C-;DBTsq$%q^6KcsBs_ZvzMY>qLjP73p4Y<8I~U^q@=@ z8`R}e%}$ylah(hMCnA?L^-Tm zIZ=gKQ#-MFqG6(SA`VM;PxN9A^-rWHXz>He=F_nH?8IEg^3%ncrSJdoywr=#)Q{XW zitKa%ndu1TYe>!41B27>LM8lA15a$mOr732i`*obt7Y&>#;5(rN|U<|AQ#n+Z&vXd zR}tH*Vm6Jar7iwaOUP`oT3bx!AoNC**Ifrw?Ei6c_`I3nbl>4j`lrt(egu7+K4#9SY8&LqY=jjS_| zj1xk(sX(Tw9cdVek8~r`q>+oKkYQ$#U1T(b+){zOQj44tM{e#LO(UyJB12D&9#Yw5 z7Wrj<^ayfH$?gzxcG>Q7WSYv|RVv$TM!sp?9alN07g?u&cN+P8a`%DVQ^-Ek$Un2Y z=aAix;8o-jIl6Hc?i=k_ k-sU-DemsPXLizZH5>TmHX@Drp9G7`(4{(nD{go{6AO9FS*Z=?k literal 900096 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