; Clipper - Clipboard manager ; Created by TheNewHunter/TheNewGuy ; Version 0.3553 ; PLEASE leave a like on the post and I will make more software! ;@#############################################################@ ;# Configuration # Configuration # Configuration # Configurati # ;# # $FormName = "Clipper" ;The form's name ;# $FormNameOptions = "Options" ; The options form name ;# ;# # ;# Configuration # Configuration # Configuration # Configurati # ;@#############################################################@ Opt("TrayMenuMode", 3) ;Don't touch unless you understand. [Function: Hides the default AutoIt system tray menu.] $tbOptions = TrayCreateItem("Options") TrayCreateItem("") $tbExit = TrayCreateItem("Exit " & $FormName) $ClipboardLogging = "true" #include ;Don't touch unless you understand. [Function: Include the required library(s).] #include ;Don't touch unless you understand. [Function: Include the required library(s).] #include ;Don't touch unless you understand. [Function: Include the required library(s).] #include ;Don't touch unless you understand. [Function: Include the required library(s).] #include ;Don't touch unless you understand. [Function: Include the required library(s).] #include ;Don't touch unless you understand. [Function: Include the required library(s).] #include ;Don't touch unless you understand. [Function: Include the required library(s).] #include ;Don't touch unless you understand. [Function: Include the required library(s).] If Not FileExists(@ScriptDir & "\Clipboard Logging.txt") Then _FileCreate(@ScriptDir & "\Clipboard Logging.txt") EndIf HotKeySet("^c", "ClipperActivateCopy") HotKeySet("^v", "ClipperActivatePaste") $Form = GUICreate($FormName, 170, 170, 192, 146, BitOR($WS_POPUP, $WS_CAPTION)) $bClipper1 = GUICtrlCreateButton("Save", 16, 8, 137, 25) $bClipper2 = GUICtrlCreateButton("Save", 16, 40, 137, 25) $bClipper3 = GUICtrlCreateButton("Save", 16, 72, 137, 25) $bClipper4 = GUICtrlCreateButton("Save", 16, 104, 137, 25) $bClipper5 = GUICtrlCreateButton("Save", 16, 136, 137, 25) GUISetState(@SW_HIDE) Global $GottenClipboard Global $ClipperData[5] Global $ClipperPopulation[5] Global $LoopLock = "false" Global $ClipboardLogging $ClipperPopulation[0] = "empty" $ClipperPopulation[1] = "empty" $ClipperPopulation[2] = "empty" $ClipperPopulation[3] = "empty" $ClipperPopulation[4] = "empty" Main() Func Main() While 1 Switch TrayGetMsg() Case $tbExit Exit Case $tbOptions tbOptions() EndSwitch WEnd EndFunc ;==>Main Func ClipperActivateCopy() HotKeySet("1", "HotKeyCopy1") HotKeySet("2", "HotKeyCopy2") HotKeySet("3", "HotKeyCopy3") HotKeySet("4", "HotKeyCopy4") HotKeySet("5", "HotKeyCopy5") HotKeySet("^c") Send("^c") HotKeySet("^c", "ClipperActivateCopy") $GottenClipboard = ClipGet() $MousePos = MouseGetPos() WinMove($FormName, "", $MousePos[0], $MousePos[1]) WinActivate($FormName) ControlEnable($FormName, "", $bClipper1) ControlEnable($FormName, "", $bClipper2) ControlEnable($FormName, "", $bClipper3) ControlEnable($FormName, "", $bClipper4) ControlEnable($FormName, "", $bClipper5) If $ClipperPopulation[0] = "true" Then $StringLenght0 = StringLen($ClipperData[0]) $TrimedString0 = StringTrimRight($ClipperData[0], $StringLenght0 - 10) GUICtrlSetData($bClipper1, "Replace " & $TrimedString0 & "..") Else GUICtrlSetData($bClipper1, "Save") EndIf If $ClipperPopulation[1] = "true" Then $StringLenght1 = StringLen($ClipperData[1]) $TrimedString1 = StringTrimRight($ClipperData[1], $StringLenght1 - 10) GUICtrlSetData($bClipper2, "Replace " & $TrimedString1 & "..") Else GUICtrlSetData($bClipper2, "Save") EndIf If $ClipperPopulation[2] = "true" Then $StringLenght2 = StringLen($ClipperData[2]) $TrimedString2 = StringTrimRight($ClipperData[2], $StringLenght2 - 10) GUICtrlSetData($bClipper3, "Replace " & $TrimedString2 & "..") Else GUICtrlSetData($bClipper3, "Save") EndIf If $ClipperPopulation[3] = "true" Then $StringLenght3 = StringLen($ClipperData[3]) $TrimedString3 = StringTrimRight($ClipperData[3], $StringLenght3 - 10) GUICtrlSetData($bClipper4, "Replace " & $TrimedString3 & "..") Else GUICtrlSetData($bClipper4, "Save") EndIf If $ClipperPopulation[4] = "true" Then $StringLenght4 = StringLen($ClipperData[4]) $TrimedString4 = StringTrimRight($ClipperData[4], $StringLenght4 - 10) GUICtrlSetData($bClipper5, "Replace " & $TrimedString4 & "..") Else GUICtrlSetData($bClipper5, "Save") EndIf GUISetState(@SW_SHOW) While 1 If Not WinActive($FormName) Then GUISetState(@SW_HIDE) Main() EndIf $nMsg = GUIGetMsg() Switch $nMsg Case $GUI_EVENT_CLOSE Exit Case $bClipper1 GUISetState(@SW_HIDE) $ClipperData[0] = $GottenClipboard $ClipperPopulation[0] = "true" If $ClipboardLogging = "true" Then $GottenClipboard2 = ClipGet() FileWriteLine(@ScriptDir & "\Clipboard Logging.txt", "[" & @MON & "/" & @MDAY & "/" & @YEAR & "][" & @HOUR & ":" & @MIN & ":" & @SEC & "] [Copied] " & $GottenClipboard2) EndIf Main() Case $bClipper2 GUISetState(@SW_HIDE) $ClipperData[1] = $GottenClipboard $ClipperPopulation[1] = "true" If $ClipboardLogging = "true" Then $GottenClipboard2 = ClipGet() FileWriteLine(@ScriptDir & "\Clipboard Logging.txt", "[" & @MON & "/" & @MDAY & "/" & @YEAR & "][" & @HOUR & ":" & @MIN & ":" & @SEC & "] [Copied] " & $GottenClipboard2) EndIf Main() Case $bClipper3 GUISetState(@SW_HIDE) $ClipperData[2] = $GottenClipboard $ClipperPopulation[2] = "true" If $ClipboardLogging = "true" Then $GottenClipboard2 = ClipGet() FileWriteLine(@ScriptDir & "\Clipboard Logging.txt", "[" & @MON & "/" & @MDAY & "/" & @YEAR & "][" & @HOUR & ":" & @MIN & ":" & @SEC & "] [Copied] " & $GottenClipboard2) EndIf Main() Case $bClipper4 GUISetState(@SW_HIDE) $ClipperData[3] = $GottenClipboard $ClipperPopulation[3] = "true" If $ClipboardLogging = "true" Then $GottenClipboard2 = ClipGet() FileWriteLine(@ScriptDir & "\Clipboard Logging.txt", "[" & @MON & "/" & @MDAY & "/" & @YEAR & "][" & @HOUR & ":" & @MIN & ":" & @SEC & "] [Copied] " & $GottenClipboard2) EndIf Main() Case $bClipper5 GUISetState(@SW_HIDE) $ClipperData[4] = $GottenClipboard $ClipperPopulation[4] = "true" If $ClipboardLogging = "true" Then $GottenClipboard2 = ClipGet() FileWriteLine(@ScriptDir & "\Clipboard Logging.txt", "[" & @MON & "/" & @MDAY & "/" & @YEAR & "][" & @HOUR & ":" & @MIN & ":" & @SEC & "] [Copied] " & $GottenClipboard2) EndIf Main() EndSwitch Switch TrayGetMsg() Case $tbExit Exit Case $tbOptions tbOptions() EndSwitch WEnd EndFunc ;==>ClipperActivateCopy Func HotKeyCopy1() HotKeySet("1") GUISetState(@SW_HIDE) $ClipperData[0] = $GottenClipboard $ClipperPopulation[0] = "true" If $ClipboardLogging = "true" Then $GottenClipboard2 = ClipGet() FileWriteLine(@ScriptDir & "\Clipboard Logging.txt", "[" & @MON & "/" & @MDAY & "/" & @YEAR & "][" & @HOUR & ":" & @MIN & ":" & @SEC & "] [Copied] " & $GottenClipboard2) EndIf Main() EndFunc ;==>HotKeyCopy1 Func HotKeyCopy2() HotKeySet("2") GUISetState(@SW_HIDE) $ClipperData[1] = $GottenClipboard $ClipperPopulation[1] = "true" If $ClipboardLogging = "true" Then $GottenClipboard2 = ClipGet() FileWriteLine(@ScriptDir & "\Clipboard Logging.txt", "[" & @MON & "/" & @MDAY & "/" & @YEAR & "][" & @HOUR & ":" & @MIN & ":" & @SEC & "] [Copied] " & $GottenClipboard2) EndIf Main() EndFunc ;==>HotKeyCopy2 Func HotKeyCopy3() HotKeySet("3") GUISetState(@SW_HIDE) $ClipperData[2] = $GottenClipboard $ClipperPopulation[2] = "true" If $ClipboardLogging = "true" Then $GottenClipboard2 = ClipGet() FileWriteLine(@ScriptDir & "\Clipboard Logging.txt", "[" & @MON & "/" & @MDAY & "/" & @YEAR & "][" & @HOUR & ":" & @MIN & ":" & @SEC & "] [Copied] " & $GottenClipboard2) EndIf Main() EndFunc ;==>HotKeyCopy3 Func HotKeyCopy4() HotKeySet("4") GUISetState(@SW_HIDE) $ClipperData[3] = $GottenClipboard $ClipperPopulation[3] = "true" If $ClipboardLogging = "true" Then $GottenClipboard2 = ClipGet() FileWriteLine(@ScriptDir & "\Clipboard Logging.txt", "[" & @MON & "/" & @MDAY & "/" & @YEAR & "][" & @HOUR & ":" & @MIN & ":" & @SEC & "] [Copied] " & $GottenClipboard2) EndIf Main() EndFunc ;==>HotKeyCopy4 Func HotKeyCopy5() HotKeySet("5") GUISetState(@SW_HIDE) $ClipperData[4] = $GottenClipboard $ClipperPopulation[4] = "true" If $ClipboardLogging = "true" Then $GottenClipboard2 = ClipGet() FileWriteLine(@ScriptDir & "\Clipboard Logging.txt", "[" & @MON & "/" & @MDAY & "/" & @YEAR & "][" & @HOUR & ":" & @MIN & ":" & @SEC & "] [Copied] " & $GottenClipboard2) EndIf Main() EndFunc ;==>HotKeyCopy5 Func ClipperActivatePaste() HotKeySet("1", "HotKeyPaste1") HotKeySet("2", "HotKeyPaste2") HotKeySet("3", "HotKeyPaste3") HotKeySet("4", "HotKeyPaste4") HotKeySet("5", "HotKeyPaste5") $MousePos = MouseGetPos() WinMove($FormName, "", $MousePos[0], $MousePos[1]) WinActivate($FormName) If $ClipperPopulation[0] = "true" Then $StringLenght0 = StringLen($ClipperData[0]) $TrimedString0 = StringTrimRight($ClipperData[0], $StringLenght0 - 10) GUICtrlSetData($bClipper1, "Paste " & $TrimedString0 & "..") Else GUICtrlSetData($bClipper1, "Empty") ControlDisable($FormName, "", $bClipper1) EndIf If $ClipperPopulation[1] = "true" Then $StringLenght1 = StringLen($ClipperData[1]) $TrimedString1 = StringTrimRight($ClipperData[1], $StringLenght1 - 10) GUICtrlSetData($bClipper2, "Paste " & $TrimedString1 & "..") Else GUICtrlSetData($bClipper2, "Empty") ControlDisable($FormName, "", $bClipper2) EndIf If $ClipperPopulation[2] = "true" Then $StringLenght2 = StringLen($ClipperData[2]) $TrimedString2 = StringTrimRight($ClipperData[2], $StringLenght2 - 10) GUICtrlSetData($bClipper3, "Paste " & $TrimedString2 & "..") Else GUICtrlSetData($bClipper3, "Empty") ControlDisable($FormName, "", $bClipper3) EndIf If $ClipperPopulation[3] = "true" Then $StringLenght3 = StringLen($ClipperData[3]) $TrimedString3 = StringTrimRight($ClipperData[3], $StringLenght3 - 10) GUICtrlSetData($bClipper4, "Paste " & $TrimedString3 & "..") Else GUICtrlSetData($bClipper4, "Empty") ControlDisable($FormName, "", $bClipper4) EndIf If $ClipperPopulation[4] = "true" Then $StringLenght4 = StringLen($ClipperData[4]) $TrimedString4 = StringTrimRight($ClipperData[4], $StringLenght4 - 10) GUICtrlSetData($bClipper5, "Paste " & $TrimedString4 & "..") Else GUICtrlSetData($bClipper5, "Empty") ControlDisable($FormName, "", $bClipper5) EndIf GUISetState(@SW_SHOW) While 1 If Not WinActive($FormName) Then GUISetState(@SW_HIDE) Main() EndIf $nMsg = GUIGetMsg() Switch $nMsg Case $GUI_EVENT_CLOSE Exit Case $bClipper1 GUISetState(@SW_HIDE) ClipPut($ClipperData[0]) HotKeySet("^v") Send("^v") HotKeySet("^v", "ClipperActivatePaste") If $ClipboardLogging = "true" Then $GottenClipboard2 = ClipGet() FileWriteLine(@ScriptDir & "\Clipboard Logging.txt", "[" & @MON & "/" & @MDAY & "/" & @YEAR & "][" & @HOUR & ":" & @MIN & ":" & @SEC & "] [Pasted] " & $GottenClipboard2) EndIf Main() Case $bClipper2 GUISetState(@SW_HIDE) ClipPut($ClipperData[1]) HotKeySet("^v") Send("^v") HotKeySet("^v", "ClipperActivatePaste") If $ClipboardLogging = "true" Then $GottenClipboard2 = ClipGet() FileWriteLine(@ScriptDir & "\Clipboard Logging.txt", "[" & @MON & "/" & @MDAY & "/" & @YEAR & "][" & @HOUR & ":" & @MIN & ":" & @SEC & "] [Pasted] " & $GottenClipboard2) EndIf Main() Case $bClipper3 GUISetState(@SW_HIDE) ClipPut($ClipperData[2]) HotKeySet("^v") Send("^v") HotKeySet("^v", "ClipperActivatePaste") If $ClipboardLogging = "true" Then $GottenClipboard2 = ClipGet() FileWriteLine(@ScriptDir & "\Clipboard Logging.txt", "[" & @MON & "/" & @MDAY & "/" & @YEAR & "][" & @HOUR & ":" & @MIN & ":" & @SEC & "] [Pasted] " & $GottenClipboard2) EndIf Main() Case $bClipper4 GUISetState(@SW_HIDE) ClipPut($ClipperData[3]) HotKeySet("^v") Send("^v") HotKeySet("^v", "ClipperActivatePaste") If $ClipboardLogging = "true" Then $GottenClipboard2 = ClipGet() FileWriteLine(@ScriptDir & "\Clipboard Logging.txt", "[" & @MON & "/" & @MDAY & "/" & @YEAR & "][" & @HOUR & ":" & @MIN & ":" & @SEC & "] [Pasted] " & $GottenClipboard2) EndIf Main() Case $bClipper5 GUISetState(@SW_HIDE) ClipPut($ClipperData[4]) HotKeySet("^v") Send("^v") HotKeySet("^v", "ClipperActivatePaste") If $ClipboardLogging = "true" Then $GottenClipboard2 = ClipGet() FileWriteLine(@ScriptDir & "\Clipboard Logging.txt", "[" & @MON & "/" & @MDAY & "/" & @YEAR & "][" & @HOUR & ":" & @MIN & ":" & @SEC & "] [Pasted] " & $GottenClipboard2) EndIf Main() EndSwitch Switch TrayGetMsg() Case $tbExit Exit Case $tbOptions tbOptions() EndSwitch WEnd EndFunc ;==>ClipperActivatePaste Func HotKeyPaste1() GUISetState(@SW_HIDE) ClipPut($ClipperData[0]) HotKeySet("^v") Send("^v") HotKeySet("^v", "ClipperActivatePaste") If $ClipboardLogging = "true" Then $GottenClipboard2 = ClipGet() FileWriteLine(@ScriptDir & "\Clipboard Logging.txt", "[" & @MON & "/" & @MDAY & "/" & @YEAR & "][" & @HOUR & ":" & @MIN & ":" & @SEC & "] [Pasted] " & $GottenClipboard2) EndIf HotKeySet("1") Main() EndFunc ;==>HotKeyPaste1 Func HotKeyPaste2() GUISetState(@SW_HIDE) ClipPut($ClipperData[1]) HotKeySet("^v") Send("^v") HotKeySet("^v", "ClipperActivatePaste") If $ClipboardLogging = "true" Then $GottenClipboard2 = ClipGet() FileWriteLine(@ScriptDir & "\Clipboard Logging.txt", "[" & @MON & "/" & @MDAY & "/" & @YEAR & "][" & @HOUR & ":" & @MIN & ":" & @SEC & "] [Pasted] " & $GottenClipboard2) EndIf HotKeySet("2") Main() EndFunc ;==>HotKeyPaste2 Func HotKeyPaste3() GUISetState(@SW_HIDE) ClipPut($ClipperData[2]) HotKeySet("^v") Send("^v") HotKeySet("^v", "ClipperActivatePaste") If $ClipboardLogging = "true" Then $GottenClipboard2 = ClipGet() FileWriteLine(@ScriptDir & "\Clipboard Logging.txt", "[" & @MON & "/" & @MDAY & "/" & @YEAR & "][" & @HOUR & ":" & @MIN & ":" & @SEC & "] [Pasted] " & $GottenClipboard2) EndIf HotKeySet("3") Main() EndFunc ;==>HotKeyPaste3 Func HotKeyPaste4() GUISetState(@SW_HIDE) ClipPut($ClipperData[3]) HotKeySet("^v") Send("^v") HotKeySet("^v", "ClipperActivatePaste") If $ClipboardLogging = "true" Then $GottenClipboard2 = ClipGet() FileWriteLine(@ScriptDir & "\Clipboard Logging.txt", "[" & @MON & "/" & @MDAY & "/" & @YEAR & "][" & @HOUR & ":" & @MIN & ":" & @SEC & "] [Pasted] " & $GottenClipboard2) EndIf HotKeySet("4") Main() EndFunc ;==>HotKeyPaste4 Func HotKeyPaste5() GUISetState(@SW_HIDE) ClipPut($ClipperData[4]) HotKeySet("^v") Send("^v") HotKeySet("^v", "ClipperActivatePaste") If $ClipboardLogging = "true" Then $GottenClipboard2 = ClipGet() FileWriteLine(@ScriptDir & "\Clipboard Logging.txt", "[" & @MON & "/" & @MDAY & "/" & @YEAR & "][" & @HOUR & ":" & @MIN & ":" & @SEC & "] [Pasted] " & $GottenClipboard2) EndIf HotKeySet("4") Main() EndFunc ;==>HotKeyPaste5 Func tbOptions() GUISetState(@SW_DISABLE, $Form) $FormOptions = GUICreate($FormNameOptions, 251, 193, 192, 124) $_cStartWithWindows = GUICtrlCreateCheckbox("Start with Windows", 8, 8, 113, 17) $_cShowSystemTrayIcon = GUICtrlCreateCheckbox("Show System Tray icon", 8, 32, 137, 17) $_cLogClipboardEvents = GUICtrlCreateCheckbox("Log Clipboard events", 8, 56, 121, 17) $_cDeleteLogsAfter = GUICtrlCreateCheckbox("Delete logs after", 8, 80, 105, 17) $_iDeleteLogsAfter = GUICtrlCreateInput("0", 113, 80, 65, 21, BitOR($GUI_SS_DEFAULT_INPUT, $ES_NUMBER)) $_lDays = GUICtrlCreateLabel("days.", 184, 80, 29, 17) $_bSupportDeveloper = GUICtrlCreateButton("Support Developer", 8, 152, 129, 33) GUICtrlSetFont(-1, 8, 800, 0, "MS Sans Serif") $_lTheme = GUICtrlCreateLabel("Theme", 8, 104, 37, 17) $_coTheme = GUICtrlCreateCombo("Clipper", 48, 104, 129, 25, BitOR($CBS_DROPDOWNLIST, $CBS_AUTOHSCROLL)) $_bClose = GUICtrlCreateButton("Close", 144, 160, 97, 25) GUICtrlSetFont(-1, 9, 400, 0, "Segoe Print") GUICtrlSetState($_cShowSystemTrayIcon, 1) GUICtrlSetState($_cLogClipboardEvents, 1) GUISetState(@SW_SHOW) While 1 $nMsg = GUIGetMsg() $_Reat_cStartWithWindows = GUICtrlRead($_cStartWithWindows) $_Reat_cShowSystemTrayIcon = GUICtrlRead($_cShowSystemTrayIcon) $_Reat_cLogClipboardEvents = GUICtrlRead($_cLogClipboardEvents) $_Reat_cDeleteLogsAfter = GUICtrlRead($_cDeleteLogsAfter) If $_Reat_cStartWithWindows = 1 Then If $LoopLock <> "true" Then MsgBox(64, $FormName, "Drag " & @ScriptName & " into the Startup folder to create the Startup entry.") Run("explorer.exe " & @HomeDrive & "\users\" & @UserName & "\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\") Run("explorer.exe " & @ScriptDir) EndIf $LoopLock = "true" EndIf If $_Reat_cStartWithWindows = 4 Then If $LoopLock <> "false" Then MsgBox(64, $FormName, "Delete " & @ScriptName & " from the Startup folder to delete the Startup entry.") Run("explorer.exe " & @HomeDrive & "\users\" & @UserName & "\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\") EndIf $LoopLock = "false" EndIf If $_Reat_cShowSystemTrayIcon = 1 Then TraySetState($TRAY_ICONSTATE_SHOW) EndIf If $_Reat_cShowSystemTrayIcon = 4 Then TraySetState($TRAY_ICONSTATE_HIDE) EndIf If $_Reat_cLogClipboardEvents = 1 Then $ClipboardLogging = "true" ControlEnable($FormNameOptions, "", $_iDeleteLogsAfter) ControlEnable($FormNameOptions, "", $_cDeleteLogsAfter) EndIf If $_Reat_cLogClipboardEvents = 4 Then $ClipboardLogging = "false" GUICtrlSetState($_cDeleteLogsAfter, 4) ControlDisable($FormNameOptions, "", $_iDeleteLogsAfter) ControlDisable($FormNameOptions, "", $_cDeleteLogsAfter) EndIf If $_Reat_cDeleteLogsAfter = 1 Then $ClipboardLoggingDeleteAfter = "true" $ClipboardLoggingDeleteAfterDays = GUICtrlRead($_iDeleteLogsAfter) EndIf If $_Reat_cLogClipboardEvents = 4 Then $ClipboardLoggingDeleteAfter = "false" EndIf Switch $nMsg Case $GUI_EVENT_CLOSE GUISetState(@SW_HIDE) GUISetState(@SW_ENABLE, $Form) Main() Case $_bSupportDeveloper MsgBox(64,$FormNameOptions,"Leave a like on the developer's (TheNewHunter/TheNewGuy) post to support him!") ShellExecute("www.autoitscript.com/forum/topic/173264-clipper-clipboard-manager/") EndSwitch Switch TrayGetMsg() Case $tbExit Exit Case $tbOptions tbOptions() EndSwitch WEnd EndFunc ;==>tbOptions