Jump to content

TypeBasic 0.1


i542
 Share

Recommended Posts

Another text editor <_<

It is not finished yet. So, it won't be full replacement until version 1.0.

Features:

1. Modern Menu

2. Text-to-speech. With Play/Stop/Voice Selection functions

3. Font Changing

4. Welcome Screen *New in AutoIt town!*

5. Command Line (Means that can be associated with .TXT files, but only manual)

Know Bugs

1. On "Tab" it selects whole text

2. Small glitches on Save unsaved document, fixed in 0.3

To-Do list

Insert Date/Time (planned release: 0.2) Done!

Tabs (Planned release: 0.3)

Find & Replace (Planned Release: 0.4)

Setup with Associating (Planned Release: 0.5)

.NFO and .DAT support (Planned Release: 0.6)

Please post your ideas if you have them.

Next Release scheduled for

20. 11. 2007.

Download

.zip : Compiled .EXE, Source (with needed files)

Servers: Gigacities (oh yea, spaces again :))

Latest Update

0.2

- Added: Date/Time Function

i542

Edited by i542

I can do signature me.

Link to comment
Share on other sites

  • Developers

I think you mean 11/11/1007

9/11/2007 was 2 months ago :)

not in all European countries <_< dd/mm/yyyy

SciTE4AutoIt3 Full installer Download page   - Beta files       Read before posting     How to post scriptsource   Forum etiquette  Forum Rules 
 
Live for the present,
Dream of the future,
Learn from the past.
  :)

Link to comment
Share on other sites

not in all European countries <_< dd/mm/yyyy

Like here in Brazil :)

Só o que posso lhe dizer, bom é quando faz mal!My work:Au3Irrlicht - Irrlicht for AutoItMsAgentLib - An UDF for MSAgentAu3GlPlugin T2 - A 3D plugin for AutoIt...OpenGl Plugin - The old version of Au3GlPlugin.MAC Address Changer - Changes the MAC AddressItCopter - A dragonfly R/C helicopter simulator

VW Bug user

Pinheiral (Pinewood) city:

http://pt.wikipedia.org/wiki/Pinheiral

Link to comment
Share on other sites

...

4. Welcome Screen *New in AutoIt town!*

...

<_<

Só o que posso lhe dizer, bom é quando faz mal!My work:Au3Irrlicht - Irrlicht for AutoItMsAgentLib - An UDF for MSAgentAu3GlPlugin T2 - A 3D plugin for AutoIt...OpenGl Plugin - The old version of Au3GlPlugin.MAC Address Changer - Changes the MAC AddressItCopter - A dragonfly R/C helicopter simulator

VW Bug user

Pinheiral (Pinewood) city:

http://pt.wikipedia.org/wiki/Pinheiral

Link to comment
Share on other sites

Well, as far as I know, nobody added Welcome Screen in their scripts... *yet* (Arr, don't copy me!)

Yesterday I was planning to add a splash screen on next version of ItCopter... <_<

Só o que posso lhe dizer, bom é quando faz mal!My work:Au3Irrlicht - Irrlicht for AutoItMsAgentLib - An UDF for MSAgentAu3GlPlugin T2 - A 3D plugin for AutoIt...OpenGl Plugin - The old version of Au3GlPlugin.MAC Address Changer - Changes the MAC AddressItCopter - A dragonfly R/C helicopter simulator

VW Bug user

Pinheiral (Pinewood) city:

http://pt.wikipedia.org/wiki/Pinheiral

Link to comment
Share on other sites

Yeah I usually put splash screens in the stuff I make for other people either stating that I made it, or giving simple instructions related to the use of the application <_<. But yours is interactive and very professional looking so *thumbs up*!~

EDIT: Any way you could change the BGcolor of the menus so that it's white behind the icons as well? Nevermind! Cool colors (I remember seeing almost this same thing in an example I think... but it wasn't a notepad just a sample menu icons thing).

Edited by dandymcgee

- Dan [Website]

Link to comment
Share on other sites

Well, as far as I know, nobody added Welcome Screen in their scripts... *yet* (Arr, don't copy me!)

I put welcome screens on Simple Web Browser, but removed because welcome screens suck. <_< But yours looks alright.

Edited by JustinReno
Link to comment
Share on other sites

Yeah I usually put splash screens in the stuff I make for other people either stating that I made it, or giving simple instructions related to the use of the application <_<. But yours is interactive and very professional looking so *thumbs up*!~

I put welcome screens on Simple Web Browser, but removed because welcome screens suck. :) But yours looks alright.

Whoa, thanks! I never thought you guys will like it!

I can do signature me.

Link to comment
Share on other sites

Hi,

I was surfing the forums looking for something to do when i stumbled across this text editor.

I decided to add some functionality, and send it back to you.

Here is what I did-

1. Added Hot-Keys (now detailed in the read me file)

2. Added Find/Replace (customized the one in GuiEdit.au3 to make it look, and feel better)

3. Made it save your menu-color settings (Bug Fix)

4. Added a couple missing Icons

5. Added a couple of little features

6. Externalized some language stuff (will make it easy to make multilingual version in future)

Here is a link to download the executable, and source.

Have fun

_________[u]UDFs[/u]_________-Mouse UDF-Math UDF-Misc Constants-Uninstaller Shell

Link to comment
Share on other sites

@i542

Why is it such a huge file? 2.42 mg files take like five minutes for my computer to download... :P

Now since I have it, could you possibly extract the icons you use and just post those? It doesn't really matter, just wondering for those people with slower internet.

Ok, now about the program. I like it! However, in the ModernMenu.au3 I had to delete a couple constants because they come with the newest version of Beta (like $ILC_MASK, $ILC_COLOR32, $WM_DRAWITEM, $WM_MEASUREITEM).

Good work with the GUI and functionality of the program.

My Programs[list][*]Knight Media Player[*]Multiple Desktops[*]Daily Comics[*]Journal[/list]
Link to comment
Share on other sites

Here is some code I modded, it now has ALLOT of new features.

This is the main code

CODE
#NoTrayIcon

#Region ;**** Directives created by AutoIt3Wrapper_GUI ****

#AutoIt3Wrapper_icon=exe-icon.ico

#AutoIt3Wrapper_outfile=TypeBasic 0.25.exe

#AutoIt3Wrapper_Compression=4

#AutoIt3Wrapper_UseAnsi=y

#AutoIt3Wrapper_Run_Tidy=y

#Tidy_Parameters=/tc n /rel

#EndRegion ;**** Directives created by AutoIt3Wrapper_GUI ****

;Aisy Waisy let's go crazy!

#include "ModernMenu.au3" ;thanks to Holger we have this udf. : )

#include "TextManipulation.au3" ;powerfull stuff

#include <GUIConstants.au3>

#include <GuiEdit.au3>

#include <File.au3>

#include <GuiCombo.au3>

#include <Misc.au3>

;hotkeys

HotKeySet("^s", "Save")

HotKeySet("^n", "New")

HotKeySet("^o", "Open")

HotKeySet("^a", "SelectAll")

HotKeySet("^p", "Print")

HotKeySet("^e", "DateTime")

HotKeySet("^d", "Date")

HotKeySet("^t", "Time")

HotKeySet("^f", "Find")

HotKeySet("^r", "Replace")

HotKeySet("{HOME}", "GotoTop")

HotKeySet("!-", "ZoomOut")

HotKeySet("!{+}", "ZoomIn")

HotKeySet("!=", "ZoomIn")

HotKeySet("+!=", "ZoomIn")

HotKeySet("!u", "MakeUpper")

HotKeySet("!l", "MakeLower")

HotKeySet("!p", "MakePropper")

Global $WhatOpen = @MyDocumentsDir & "\Untitled.txt"

Global $CurrentDocument = "Untitled"

Global $RunWelcome = True

Global $FirstTimeSaved = "0"

Global $BlockFlicker = 1

Global $TranspaentToggle = 0 ;IniRead(@ScriptDir & "\config.ini", "Memory", "Transparent", 1)

Global $Startup = 1

If $CmdLine[0] <> 0 Then

Global $WhatOpen = $CmdLine[1]

$string = StringSplit($WhatOpen, "\")

Global $CurrentDocument = $string[$string[0]]

Global $RunWelcome = False

Global $FadeOut = 1

EndIf

If IniRead(@ScriptDir & "\config.ini", "WelcomeDialog", "RunEveryTime", 1) = 1 Then

If $RunWelcome = True Then _WelcomeGui()

EndIf

$gui = GUICreate(IniRead(@ScriptDir & "\config.ini", "Language", "Version", 1) & " - " & $CurrentDocument, 541, 448, -1, -1, BitOR($WS_SIZEBOX, $WS_MAXIMIZEBOX, $WS_MINIMIZEBOX))

GUISetIcon(@ScriptDir & "\icon.ico")

$type = GUICtrlCreateEdit("", 0, 0, 539, 402)

;recall the menu color option

$colorAtStartup = IniRead(@ScriptDir & "\config.ini", "Options", "MenuColor", 1)

If $colorAtStartup = 1 Then

SetRedMenuColors()

ElseIf $colorAtStartup = 2 Then

SetGreenMenuColors()

ElseIf $colorAtStartup = 3 Then

SetBlueMenuColors()

ElseIf $colorAtStartup = 4 Then

SetInverseMenuColors()

Else

SetDefaultMenuColors()

EndIf

GUICtrlSetFont($type, IniRead(@ScriptDir & "\config.ini", "Font", "Size", 0), IniRead(@ScriptDir & "\config.ini", "Font", "Weight", 0), IniRead(@ScriptDir & "\config.ini", "Font", "Att", 0), IniRead(@ScriptDir & "\config.ini", "Font", "Face", 0))

GUICtrlSetColor($type, IniRead(@ScriptDir & "\config.ini", "Font", "Color", 0))

$file = _GUICtrlCreateODMenu("File", -1)

$fileNew = _GuiCtrlCreateODMenuItem("New", $file, @ScriptDir & "\Modern Icon Pack.icl", 14)

$fileOpen = _GuiCtrlCreateODMenuItem("Open", $file, @ScriptDir & "\Modern Icon Pack.icl", 110)

$fileOpenLast = _GuiCtrlCreateODMenuItem("Open Last", $file, @ScriptDir & "\Modern Icon Pack.icl", 59)

$fileSave = _GuiCtrlCreateODMenuItem("Save", $file, @ScriptDir & "\Modern Icon Pack.icl", 13)

$fileSaveAs = _GuiCtrlCreateODMenuItem("Save As...", $file, @ScriptDir & "\Modern Icon Pack.icl", 136)

$filePrint = _GuiCtrlCreateODMenuItem("Print...", $file, @ScriptDir & "\Modern Icon Pack.icl", 114)

_GuiCtrlCreateODMenuItem("", $file) ;Seperator

$fileExit = _GuiCtrlCreateODMenuItem("Exit", $file, @ScriptDir & "\Modern Icon Pack.icl", 129)

$edit = _GuiCtrlCreateODMenu("Edit", -1)

$editfind = _GuiCtrlCreateODMenuItem("Find", $edit, @ScriptDir & "\Modern Icon Pack.icl", 119)

$editreplace = _GuiCtrlCreateODMenuItem("Replace", $edit, @ScriptDir & "\Modern Icon Pack.icl", 121)

_GuiCtrlCreateODMenuItem("", $edit)

$editDelete = _GuiCtrlCreateODMenuItem("Delete", $edit, @ScriptDir & "\Modern Icon Pack.icl", 161)

$editUndo = _GuiCtrlCreateODMenuItem("Undo", $edit, @ScriptDir & "\Modern Icon Pack.icl", 29)

_GuiCtrlCreateODMenuItem("", $edit)

$editCut = _GuiCtrlCreateODMenuItem("Cut", $edit, @ScriptDir & "\Modern Icon Pack.icl", 212)

$editCopy = _GuiCtrlCreateODMenuItem("Copy", $edit, @ScriptDir & "\Modern Icon Pack.icl", 186)

$editPaste = _GuiCtrlCreateODMenuItem("Paste", $edit, @ScriptDir & "\Modern Icon Pack.icl", 3)

_GuiCtrlCreateODMenuItem("", $edit)

$editSelectAll = _GuiCtrlCreateODMenuItem("Select all", $edit, @ScriptDir & "\Modern Icon Pack.icl", 216)

$editDateTime = _GuiCtrlCreateODMenuItem("Insert Date/Time", $edit, @ScriptDir & "\Modern Icon Pack.icl", 107)

$edittwo = _GuiCtrlCreateODMenu("Edit 2", -1)

$translate = _GuiCtrlCreateODMenu("Translate", $edittwo, @ScriptDir & "\Modern Icon Pack.icl", 181)

$RotThirteen = _GuiCtrlCreateODMenuItem("Rot 13", $translate, @ScriptDir & "\Modern Icon Pack.icl", 25)

_GuiCtrlCreateODMenuItem("", $translate)

$albed_to = _GuiCtrlCreateODMenuItem("To Albed", $translate, @ScriptDir & "\Modern Icon Pack.icl", 25)

$albed_from = _GuiCtrlCreateODMenuItem("From Albed", $translate, @ScriptDir & "\Modern Icon Pack.icl", 25)

_GuiCtrlCreateODMenuItem("", $translate)

$pig_to = _GuiCtrlCreateODMenuItem("To Pig Latin", $translate, @ScriptDir & "\Modern Icon Pack.icl", 25)

$pig_from = _GuiCtrlCreateODMenuItem("From Pig Latin", $translate, @ScriptDir & "\Modern Icon Pack.icl", 25)

$talk = _GuiCtrlCreateODMenuItem("Talk", $edittwo, @ScriptDir & "\Modern Icon Pack.icl", 202)

_GuiCtrlCreateODMenuItem("", $edittwo)

$makecaps = _GuiCtrlCreateODMenuItem("Make Capital", $edittwo, @ScriptDir & "\Modern Icon Pack.icl", 49)

$makelower = _GuiCtrlCreateODMenuItem("Make Lowercase", $edittwo, @ScriptDir & "\Modern Icon Pack.icl", 49)

_GuiCtrlCreateODMenuItem("", $edittwo)

$gototop = _GuiCtrlCreateODMenuItem("Goto Top", $edittwo, @ScriptDir & "\Modern Icon Pack.icl", 73)

$gotomiddle = _GuiCtrlCreateODMenuItem("Goto middle", $edittwo, @ScriptDir & "\Modern Icon Pack.icl", 73)

$gotobottom = _GuiCtrlCreateODMenuItem("Goto bottom", $edittwo, @ScriptDir & "\Modern Icon Pack.icl", 73)

$options = _GuiCtrlCreateODMenu("Options", -1)

$color = _GuiCtrlCreateODMenu("Color Scheme", $options, @ScriptDir & "\Modern Icon Pack.icl", 167)

$colorRed = _GuiCtrlCreateODMenuItem("Red", $color, @ScriptDir & "\Modern Icon Pack.icl", 106)

$colorGreen = _GuiCtrlCreateODMenuItem("Green", $color, @ScriptDir & "\Modern Icon Pack.icl", 106)

$colorBlue = _GuiCtrlCreateODMenuItem("Blue", $color, @ScriptDir & "\Modern Icon Pack.icl", 106)

_GuiCtrlCreateODMenuItem("", $color)

$colorDefault = _GuiCtrlCreateODMenuItem("Default (Grey)", $color, @ScriptDir & "\Modern Icon Pack.icl", 106)

$colorInverse = _GuiCtrlCreateODMenuItem("Inverse (Grey)", $color, @ScriptDir & "\Modern Icon Pack.icl", 106)

$DateFormat = _GuiCtrlCreateODMenu("Date Format", $options, @ScriptDir & "\Modern Icon Pack.icl", 171)

$Written = _GuiCtrlCreateODMenuItem("Written", $DateFormat, @ScriptDir & "\Modern Icon Pack.icl", 169)

$YearMonthDay = _GuiCtrlCreateODMenuItem("YY/MM/DD", $DateFormat, @ScriptDir & "\Modern Icon Pack.icl", 169)

$DayMonthYear = _GuiCtrlCreateODMenuItem("DD/MM/YY", $DateFormat, @ScriptDir & "\Modern Icon Pack.icl", 169)

$MonthDayYear = _GuiCtrlCreateODMenuItem("MM/DD/YY", $DateFormat, @ScriptDir & "\Modern Icon Pack.icl", 169)

$TimeFormat = _GuiCtrlCreateODMenu("Time Format", $options, @ScriptDir & "\Modern Icon Pack.icl", 107)

$Normal = _GuiCtrlCreateODMenuItem("Hr:Min Am/Pm", $TimeFormat, @ScriptDir & "\Modern Icon Pack.icl", 169)

$Secconds = _GuiCtrlCreateODMenuItem("Hr:Min.Sec Am/Pm", $TimeFormat, @ScriptDir & "\Modern Icon Pack.icl", 169)

$HRMIN = _GuiCtrlCreateODMenuItem("Hr:Min", $TimeFormat, @ScriptDir & "\Modern Icon Pack.icl", 169)

$HRMINSEC = _GuiCtrlCreateODMenuItem("Hr:Min.Sec", $TimeFormat, @ScriptDir & "\Modern Icon Pack.icl", 169)

$fade = _GuiCtrlCreateODMenuItem("Fade on Quit", $options, @ScriptDir & "\Modern Icon Pack.icl", 105)

$confirmation = _GuiCtrlCreateODMenuItem("Quit Confirmation", $options, @ScriptDir & "\Modern Icon Pack.icl", 216)

_GuiCtrlCreateODMenuItem("", $options)

$welcome = _GuiCtrlCreateODMenuItem("Setup Welcome Screen", $options, @ScriptDir & "\Modern Icon Pack.icl", 0)

$font = _GuiCtrlCreateODMenuItem("Fonts", $options, @ScriptDir & "\Modern Icon Pack.icl", 140)

$deffont = _GuiCtrlCreateODMenuItem("Default Font", $options, @ScriptDir & "\Modern Icon Pack.icl", 16)

$transparent = _GuiCtrlCreateODMenuItem("Transparent Mode", $options, @ScriptDir & "\Modern Icon Pack.icl", 193)

$help = _GuiCtrlCreateODMenu("Help", -1)

$helpHelp = _GuiCtrlCreateODMenuItem("Read Me", $help, @ScriptDir & "\Modern Icon Pack.icl", 120)

$helpAbout = _GuiCtrlCreateODMenuItem("About", $help, @ScriptDir & "\Modern Icon Pack.icl", 6)

GUISetState(@SW_SHOW)

Global $objVoice

If $WhatOpen <> "0" Then

GUICtrlSetData($type, FileRead($WhatOpen)) ;If something was opened, then lets open it!

Global $FirstTimeSaved = $WhatOpen ;To save

EndIf

Global $FirstTimeSaved = "0"

$Startup = 0

While 1

Sleep(15)

$nMsg = GUIGetMsg()

Switch $nMsg

#Region File Menu and Exit event

Case $GUI_EVENT_CLOSE, $fileExit

QuitProgram()

Case $RotThirteen

_GUICtrlEditReplaceSel($type, True, RotThirteen(GetSelectedText($type)))

Case $albed_to

_GUICtrlEditReplaceSel($type, True, ALBED_to(GetSelectedText($type)))

Case $albed_from

_GUICtrlEditReplaceSel($type, True, ALBED_from(GetSelectedText($type)))

Case $fade

If IniRead(@ScriptDir & "\config.ini", "Options", "FadeOut", 1) = 1 Then

MsgBox(64, "TypeBasic 0.2", "Fadeing out upon quitting has been sucessfully turned off.")

IniWrite(@ScriptDir & "\config.ini", "Options", "FadeOut", 0)

Else

MsgBox(64, "TypeBasic 0.2", "Fadeing out upon quitting has been sucessfully turned on.")

IniWrite(@ScriptDir & "\config.ini", "Options", "FadeOut", 1)

EndIf

Case $confirmation

If IniRead(@ScriptDir & "\config.ini", "Options", "QuitConfirmation", 1) = 1 Then

MsgBox(64, "TypeBasic 0.2", "Quit Confirmation has been sucessfully turned off.")

IniWrite(@ScriptDir & "\config.ini", "Options", "QuitConfirmation", 0)

Else

MsgBox(64, "TypeBasic 0.2", "Quit Confirmation has been sucessfully turned on.")

IniWrite(@ScriptDir & "\config.ini", "Options", "QuitConfirmation", 1)

EndIf

Case $transparent

If $TranspaentToggle = 0 Then

$TranspaentToggle = 1

IniWrite(@ScriptDir & "\config.ini", "Memory", "Transparent", 1)

WinSetTrans("TypeBasic 0.2", "", IniRead(@ScriptDir & "\config.ini", "Memory", "Transparency", 1))

Else

$TranspaentToggle = 0

IniWrite(@ScriptDir & "\config.ini", "Memory", "Transparent", 1)

WinSetTrans("TypeBasic 0.2", "", 255)

EndIf

Case $fileNew

New()

Case $fileOpen

Open()

Case $editfind

Find()

Case $editreplace

Replace()

Case $makecaps

MakeUpper()

Case $makelower

MakeLower()

Case $pig_to

pigto()

Case $pig_from

pigfrom()

Case $fileOpenLast

$Temp = $WhatOpen

Global $WhatOpen = IniRead(@ScriptDir & "\config.ini", "Memory", "LastOpened", 1)

IniWrite(@ScriptDir & "\config.ini", "Memory", "LastOpened", $Temp)

Global $FirstTimeSaved = $WhatOpen ;To save

$string = StringSplit($WhatOpen, "\")

Global $CurrentDocument = $string[$string[0]]

GUICtrlSetData($type, FileRead($WhatOpen))

WinSetTitle(IniRead(@ScriptDir & "\config.ini", "Language", "Version", 1), "", IniRead(@ScriptDir & "\config.ini", "Language", "Version", 1) & " - " & $CurrentDocument)

Case $fileSave

Save()

Case $fileSaveAs

$thefilename = FileSaveDialog("Save as...", @MyDocumentsDir, "Text files (*.txt)|All files (*.*)")

If @error Then ContinueLoop

FileWrite($thefilename & ".txt", GUICtrlRead($type))

Global $FirstTimeSaved = $thefilename & ".txt"

_GUICtrlEditSetModify($type, False)

Case $filePrint

Print()

Case $talk

TextToSpeach()

Case $welcome

If IniRead(@ScriptDir & "\config.ini", "WelcomeDialog", "RunEveryTime", 1) = 1 Then

$MsgBoxReturn = MsgBox(32 + 4, IniRead(@ScriptDir & "\config.ini", "Language", "Version", 1), "The Welcome screen is currently turned on." & @CRLF & @CRLF & "Would you like to turn Welcome Screen off?")

If $MsgBoxReturn = 6 Then

IniWrite(@ScriptDir & "\config.ini", "WelcomeDialog", "RunEveryTime", 0)

MsgBox(64, IniRead(@ScriptDir & "\config.ini", "Language", "Version", 1), "The Welcome screen has been sucessfully turned off.")

EndIf

Else

$MsgBoxReturn = MsgBox(32 + 4, "TypeBasic 0.2", "The Welcome screen is currently turned off." & @CRLF & @CRLF & "Would you like to turn Welcome Screen on?")

If $MsgBoxReturn = 6 Then

IniWrite(@ScriptDir & "\config.ini", "WelcomeDialog", "RunEveryTime", 1)

MsgBox(64, IniRead(@ScriptDir & "\config.ini", "Language", "Version", 1), "The Welcome screen has been sucessfully turned on.")

EndIf

EndIf

Case $editDateTime

DateTime()

Case $editSelectAll

SelectAll()

Case $editUndo

If _GUICtrlEditCanUndo($type) Then _GUICtrlEditUndo($type)

Case $editDelete

_GUICtrlEditReplaceSel($type, True, "")

Case $editCut

Send("^X")

Case $editCopy

Send("^C")

Case $editPaste

Send("^V")

Case $font

$fontdata = _ChooseFont()

If @error Then ContinueLoop

IniWrite(@ScriptDir & "\config.ini", "Font", "Size", $fontdata[3])

IniWrite(@ScriptDir & "\config.ini", "Font", "Weight", $fontdata[4])

IniWrite(@ScriptDir & "\config.ini", "Font", "Att", $fontdata[1])

IniWrite(@ScriptDir & "\config.ini", "Font", "Face", $fontdata[2])

IniWrite(@ScriptDir & "\config.ini", "Font", "Color", $fontdata[7])

GUICtrlSetFont($type, IniRead(@ScriptDir & "\config.ini", "Font", "Size", 0), IniRead(@ScriptDir & "\config.ini", "Font", "Weight", 0), IniRead(@ScriptDir & "\config.ini", "Font", "Att", 0), IniRead(@ScriptDir & "\config.ini", "Font", "Face", 0))

GUICtrlSetColor($type, IniRead(@ScriptDir & "\config.ini", "Font", "Color", 0))

Case $deffont

IniWrite(@ScriptDir & "\config.ini", "Font", "Size", IniRead(@ScriptDir & "\config.ini", "Font", "DefaultSize", 0))

IniWrite(@ScriptDir & "\config.ini", "Font", "Weight", IniRead(@ScriptDir & "\config.ini", "Font", "DefaultWeight", 0))

IniWrite(@ScriptDir & "\config.ini", "Font", "Att", IniRead(@ScriptDir & "\config.ini", "Font", "DefaultAtt", 0))

IniWrite(@ScriptDir & "\config.ini", "Font", "Face", IniRead(@ScriptDir & "\config.ini", "Font", "DefaultFace", 0))

IniWrite(@ScriptDir & "\config.ini", "Font", "Color", IniRead(@ScriptDir & "\config.ini", "Font", "DefaultColor", 0))

If IniRead(@ScriptDir & "\config.ini", "Options", "MenuColor", 1) = 4 Then

GUICtrlSetColor($type, 0xFFFFFF)

IniWrite(@ScriptDir & "\config.ini", "Font", "Color", 0xFFFFFF)

EndIf

GUICtrlSetFont($type, IniRead(@ScriptDir & "\config.ini", "Font", "Size", 0), IniRead(@ScriptDir & "\config.ini", "Font", "Weight", 0), IniRead(@ScriptDir & "\config.ini", "Font", "Att", 0), IniRead(@ScriptDir & "\config.ini", "Font", "Face", 0))

GUICtrlSetColor($type, IniRead(@ScriptDir & "\config.ini", "Font", "Color", 0))

Case $colorRed

SetRedMenuColors()

Case $colorBlue

SetBlueMenuColors()

Case $colorGreen

SetGreenMenuColors()

Case $colorDefault

SetDefaultMenuColors()

Case $colorInverse

SetInverseMenuColors()

Case $helpHelp

$MsgBoxReturn = MsgBox(32 + 4, IniRead(@ScriptDir & "\config.ini", "Language", "Version", 1), "Help file will replace currently opened document." & @CRLF & "Would you like to continue?")

If $MsgBoxReturn = 6 Then

IniWrite(@ScriptDir & "\config.ini", "Memory", "LastOpened", $WhatOpen)

Global $WhatOpen = @ScriptDir & "\Readme.txt"

Global $FirstTimeSaved = $WhatOpen ;To save

$string = StringSplit($WhatOpen, "\")

Global $CurrentDocument = $string[$string[0]]

GUICtrlSetData($type, FileRead($WhatOpen))

WinSetTitle(IniRead(@ScriptDir & "\config.ini", "Language", "Version", 1), "", "TypeBasic 0.2 - " & $CurrentDocument)

EndIf

Case $helpAbout

MsgBox(0, "About TypeBasic", IniRead(@ScriptDir & "\config.ini", "Language", "Version", 1) & @CRLF & "Author: i542" & @CRLF & _

"Modern Menu by Holger" & @CRLF & _

"Aditional functionallity by NerdFencer" & @CRLF & _

"Visit my website at i542.gigacities.net!" & @CRLF)

;TTS controls

Case $gototop

GotoTop()

Case $gotomiddle

GotoMiddle()

Case $gotobottom

GotoBottom()

Case $Written

IniWrite(@ScriptDir & "\config.ini", "Options", "DateFormat", 1)

Case $YearMonthDay

IniWrite(@ScriptDir & "\config.ini", "Options", "DateFormat", 2)

Case $DayMonthYear

IniWrite(@ScriptDir & "\config.ini", "Options", "DateFormat", 3)

Case $MonthDayYear

IniWrite(@ScriptDir & "\config.ini", "Options", "DateFormat", 4)

Case $Normal

IniWrite(@ScriptDir & "\config.ini", "Options", "TimeFormat", 1)

Case $Secconds

IniWrite(@ScriptDir & "\config.ini", "Options", "TimeFormat", 2)

Case $HRMIN

IniWrite(@ScriptDir & "\config.ini", "Options", "TimeFormat", 3)

Case $HRMINSEC

IniWrite(@ScriptDir & "\config.ini", "Options", "TimeFormat", 4)

EndSwitch

WEnd

Func _WelcomeGui()

$WelcomeGui = GUICreate(IniRead(@ScriptDir & "\config.ini", "Language", "Version", 1) & " Welcome Dialog", 527, 246, 204, 182, $WS_CAPTION)

GUISetIcon(@ScriptDir & "\icon.ico")

GUISetBkColor(0xA6CAF0)

$RunEveryTime = GUICtrlCreateCheckbox("Run this dialog every time I open TypeBasic", 2, 222, 230, 17)

GUICtrlSetState(-1, $GUI_CHECKED)

GUICtrlSetBkColor(-1, 0xA6CAF0)

GUICtrlCreateLabel("Welcome to", 0, 1, 61, 17)

GUICtrlSetBkColor(-1, 0xA6CAF0)

GUICtrlCreateLabel("TypeBasic 0.2", 25, 21, 135, 26)

GUICtrlSetFont(-1, 14, 800, 0, "Arial")

GUICtrlSetBkColor(-1, 0xA6CAF0)

GUICtrlCreateLabel("a Notepad alternative", 53, 52, 106, 17)

GUICtrlSetBkColor(-1, 0xA6CAF0)

$New = GUICtrlCreateIcon(@ScriptDir & "\Modern Icon Pack.icl", 14, 190, 30, 32, 32, BitOR($SS_NOTIFY, $WS_GROUP))

GUICtrlCreateLabel("New", 227, 29, 29, 17)

GUICtrlSetFont(-1, 8, 800, 0, "MS Sans Serif")

GUICtrlSetBkColor(-1, 0xA6CAF0)

GUICtrlCreateLabel("Create new, blank document", 227, 47, 140, 17)

GUICtrlSetBkColor(-1, 0xA6CAF0)

$Open = GUICtrlCreateIcon(@ScriptDir & "\Modern Icon Pack.icl", 110, 190, 67, 32, 32, BitOR($SS_NOTIFY, $WS_GROUP))

GUICtrlCreateLabel("Open", 227, 66, 34, 17)

GUICtrlSetFont(-1, 8, 800, 0, "MS Sans Serif")

GUICtrlSetBkColor(-1, 0xA6CAF0)

GUICtrlCreateLabel("Open an existing file", 227, 84, 99, 17)

GUICtrlSetBkColor(-1, 0xA6CAF0)

GUICtrlCreateLabel("Click on icon to get started!", 191, 7, 162, 17)

GUICtrlSetFont(-1, 8, 800, 0, "MS Sans Serif")

GUICtrlSetBkColor(-1, 0xA6CAF0)

$OpenRecent = GUICtrlCreateIcon(@ScriptDir & "\Modern Icon Pack.icl", 117, 190, 103, 32, 32, BitOR($SS_NOTIFY, $WS_GROUP))

GUICtrlCreateLabel("Open Recent", 227, 102, 79, 17)

GUICtrlSetFont(-1, 8, 800, 0, "MS Sans Serif")

GUICtrlSetBkColor(-1, 0xA6CAF0)

GUICtrlCreateLabel("Continue working on recent files you opened", 227, 120, 214, 17)

GUICtrlSetBkColor(-1, 0xA6CAF0)

$help = GUICtrlCreateIcon(@ScriptDir & "\Modern Icon Pack.icl", 120, 190, 139, 32, 32, BitOR($SS_NOTIFY, $WS_GROUP))

GUICtrlCreateLabel("Help", 227, 139, 30, 17)

GUICtrlSetFont(-1, 8, 800, 0, "MS Sans Serif")

GUICtrlSetBkColor(-1, 0xA6CAF0)

GUICtrlCreateLabel("Read the Readme file", 227, 157, 107, 17)

GUICtrlSetBkColor(-1, 0xA6CAF0)

$Exit = GUICtrlCreateIcon(@ScriptDir & "\Modern Icon Pack.icl", 7, 190, 175, 32, 32, BitOR($SS_NOTIFY, $WS_GROUP))

GUICtrlCreateLabel("Exit", 227, 174, 25, 17)

GUICtrlSetFont(-1, 8, 800, 0, "MS Sans Serif")

GUICtrlSetBkColor(-1, 0xA6CAF0)

GUICtrlCreateLabel("Exit TypeBasic", 227, 192, 74, 17)

GUICtrlSetBkColor(-1, 0xA6CAF0)

WinSetTrans("TypeBasic 0.2 Welcome Dialog", "", 0)

GUISetState(@SW_SHOW)

For $i = 1 To 255 Step 5

WinSetTrans("TypeBasic 0.2 Welcome Dialog", "", $i)

Next

While 1

$nMsg = GUIGetMsg()

Switch $nMsg

Case $OpenRecent

$WhatOpen = FileOpenDialog("Pick a file", @UserProfileDir & "\Recent", "Text files (*.txt)|All files (*.*)")

If @error = 0 Then

$string = StringSplit($WhatOpen, "\")

Global $CurrentDocument = $string[$string[0]]

ExitLoop

EndIf

Case $Open

$WhatOpen = FileOpenDialog("Pick a file", @MyDocumentsDir, "Text files (*.txt)|All files (*.*)")

If @error = 0 Then

$string = StringSplit($WhatOpen, "\")

Global $CurrentDocument = $string[$string[0]]

EndIf

Case $New

ExitLoop

Case $help

$WhatOpen = @ScriptDir & "\Readme.txt"

$string = StringSplit($WhatOpen, "\")

Global $CurrentDocument = $string[$string[0]]

ExitLoop

Case $Exit

If GUICtrlRead($RunEveryTime) = $GUI_UNCHECKED Then

IniWrite(@ScriptDir & "\config.ini", "WelcomeDialog", "RunEveryTime", 0)

MsgBox(64, IniRead(@ScriptDir & "\config.ini", "Language", "Version", 1), "The Welcome Dialog may be activated again any time from the Advanced menu.")

Else

IniWrite(@ScriptDir & "\config.ini", "WelcomeDialog", "RunEveryTime", 1)

EndIf

For $i = 255 To 0 Step - 5

WinSetTrans(IniRead(@ScriptDir & "\config.ini", "Language", "Version", 1) & " Welcome Dialog", "", $i)

Next

Exit

EndSwitch

WEnd

For $i = 255 To 0 Step - 5

WinSetTrans(IniRead(@ScriptDir & "\config.ini", "Language", "Version", 1) & " Welcome Dialog", "", $i)

Next

GUISetState(@SW_HIDE)

If GUICtrlRead($RunEveryTime) = $GUI_UNCHECKED Then

IniWrite(@ScriptDir & "\config.ini", "WelcomeDialog", "RunEveryTime", 0)

MsgBox(64, IniRead(@ScriptDir & "\config.ini", "Language", "Version", 1), "The Welcome Dialog may be activated again any time from the Advanced menu.")

Else

IniWrite(@ScriptDir & "\config.ini", "WelcomeDialog", "RunEveryTime", 1)

EndIf

EndFunc ;==>_WelcomeGui

;and thanks to Holger we have menu color change functions

;Thanks, Holger!!!

Func SetDefaultMenuColors()

_SetMenuBkColor(0xFFFFFF)

_SetMenuIconBkColor(0xD1D8DB)

_SetMenuSelectBkColor(0xD2BDB6)

_SetMenuSelectRectColor(0x854240)

_SetMenuSelectTextColor(0x000000)

_SetMenuTextColor(0x000000)

GUICtrlSetBkColor($type, 0xFFFFFF)

If $Startup = 0 Then

GUICtrlSetColor($type, 0x000000)

IniWrite(@ScriptDir & "\config.ini", "Font", "Color", 0x000000)

EndIf

IniWrite(@ScriptDir & "\config.ini", "Options", "MenuColor", 0)

EndFunc ;==>SetDefaultMenuColors

Func SetInverseMenuColors()

_SetMenuBkColor(0xFFFFFF)

_SetMenuIconBkColor(0xD1D8DB)

_SetMenuSelectBkColor(0xD2BDB6)

_SetMenuSelectRectColor(0x854240)

_SetMenuSelectTextColor(0x000000)

_SetMenuTextColor(0x000000)

GUICtrlSetBkColor($type, 0x000000)

If $Startup = 0 Then

GUICtrlSetColor($type, 0xFFFFFF)

IniWrite(@ScriptDir & "\config.ini", "Font", "Color", 0xFFFFFF)

EndIf

IniWrite(@ScriptDir & "\config.ini", "Options", "MenuColor", 4)

EndFunc ;==>SetInverseMenuColors

Func SetRedMenuColors()

_SetMenuBkColor(0xAADDFF)

_SetMenuIconBkColor(0x5566BB)

_SetMenuSelectBkColor(0x70A0C0)

_SetMenuSelectRectColor(0x854240)

_SetMenuSelectTextColor(0x000000)

_SetMenuTextColor(0x000000)

GUICtrlSetBkColor($type, 0xFFFFFF)

If $Startup = 0 Then

GUICtrlSetColor($type, 0xFF0000)

IniWrite(@ScriptDir & "\config.ini", "Font", "Color", 0xFF0000)

EndIf

IniWrite(@ScriptDir & "\config.ini", "Options", "MenuColor", 1)

EndFunc ;==>SetRedMenuColors

Func SetGreenMenuColors()

_SetMenuBkColor(0xAAFFAA)

_SetMenuIconBkColor(0x66BB66)

_SetMenuSelectBkColor(0xBBCC88)

_SetMenuSelectRectColor(0x222277)

_SetMenuSelectTextColor(0x770000)

_SetMenuTextColor(0x000000)

GUICtrlSetBkColor($type, 0xFFFFFF)

If $Startup = 0 Then

GUICtrlSetColor($type, 0x008000)

IniWrite(@ScriptDir & "\config.ini", "Font", "Color", 0x008000)

EndIf

IniWrite(@ScriptDir & "\config.ini", "Options", "MenuColor", 2)

EndFunc ;==>SetGreenMenuColors

Func SetBlueMenuColors()

_SetMenuBkColor(0xFFB8B8)

_SetMenuIconBkColor(0xBB8877)

_SetMenuSelectBkColor(0x662222)

_SetMenuSelectRectColor(0x4477AA)

_SetMenuSelectTextColor(0x66FFFF)

_SetMenuTextColor(0x000000)

GUICtrlSetBkColor($type, 0xFFFFFF)

If $Startup = 0 Then

GUICtrlSetColor($type, 0x0000FF)

IniWrite(@ScriptDir & "\config.ini", "Font", "Color", 0x0000FF)

EndIf

IniWrite(@ScriptDir & "\config.ini", "Options", "MenuColor", 3)

EndFunc ;==>SetBlueMenuColors

;some pre-work with the options before quitting

Func QuitProgram()

;Note:add anything that needs to be done immediately before exiting here

If IniRead(@ScriptDir & "\config.ini", "Options", "QuitConfirmation", 1) = 1 Then

$MsgBoxReturn = MsgBox(32 + 4, IniRead(@ScriptDir & "\config.ini", "Language", "Version", 1), "Are you sure you want to exit?")

If $MsgBoxReturn = 6 Then

FinalQuit()

EndIf

Else

FinalQuit()

EndIf

EndFunc ;==>QuitProgram

;Externalised for the sake of code length, and conveniance

Func FinalQuit()

If IniRead(@ScriptDir & "\config.ini", "Options", "FadeOut", 1) = 1 Then

For $i = 255 To 0 Step - IniRead(@ScriptDir & "\config.ini", "Options", "FadeSpeed", 1)

WinSetTrans("TypeBasic 0.2", "", $i)

Next

EndIf

IniWrite(@ScriptDir & "\config.ini", "Memory", "LastOpened", $WhatOpen)

Exit

EndFunc ;==>FinalQuit

;this opens the new files

Func Open()

IniWrite(@ScriptDir & "\config.ini", "Memory", "LastOpened", $WhatOpen)

Global $WhatOpen = FileOpenDialog("Open", @MyDocumentsDir, "Text Files (*.txt)|All Files (*.*)")

If @error = False Then

Global $FirstTimeSaved = $WhatOpen ;To save

$string = StringSplit($WhatOpen, "\")

Global $CurrentDocument = $string[$string[0]]

GUICtrlSetData($type, FileRead($WhatOpen))

WinSetTitle(IniRead(@ScriptDir & "\config.ini", "Language", "Version", 1), "", IniRead(@ScriptDir & "\config.ini", "Language", "Version", 1) & " - " & $CurrentDocument)

EndIf

EndFunc ;==>Open

;this prepares to create a new file

Func New()

If _GUICtrlEditGetModify($type) = True Then

$MsgBoxReturn = MsgBox(32 + 4, IniRead(@ScriptDir & "\config.ini", "Language", "Version", 1), "Are you sure you want to create new document?")

If $MsgBoxReturn = 6 Then

CreateNew()

EndIf

Else

CreateNew()

EndIf

EndFunc ;==>New

;this creates the new file

Func CreateNew()

Global $FirstTimeSaved = "0"

GUICtrlSetData($type, "")

WinSetTitle("TypeBasic 0.2", "", IniRead(@ScriptDir & "\config.ini", "Language", "Version", 1) & " - Untitled")

_GUICtrlEditSetModify($type, False)

EndFunc ;==>CreateNew

;saves the current file

Func Save()

If $FirstTimeSaved = "0" Then

$thefilename = FileSaveDialog("Save as...", @MyDocumentsDir, "Text files (*.txt)|All files (*.*)")

If @error = 0 Then

Global $FirstTimeSaved = $thefilename & ".txt"

_GUICtrlEditSetModify($type, False)

$fileHandle = FileOpen($FirstTimeSaved, 2)

FileWrite($fileHandle, GUICtrlRead($type))

FileClose($fileHandle)

EndIf

Else

$fileHandle = FileOpen($FirstTimeSaved, 2)

FileWrite($fileHandle, GUICtrlRead($type))

FileClose($fileHandle)

_GUICtrlEditSetModify($type, False)

EndIf

EndFunc ;==>Save

;pretty self explanitory

Func SelectAll()

_GUICtrlEditSetSel($type, 0, -1)

EndFunc ;==>SelectAll

Func Print()

FileWrite(@TempDir & "\TemporaryTypeBasicFile.txt", GUICtrlRead($type))

_FilePrint(@TempDir & "\TemporaryTypeBasicFile.txt", @SW_SHOW)

FileDelete(@TempDir & "\TemporaryTypeBasicFile.txt")

#endregion

EndFunc ;==>Print

;inserts the date and time into the text

Func DateTime()

Date()

_GUICtrlEditReplaceSel($type, True, " at ")

Time()

;_GUICtrlEditReplaceSel($type, True, FetchDay() & ", " & FetchMonth() & " " & @MDAY & ", " & @YEAR & " at " & FetchTime())

EndFunc ;==>DateTime

;inserts the date into the text

Func Date()

Local $DateFormat = IniRead(@ScriptDir & "\config.ini", "Options", "DateFormat", 0)

Local $Date

If $DateFormat = 1 Then

$Date = FetchDay() & ", " & FetchMonth() & " " & @MDAY & ", " & @YEAR

ElseIf $DateFormat = 2 Then

$Date = @YEAR & "/" & @MON & "/" & @MDAY

ElseIf $DateFormat = 3 Then

$Date = @MDAY & "/" & @MON & "/" & @YEAR

Else

$Date = @MON & "/" & @MDAY & "/" & @YEAR

EndIf

_GUICtrlEditReplaceSel($type, True, $Date)

EndFunc ;==>Date

;inserts the time into the text

Func Time()

Local $TimeFormat = IniRead(@ScriptDir & "\config.ini", "Options", "TimeFormat", 0)

Local $Time

If $TimeFormat = 1 Then

$Time = FetchTime()

ElseIf $TimeFormat = 2 Then

If @HOUR > 12 Then

$Time = @HOUR - 12 & ":" & @MIN & "." & @SEC & " PM"

Else

$Time = @HOUR & ":" & @MIN & "." & @SEC & " AM"

EndIf

ElseIf $TimeFormat = 3 Then

$Time = @HOUR & ":" & @MIN

Else

$Time = @HOUR & ":" & @MIN & "." & @SEC

EndIf

_GUICtrlEditReplaceSel($type, True, $Time)

EndFunc ;==>Time

;calls the modified find/replace function set for find

Func Find()

_GuiCtrlEditModedFind($gui, $type)

EndFunc ;==>Find

;calls the modified find/replace function to find and replace

Func Replace()

_GuiCtrlEditModedFind($gui, $type, True)

EndFunc ;==>Replace

;pretty self explanitory

Func GotoTop()

_GUICtrlEditLineScroll($type, 0, -_GUICtrlEditGetLineCount($type))

EndFunc ;==>GotoTop

;pretty self explanitory

Func GotoBottom()

_GUICtrlEditLineScroll($type, 0, _GUICtrlEditGetLineCount($type))

EndFunc ;==>GotoBottom

;pretty self explanitory

Func GotoMiddle()

_GUICtrlEditLineScroll($type, 0, -_GUICtrlEditGetLineCount($type))

_GUICtrlEditLineScroll($type, 0, _GUICtrlEditGetLineCount($type) / 2)

EndFunc ;==>GotoMiddle

;increases the size of the text by 1 Note:1 can be changed in the ini file

Func ZoomIn()

IniWrite(@ScriptDir & "\config.ini", "Font", "Size", IniRead(@ScriptDir & "\config.ini", "Font", "Size", 0) + IniRead(@ScriptDir & "\config.ini", "Font", "ZoomSpeed", 0))

GUICtrlSetFont($type, IniRead(@ScriptDir & "\config.ini", "Font", "Size", 0), IniRead(@ScriptDir & "\config.ini", "Font", "Weight", 0), IniRead(@ScriptDir & "\config.ini", "Font", "Att", 0), IniRead(@ScriptDir & "\config.ini", "Font", "Face", 0))

EndFunc ;==>ZoomIn

;decreases the size of the text by 1 Note:1 can be changed in the ini file

Func ZoomOut()

If IniRead(@ScriptDir & "\config.ini", "Font", "Size", 0) <> 1 Then

IniWrite(@ScriptDir & "\config.ini", "Font", "Size", IniRead(@ScriptDir & "\config.ini", "Font", "Size", 0) - IniRead(@ScriptDir & "\config.ini", "Font", "ZoomSpeed", 0))

GUICtrlSetFont($type, IniRead(@ScriptDir & "\config.ini", "Font", "Size", 0), IniRead(@ScriptDir & "\config.ini", "Font", "Weight", 0), IniRead(@ScriptDir & "\config.ini", "Font", "Att", 0), IniRead(@ScriptDir & "\config.ini", "Font", "Face", 0))

EndIf

EndFunc ;==>ZoomOut

;pretty self explanitory

Func MakePropper()

ConvertSelectedCase($type, 2)

EndFunc ;==>MakePropper

Func MakeUpper()

Local $case = 1

ConvertSelectedCase($type, $case)

EndFunc ;==>MakeUpper

;pretty self explanitory

Func MakeLower()

Local $case = 0

ConvertSelectedCase($type, $case)

EndFunc ;==>MakeLower

Func FetchMonth()

If @MON = 1 Then

Return "January"

ElseIf @MON = 2 Then

Return "February"

ElseIf @MON = 3 Then

Return "March"

ElseIf @MON = 4 Then

Return "April"

ElseIf @MON = 5 Then

Return "May"

ElseIf @MON = 6 Then

Return "June"

ElseIf @MON = 7 Then

Return "July"

ElseIf @MON = 8 Then

Return "August"

ElseIf @MON = 9 Then

Return "September"

ElseIf @MON = 10 Then

Return "October"

ElseIf @MON = 11 Then

Return "November"

Else

Return "December"

EndIf

EndFunc ;==>FetchMonth

Func FetchDay()

If @WDAY = 1 Then

Return "Sunday"

ElseIf @WDAY = 2 Then

Return "Monday"

ElseIf @WDAY = 3 Then

Return "Tuesday"

ElseIf @WDAY = 4 Then

Return "Wendsday"

ElseIf @WDAY = 5 Then

Return "Thursday"

ElseIf @WDAY = 6 Then

Return "Friday"

Else

Return "Saturday"

EndIf

EndFunc ;==>FetchDay

Func FetchTime()

Local $Time

If @HOUR > 12 Then

$Time = @HOUR - 12 & ":" & @MIN & " PM"

Else

$Time = @HOUR & ":" & @MIN & " AM"

EndIf

Return $Time

EndFunc ;==>FetchTime

Func Goto()

GotoLine($gui, $type)

EndFunc ;==>Goto

Func TextToSpeach() ;remember the numbers 80, and 190

Local $TTSMsg

Local $TTSGui = GUICreate("Text-to-speech Control", 254, 190, 193, 115, -1, BitOR($WS_EX_TOOLWINDOW, $WS_EX_TOPMOST, $WS_EX_WINDOWEDGE))

Local $play = GUICtrlCreateButton("Speek", 8, 160, 75, 25, 0)

Local $stop = GUICtrlCreateButton("Stop", 167, 160, 75, 25, 0)

GUICtrlCreateLabel("Avaiable voices:", 9, 5, 88, 17)

Local $voices = GUICtrlCreateCombo("", 9, 24, 233, 25, BitOR($CBS_DROPDOWNLIST, $CBS_AUTOHSCROLL))

GUICtrlCreateLabel("Slow", 48, 52, 36, 17)

GUICtrlCreateLabel("Fast", 222, 52, 36, 17)

GUICtrlCreateLabel("Speed:", 9, 77, 36, 17)

Local $speed = GUICtrlCreateSlider(46, 70, 200, 31)

GUICtrlCreateLabel("Low", 49, 107, 26, 17)

GUICtrlCreateLabel("Hi", 229, 107, 20, 17)

GUICtrlCreateLabel("Volume:", 9, 132, 38, 17)

Local $volume = GUICtrlCreateSlider(46, 125, 200, 31)

GUICtrlSetData($speed, 10 * IniRead(@ScriptDir & "\config.ini", "Options", "TalkSpeed", 0))

Local $GetSpeed = GUICtrlRead($speed) / 10

GUICtrlSetData($volume, IniRead(@ScriptDir & "\config.ini", "Options", "TalkVolume", 0))

Local $GetVolume = GUICtrlRead($volume)

Local $objVoice = ObjCreate("SAPI.SpVoice")

$objVoice.Volume = $GetVolume

$objVoice.Rate = $GetSpeed

For $strVoice In $objVoice.GetVoices

$Temp = $strVoice.GetDescription

_GUICtrlComboAddString($voices, $Temp)

Next

_GUICtrlComboSetCurSel($voices, 0)

GUISetState(@SW_SHOW, $TTSGui)

While 1

$TTSMsg = GUIGetMsg()

Switch $TTSMsg

Case $GUI_EVENT_CLOSE

GUIDelete($TTSGui)

ExitLoop

Case $speed

$GetSpeed = GUICtrlRead($speed) / 10

IniWrite(@ScriptDir & "\config.ini", "Options", "TalkSpeed", $GetSpeed)

$objVoice.Rate = $GetSpeed

Case $volume

$GetVolume = GUICtrlRead($volume)

IniWrite(@ScriptDir & "\config.ini", "Options", "TalkVolume", $GetVolume)

$objVoice.Volume = $GetVolume

Case $stop

$objVoice = ObjCreate("Sapi.SpVoice")

Case $play

If GUICtrlRead($voices) = "" Then

MsgBox(16, "Error", "You need to select a voice first.")

ContinueLoop

EndIf

$objVoice.Voice = $objVoice.GetVoices("Name=" & GUICtrlRead($voices), "Language=409" ).Item(0)

$objVoice.Speak(GUICtrlRead($type), 1)

EndSwitch

WEnd

EndFunc ;==>TextToSpeach

Func pigto()

_GUICtrlEditReplaceSel($type, True, ConvertToPig(GetSelectedText($type)))

EndFunc ;==>pigto

Func pigfrom()

_GUICtrlEditReplaceSel($type, True, ConvertFromPig(GetSelectedText($type)))

EndFunc ;==>pigfrom

And here is the TextManipulation.au3 include

CODE
#cs ----------------------------------------------------------------------------

AutoIt Version: 3.2.8.1

Author: NerdFencer

Script Function:

Does advanced find/replace text.

Contains only modular functions, these are not tied to TypeBasic and may

easily be used in any other application.

#ce ----------------------------------------------------------------------------

; Script Start

#include <GuiEdit.au3>

; I modded the one in GuiEdit.au3 to make it better for this aplication

Func _GuiCtrlEditModedFind(ByRef $h_gui, ByRef $h_Edit, $b_replace = False, $s_WinTitle = "", $s_WinText = "")

If Not _IsClassName($h_Edit, "Edit") Then Return SetError($EC_ERR, $EC_ERR, 0)

Local $gui_Search, $Input_Search, $Input_Replace, $lbl_replace, $msg_find

Local $pos = 0, $case, $occurance = 0, $Replacements = 0

Local $chk_wholeonly, $chk_matchcase, $btn_FindNext, $btn_replace, $btn_close, $StatusBar1

Local $s_text, $a_sel

Local $a_PartsRightEdge[3] = [125, 225, -1]

Local $a_PartsText[3] = ["", "", ""], $t_pos

Local $times = 0

Local $numreplacements, $replacement, $case

If $b_replace = False Then

Local $gui_search_title = "Find"

Local $gui_search_height = 130

Else

Local $gui_search_title = "Replace"

Local $gui_search_height = 177

EndIf

If $s_WinTitle <> "" Then

$s_text = ControlGetText($s_WinTitle, $s_WinText, $h_Edit)

$a_sel = _GUICtrlEditGetSel($h_Edit)

Else

$s_text = GUICtrlRead($h_Edit)

$a_sel = _GUICtrlEditGetSel($h_Edit)

EndIf

$gui_Search = GUICreate($gui_search_title, 349, $gui_search_height, -1, -1, BitOR($WS_CHILD, $WS_MINIMIZEBOX, $WS_CAPTION, $WS_POPUP, $WS_SYSMENU), -1, $h_gui)

$StatusBar1 = _GUICtrlStatusBarCreate($gui_Search, $a_PartsRightEdge, $a_PartsText)

_GUICtrlStatusBarSetText($StatusBar1, "Find: ", 0)

GUISetIcon(@SystemDir & "\shell32.dll", 22, $gui_Search)

GUICtrlCreateLabel("Find what:", 9, 10, 53, 16, $SS_CENTER)

$Input_Search = GUICtrlCreateInput("", 80, 8, 257, 21)

If (IsArray($a_sel) And $a_sel <> $EC_ERR) Then

GUICtrlSetData($Input_Search, StringMid($s_text, $a_sel[1] + 1, $a_sel[2] - $a_sel[1]))

If $a_sel[1] <> $a_sel[2] Then ; text was selected when function was invoked

$pos = $a_sel[1]

If BitAND(GUICtrlRead($chk_matchcase), $GUI_CHECKED) = $GUI_CHECKED Then $case = 1

$occurance = 1

While 1 ; set the current occurance so search starts from here

$t_pos = StringInStr($s_text, GUICtrlRead($Input_Search), $case, $occurance)

If Not $t_pos Then ; this should never happen, but just in case

$occurance = 0

ExitLoop

ElseIf $t_pos = $pos + 1 Then ; found the occurance

ExitLoop

EndIf

$occurance += 1

WEnd

EndIf

_GUICtrlStatusBarSetText($StatusBar1, "Find: " & GUICtrlRead($Input_Search), 0)

EndIf

$lbl_replace = GUICtrlCreateLabel("Replace with:", 9, 42, 69, 17, $SS_CENTER)

$Input_Replace = GUICtrlCreateInput(ClipGet(), 80, 40, 257, 21)

$chk_wholeonly = GUICtrlCreateCheckbox("Match whole word only", 9, 72, 145, 17)

$chk_matchcase = GUICtrlCreateCheckbox("Match case", 9, 96, 145, 17)

$btn_FindNext = GUICtrlCreateButton("Find Next", 168, 72, 161, 21, 0)

$btn_replace = GUICtrlCreateButton("Replace", 168, 96, 161, 21, $BS_DEFPUSHBUTTON )

$btn_replace_all = GUICtrlCreateButton("Replace All", 168, 130, 161, 21, 0)

If $b_replace = False Then

GUICtrlSetState($lbl_replace, $GUI_HIDE)

GUICtrlSetState($Input_Replace, $GUI_HIDE)

GUICtrlSetState($btn_replace, $GUI_HIDE)

GUICtrlSetState($btn_replace_all, $GUI_HIDE)

$btn_close = GUICtrlCreateButton("Close", 168, 69, 161, 21, 0)

GUICtrlSetPos($chk_wholeonly, 9, 45)

GUICtrlSetPos($chk_matchcase, 9, 69)

GUICtrlSetPos($btn_FindNext, 168, 45)

Else

_GUICtrlStatusBarSetText($StatusBar1, "Replacements: " & $Replacements, 1)

_GUICtrlStatusBarSetText($StatusBar1, "With: ", 2)

$btn_close = GUICtrlCreateButton("Close", 9, 130, 100, 21, 0)

EndIf

GUISetState(@SW_SHOW)

While 1

$msg_find = GUIGetMsg()

Select

Case $msg_find = $GUI_EVENT_CLOSE Or $msg_find = $btn_close

ExitLoop

Case $msg_find = $btn_FindNext

GUICtrlSetState($btn_FindNext, $GUI_DISABLE)

GUICtrlSetCursor($btn_FindNext, 15)

Sleep(100)

_GUICtrlStatusBarSetText($StatusBar1, "Find: " & GUICtrlRead($Input_Search), 0)

If $b_replace = True Then

_GUICtrlStatusBarSetText($StatusBar1, "Find: " & GUICtrlRead($Input_Search), 0)

_GUICtrlStatusBarSetText($StatusBar1, "With: " & GUICtrlRead($Input_Replace), 2)

EndIf

_GuiCtrlEditFindText ($h_Edit, $Input_Search, $chk_matchcase, $chk_wholeonly, $pos, $occurance, $Replacements, $s_WinTitle, $s_WinText)

Sleep(100)

GUICtrlSetState($btn_FindNext, $GUI_ENABLE)

GUICtrlSetCursor($btn_FindNext, 2)

Case $msg_find = $btn_replace

GUICtrlSetState($btn_replace, $GUI_DISABLE)

GUICtrlSetCursor($btn_replace, 15)

_GUICtrlStatusBarSetText($StatusBar1, "Find: " & GUICtrlRead($Input_Search), 0)

_GUICtrlStatusBarSetText($StatusBar1, "With: " & GUICtrlRead($Input_Replace), 2)

If $pos Then

_GUICtrlEditReplaceSel($h_Edit, True, GUICtrlRead($Input_Replace))

$Replacements += 1

$occurance -= 1

_GUICtrlStatusBarSetText($StatusBar1, "Replacements: " & $Replacements, 1)

EndIf

_GuiCtrlEditFindText ($h_Edit, $Input_Search, $chk_matchcase, $chk_wholeonly, $pos, $occurance, $Replacements, $s_WinTitle, $s_WinText)

GUICtrlSetState($btn_replace, $GUI_ENABLE)

GUICtrlSetCursor($btn_replace, 2)

Case $msg_find = $btn_replace_all

_GUICtrlEditSetSel($h_edit, 0, -1)

If GUICtrlRead($chk_matchcase) = 4 Then

$case = 0

Else

$case = 1

EndIf

$replacement = StringReplace(GUICtrlRead($h_edit), GUICtrlRead($Input_Search), GUICtrlRead($Input_Replace), 0, $case)

$numreplacements = @extended

$Replacements += $numreplacements

_GUICtrlStatusBarSetText($StatusBar1, "Replacements: " & $Replacements, 1)

_GUICtrlEditReplaceSel($h_Edit, True, $replacement)

MsgBox(48, "Replace All", "The number of replacements done was " & $numreplacements)

EndSelect

WEnd

GUIDelete($gui_Search)

EndFunc ;==>_GuiCtrlEditModedFind

;Note:only needed for legacy code replace all

Func _GuiCtrlEditFindTextMod(ByRef $h_Edit, ByRef $Input_Search, ByRef $chk_matchcase, ByRef $chk_wholeonly, ByRef $pos, ByRef $occurance, ByRef $Replacements, $s_WinTitle = "", $s_WinText = "")

If Not _IsClassName ($h_Edit, "Edit") Then Return SetError($EC_ERR, $EC_ERR, 0)

Local $case = 0, $whole = 0

Local $s_text, $exact = False

Local $s_find = GUICtrlRead($Input_Search)

Local $rev = 1

If $s_WinTitle <> "" Then

$s_text = ControlGetText($s_WinTitle, $s_WinText, $h_Edit)

Else

$s_text = GUICtrlRead($h_Edit)

EndIf

If BitAND(GUICtrlRead($chk_matchcase), $GUI_CHECKED) = $GUI_CHECKED Then $case = 1

If BitAND(GUICtrlRead($chk_wholeonly), $GUI_CHECKED) = $GUI_CHECKED Then $whole = 1

If $s_find <> "" Then

$occurance += 1

$pos = StringInStr($s_text, $s_find, $case, $occurance)

If $whole And $pos Then

Local $c_compare2 = StringMid($s_text, $pos + StringLen($s_find), 1)

If $pos = 1 Then

If ($pos + StringLen($s_find)) - 1 = StringLen($s_text) Or _

($c_compare2 = " " Or $c_compare2 = @LF Or $c_compare2 = @CR Or _

$c_compare2 = @CRLF Or $c_compare2 = @TAB) Then $exact = True

Else

Local $c_compare1 = StringMid($s_text, $pos - 1, 1)

If ($pos + StringLen($s_find)) - 1 = StringLen($s_text) Then

If ($c_compare1 = " " Or $c_compare1 = @LF Or $c_compare1 = @CR Or _

$c_compare1 = @CRLF Or $c_compare1 = @TAB) Then $exact = True

Else

If ($c_compare1 = " " Or $c_compare1 = @LF Or $c_compare1 = @CR Or _

$c_compare1 = @CRLF Or $c_compare1 = @TAB) And _

($c_compare2 = " " Or $c_compare2 = @LF Or $c_compare2 = @CR Or _

$c_compare2 = @CRLF Or $c_compare2 = @TAB) Then $exact = True

EndIf

EndIf

If $exact = False Then ; found word, but as part of another word, so search again

_GuiCtrlEditFindTextMod($h_Edit, $Input_Search, $chk_matchcase, $chk_wholeonly, $pos, $occurance, $Replacements, $s_WinTitle, $s_WinText)

Else ; found it

_GUICtrlEditSetSel($h_Edit, $pos - 1, ($pos + StringLen($s_find)) - 1)

_GUICtrlEditScroll($h_Edit, $SB_SCROLLCARET)

EndIf

ElseIf $whole And Not $pos Then ; no more to find

$occurance = 0

$rev = 0

;MsgBox(48, "Find", "Reached End of document, Can not find the string '" & $s_find & "'")

ElseIf Not $whole Then

If Not $pos Then ; wrap around search and select

$occurance = 1

_GUICtrlEditSetSel($h_Edit, -1, 0)

_GUICtrlEditScroll($h_Edit, $SB_SCROLLCARET)

$pos = StringInStr($s_text, $s_find, $case, $occurance)

If Not $pos Then ; no more to find

$occurance = 0

$rev = 0

;MsgBox(48, "Find", "Reached End of document, Can not find the string '" & $s_find & "'")

Else ; found it

_GUICtrlEditSetSel($h_Edit, $pos - 1, ($pos + StringLen($s_find)) - 1)

_GUICtrlEditScroll($h_Edit, $SB_SCROLLCARET)

EndIf

Else ; set selection

_GUICtrlEditSetSel($h_Edit, $pos - 1, ($pos + StringLen($s_find)) - 1)

_GUICtrlEditScroll($h_Edit, $SB_SCROLLCARET)

EndIf

EndIf

EndIf

Return $rev

EndFunc ;==>_GuiCtrlEditFindText

Func ConvertSelectedCase($h_edit, $case = 1)

Local $text = GetSelectedText($h_edit)

Local $words, $word, $firstrun = 1

If $case = 1 Then

$text = StringUpper($text)

ElseIf $case = 0 Then

$text = StringLower($text)

ElseIf $case = 2 Then

$text = StringLower($text)

$words = StringSplit($text," ")

$text = ""

For $word In $words

If $firstrun <> 1 Then

$word = StringUpper(StringLeft($word,1)) & StringTrimLeft($word,1)

$text = $text & $word & ' '

Else

$firstrun=0

EndIf

Next

EndIf

_GUICtrlEditReplaceSel($h_Edit, True, $text)

If Not @error Then

Return 1

Else

Return 0

EndIf

EndFunc

Func GotoLine(ByRef $h_gui, ByRef $h_Edit)

Local $gui_Goto, $msg_goto, $goto_input, $go_button, $close_button, $temp

$gui_goto = GUICreate("Goto Line", 200, 59)

$goto_input = GUICtrlCreateInput("", 8, 8, 184, 21)

$go_button = GUICtrlCreateButton("Go", 8, 33, 88, 21)

$close_button = GUICtrlCreateButton("Close", 104, 33, 88, 21)

GUISetState(@SW_SHOW)

While 1

$msg_goto = GUIGetMsg()

Select

Case $msg_goto = $GUI_EVENT_CLOSE Or $msg_goto = $close_button

GUIDelete($gui_goto)

ExitLoop

Case $msg_goto = $go_button

If StringIsDigit(GUICtrlRead($goto_input)) Then

_GUICtrlEditLineScroll($h_gui, 0, -_GUICtrlEditGetLineCount($h_gui))

For $temp = 0 To Number(GUICtrlRead($goto_input))

_GUICtrlEditScroll ( $h_edit, $SB_LINEDOWN )

Next

;_GUICtrlEditLineScroll($h_gui, 0, Number(GUICtrlRead($goto_input)))

Else

MsgBox(48, "Goto Line", "Error")

EndIf

EndSelect

WEnd

EndFunc

;not used...Yet

Func Chomp($String)

If StringRight ( $String, 1 ) = Chr(1) Then

$String = StringTrimRight ( $String, 1 )

EndIf

Return $String

EndFunc

Func GetSelectedText($h_edit)

Local $a_sel = _GUICtrlEditGetSel($h_Edit)

Return StringMid(GUICtrlRead($h_edit), $a_sel[1] + 1, $a_sel[2] - $a_sel[1])

EndFunc

;This whole thing right here is translation

Func RotThirteen($text = "Reebe")

Local $letter, $letterIndex, $alphabet, $case, $output=" "

For $letterIndex = 2 to StringLen($text)+1

$letter = StringMid($text, $letterIndex-1, 1)

If StringIsLower($letter) Then

$case = 0

Else

$letter = StringLower($letter)

$case = 1

EndIf

If $letter = 'a' Then

$letter = 'n'

ElseIf $letter = 'b' Then

$letter = 'o'

ElseIf $letter = 'c' Then

$letter = 'p'

ElseIf $letter = 'd' Then

$letter = 'q'

ElseIf $letter = 'e' Then

$letter = 'r'

ElseIf $letter = 'f' Then

$letter = 's'

ElseIf $letter = 'g' Then

$letter = 't'

ElseIf $letter = 'h' Then

$letter = 'u'

ElseIf $letter = 'i' Then

$letter = 'v'

ElseIf $letter = 'j' Then

$letter = 'w'

ElseIf $letter = 'k' Then

$letter = 'x'

ElseIf $letter = 'l' Then

$letter = 'y'

ElseIf $letter = 'm' Then

$letter = 'z'

ElseIf $letter = 'n' Then

$letter = 'a'

ElseIf $letter = 'o' Then

$letter = 'b'

ElseIf $letter = 'p' Then

$letter = 'c'

ElseIf $letter = 'q' Then

$letter = 'd'

ElseIf $letter = 'r' Then

$letter = 'e'

ElseIf $letter = 's' Then

$letter = 'f'

ElseIf $letter = 't' Then

$letter = 'g'

ElseIf $letter = 'u' Then

$letter = 'h'

ElseIf $letter = 'v' Then

$letter = 'i'

ElseIf $letter = 'w' Then

$letter = 'j'

ElseIf $letter = 'x' Then

$letter = 'k'

ElseIf $letter = 'y' Then

$letter = 'l'

ElseIf $letter = 'z' Then

$letter = 'm'

EndIf

If $case Then

$letter = StringUpper($letter)

EndIf

$output = $output & $letter

Next

$output = StringMid($output, 2, StringLen($output))

Return $output

EndFunc

Func ALBED_to($text = "Reebe")

Local $letter, $letterIndex, $alphabet, $case, $output=" "

For $letterIndex = 2 to StringLen($text)+1

$letter = StringMid($text, $letterIndex-1, 1)

If StringIsLower($letter) Then

$case = 0

Else

$letter = StringLower($letter)

$case = 1

EndIf

If $letter = 'a' Then

$letter = 'e'

ElseIf $letter = 'b' Then

$letter = 'p'

ElseIf $letter = 'c' Then

$letter = 's'

ElseIf $letter = 'd' Then

$letter = 't'

ElseIf $letter = 'e' Then

$letter = 'i'

ElseIf $letter = 'f' Then

$letter = 'w'

ElseIf $letter = 'g' Then

$letter = 'k'

ElseIf $letter = 'h' Then

$letter = 'n'

ElseIf $letter = 'i' Then

$letter = 'u'

ElseIf $letter = 'j' Then

$letter = 'v'

ElseIf $letter = 'k' Then

$letter = 'g'

ElseIf $letter = 'l' Then

$letter = 'c'

ElseIf $letter = 'm' Then

$letter = 'l'

ElseIf $letter = 'n' Then

$letter = 'r'

ElseIf $letter = 'o' Then

$letter = 'y'

ElseIf $letter = 'p' Then

$letter = 'b'

ElseIf $letter = 'q' Then

$letter = 'x'

ElseIf $letter = 'r' Then

$letter = 'h'

ElseIf $letter = 's' Then

$letter = 'm'

ElseIf $letter = 't' Then

$letter = 'd'

ElseIf $letter = 'u' Then

$letter = 'o'

ElseIf $letter = 'v' Then

$letter = 'f'

ElseIf $letter = 'w' Then

$letter = 'z'

ElseIf $letter = 'x' Then

$letter = 'q'

ElseIf $letter = 'y' Then

$letter = 'a'

ElseIf $letter = 'z' Then

$letter = 'j'

EndIf

If $case Then

$letter = StringUpper($letter)

EndIf

$output = $output & $letter

Next

$output = StringMid($output, 2, StringLen($output))

Return $output

EndFunc

Func ALBED_from($text = "Reebe")

Local $letter, $letterIndex, $alphabet, $case, $output=" "

For $letterIndex = 2 to StringLen($text)+1

$letter = StringMid($text, $letterIndex-1, 1)

If StringIsLower($letter) Then

$case = 0

Else

$letter = StringLower($letter)

$case = 1

EndIf

If $letter = 'e' Then

$letter = 'a'

ElseIf $letter = 'p' Then

$letter = 'b'

ElseIf $letter = 's' Then

$letter = 'c'

ElseIf $letter = 't' Then

$letter = 'd'

ElseIf $letter = 'i' Then

$letter = 'e'

ElseIf $letter = 'w' Then

$letter = 'f'

ElseIf $letter = 'k' Then

$letter = 'g'

ElseIf $letter = 'n' Then

$letter = 'h'

ElseIf $letter = 'u' Then

$letter = 'i'

ElseIf $letter = 'v' Then

$letter = 'j'

ElseIf $letter = 'g' Then

$letter = 'k'

ElseIf $letter = 'c' Then

$letter = 'l'

ElseIf $letter = 'l' Then

$letter = 'm'

ElseIf $letter = 'r' Then

$letter = 'n'

ElseIf $letter = 'y' Then

$letter = 'o'

ElseIf $letter = 'b' Then

$letter = 'p'

ElseIf $letter = 'x' Then

$letter = 'q'

ElseIf $letter = 'h' Then

$letter = 'r'

ElseIf $letter = 'm' Then

$letter = 's'

ElseIf $letter = 'd' Then

$letter = 't'

ElseIf $letter = 'o' Then

$letter = 'u'

ElseIf $letter = 'f' Then

$letter = 'v'

ElseIf $letter = 'z' Then

$letter = 'w'

ElseIf $letter = 'q' Then

$letter = 'x'

ElseIf $letter = 'a' Then

$letter = 'y'

ElseIf $letter = 'j' Then

$letter = 'z'

EndIf

If $case Then

$letter = StringUpper($letter)

EndIf

$output = $output & $letter

Next

$output = StringMid($output, 2, StringLen($output))

Return $output

EndFunc

Func ConvertToPig($text)

Local $output="", $words, $word, $first_letter, $first_word = 1, $temp, $add="", $temptwo

Local $alphabet = "a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z"

$alphabet = StringSplit($alphabet,",")

$words = StringSplit($text, " ")

For $word in $words

If $first_word <> 1 Then

$add=""

$temptwo=1

$first_letter = StringLeft($word,1)

$last_letter = StringRight($word,1)

For $temp In $alphabet

If StringLower($last_letter) = $temp Then

$temptwo=0

EndIf

Next

If $temptwo = 1 Then

$add = $last_letter

$word = StringTrimRight($word,1)

EndIf

If $first_letter = "a" Or $first_letter = "e" Or $first_letter = "i" Or $first_letter = "o" Or $first_letter = "u" Or $first_letter = "y" Then

$word=$word&"way"

Else

$word=StringTrimLeft($word,1)&StringLeft($word,1)&"ay"

EndIf

$output = $output & " " & $word & $add

Else

$first_word = 0

EndIf

Next

Return StringTrimLeft($output,1)

EndFunc

Func ConvertFromPig($text)

Local $output, $word, $ending, $first_word=1, $add, $temp, $temptwo

Local $alphabet = "a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z"

$alphabet = StringSplit($alphabet,",")

Local $words = StringSplit($text, " ")

For $word In $words

If $first_word <> 1 Then

$add=""

$temptwo=1

$last_letter = StringRight($word,1)

For $temp In $alphabet

If StringLower($last_letter) = $temp Then

$temptwo=0

EndIf

Next

If $temptwo = 1 Then

$add = $last_letter

$word = StringTrimRight($word,1)

EndIf

If StringRight($word,3) = "way" Then

$word = StringTrimRight($word,3)

ElseIf StringRight($word,2) = "ay" Then

$word = StringTrimRight(StringRight($word,3),2) & StringTrimRight($word,3)

EndIf

$output = $output & " " & $word & $add

Else

$first_word = 0

EndIf

Next

Return StringTrimLeft($output,1)

EndFunc

Here is the updated config.ini file

CODE
[WelcomeDialog]

RunEveryTime=0

Size=10

Weight=400

Att=0

Face=Courier New

Color=16777215

DefaultSize=10

DefaultWeight=400

DefaultAtt=0

DefaultFace=Courier New

DefaultColor=0x000000

ZoomSpeed=1

[Options]

FadeOut=0

FadeSpeed=10

QuitConfirmation=0

MenuColor=4

DateFormat=1

TimeFormat=1

TalkSpeed=4.4

TalkVolume=100

[Memory]

LastOpened=C:\Documents and Settings\Team 484\My Documents\Untitled.txt

Transparent=1

Transparency=150

[Language]

Version="TypeBasic 0.25"

The ModernMenu.au3 file, and the Modern Icon Pack.icl file remain the same from the original download.

P.S.

Yes I know Rot13, and Albed are implemented badly...

_________[u]UDFs[/u]_________-Mouse UDF-Math UDF-Misc Constants-Uninstaller Shell

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...