DEV Community

Query Filter
Query Filter

Posted on

docker-162

; Optimize for AHK v1.1.33.10 stability
#NoEnv
SetBatchLines, -1
SendMode Input

; --- CONFIGURATION ---
TargetLibrary := "citi_nano_demo" 
LibraryIndex := 0
MaxRows := 80                     
FoundMatch := false

MsgBox, 64, AHK Finder, Click directly on the first library entry (under Module SDK) inside the list, then press OK.

; 1. Initialize visual tracking overlay
Progress, M W600 H90 Y100 fm10 fs10,, Waiting for first row..., Dependency Tracker
Progress, 0

; 2. Loop through rows sequentially
Loop, %MaxRows% {
    LibraryIndex++

    ; Flush clipboard completely
    Clipboard := "" 

    ; Trigger IntelliJ's "Edit/View Details" mode to expose the text string
    Send, {F2}
    Sleep, 150 ; Wait for the edit focus state to activate

    ; Select all text and copy it
    Send, ^a
    Sleep, 50
    Send, ^c
    ClipWait, 0.3

    ; Escape the edit mode safely to avoid altering settings
    Send, {Esc}
    Sleep, 100

    CurrentRowText := Trim(Clipboard)

    ; Format the live read string for your tracker window
    if (CurrentRowText = "") {
        DisplayText := "[Empty Clipboard - Hit Esc or adjust window click focus]"
    } else {
        DisplayText := CurrentRowText
        if (StrLen(DisplayText) > 70)
            DisplayText := SubStr(DisplayText, 1, 67) . "..."
    }

    ; Update status percent bar
    Pct := (LibraryIndex / MaxRows) * 100
    Progress, %Pct%, Row [%LibraryIndex%/%MaxRows%] -> "%DisplayText%", Searching: "%TargetLibrary%"

    ; Check for target match (case-insensitive search)
    if (InStr(CurrentRowText, TargetLibrary)) {
        FoundMatch := true
        break
    }

    ; Move down to next dependency item
    Send, {Down}
    Sleep, 100 
}

; 3. Turn off tracker interface
Progress, Off

; 4. Present final findings
if (FoundMatch) {
    MsgBox, 64, Success, Found target library!`n`nIndex Row: %LibraryIndex%`nFull Name: %CurrentRowText%
} else {
    MsgBox, 16, Finished, Scanned %LibraryIndex% rows. "%TargetLibrary%" was not found.
}

ExitApp
Enter fullscreen mode Exit fullscreen mode

Top comments (0)