AutoHotkey: Duplicate starter menu entry: Difference between revisions

From TotalcmdWiki
Jump to navigation Jump to search
(V1.1: now also duplicates entries in directory hotlist)
(Added category AutoHotkey scripts)
Line 79: Line 79:


Back to [[AutoHotkey]]
Back to [[AutoHotkey]]
[[Category:AutoHotkey scripts|Duplicate starter menu entry]]

Revision as of 00:14, 1 June 2008

	; ////////////////////////////////////////////////////////////////////////////
	; // TC_StartMenu_DuplicateEntry.ahk V1.1
	; // (W) StatusQuo 2008 for TC 7.02a (tested up to 7.03)
	; //
	; // Duplicates an entry in TC Start Menu or Directory Hotlist
	; ////////////////////////////////////////////////////////////////////////////

	; *** set window class names
sClassMainWin := "TUSERMENUCHANGE"
sClassDialog  := "TSTDTREEDLG"

	; *** wait for & activate window
WinWait       , ahk_class %sClassMainWin%, 
IfWinNotActive, ahk_class %sClassMainWin%,, WinActivate, ahk_class %sClassMainWin%, 
WinWaitActive , ahk_class %sClassMainWin%,	; main "Change Start Menu"

	; *** store source values
ControlGetText, sText3, TEdit3, ahk_class %sClassMainWin%,	; main window
ControlGetText, sText2, TEdit2, ahk_class %sClassMainWin%,	; main window
ControlGetText, sText1, TEdit1, ahk_class %sClassMainWin%,	; main window
if (sText3 = "")
{
	sDialogType := "dir"
} else {
	sDialogType := "start"
	ControlGet,     iCBox2, Checked,, TCheckBox2, ahk_class %sClassMainWin%,	; main window
	ControlGet,     iCBox1, Checked,, TCheckBox1, ahk_class %sClassMainWin%,	; main window
}

	; *** get entry title
if (sDialogType = "dir")
{
	ControlClick,   TButton4, ahk_class %sClassMainWin%,	; Button "Change Title"; DirMenu
} else {
	ControlClick,   TButton5, ahk_class %sClassMainWin%,	; Button "Change Title"; StartMenu
}
WinWaitActive,                      ahk_class %sClassDialog%,	; dialog  "Change Title"
ControlGetText, sMenuTitle, TEdit1, ahk_class %sClassDialog%	; Title
ControlClick,   TButton1,           ahk_class %sClassDialog%,	; Button Cancel, close "Change Title" dialog
WinWaitActive,                      ahk_class %sClassMainWin%,	; main window

	; *** add new entry
if (sDialogType = "dir")
{
	ControlClick,   TButton7, ahk_class %sClassMainWin%,	; Button "Add Menu Entry"
} else {
	ControlClick,   TButton8, ahk_class %sClassMainWin%,	; Button "Add Menu Entry"
}
WinWaitActive,                               ahk_class %sClassDialog%,	; dialog  "Change Title"
ControlSetText, TEdit1, %sMenuTitle% [copy], ahk_class %sClassDialog%	; Title
ControlClick,   TButton2,                    ahk_class %sClassDialog%,	; Button OK, close "Title" dialog
WinWaitActive,                               ahk_class %sClassMainWin%,	; main window

	; *** fill stored values from source entry
if (sDialogType = "start")
{
	ControlSetText, TEdit3, %sText3%, ahk_class %sClassMainWin%,	; main window
}
ControlSetText, TEdit2, %sText2%, ahk_class %sClassMainWin%,	; main window
ControlSetText, TEdit1, %sText1%, ahk_class %sClassMainWin%,	; main window

if (sDialogType = "start")
{
	if iCBox2
		Control, Check,,   TCheckBox2, ahk_class %sClassMainWin%,	; main window
	else
		Control, UnCheck,, TCheckBox2, ahk_class %sClassMainWin%,	; main window
	if iCBox1
		Control, Check,,   TCheckBox1, ahk_class %sClassMainWin%,	; main window
	else
		Control, UnCheck,, TCheckBox1, ahk_class %sClassMainWin%,	; main window

	; *** set cursor to command value
ControlFocus, TEdit3, ahk_class %sClassMainWin%,	; main window
ControlSend,  TEdit3, {HOME}, 
}

Back to AutoHotkey