args Path static Base = pprofolder ++ "scripts\ini\FavDoc.ini" static Sec = "Documents" local i, Item, Num, Mouse static Quote = ?+"+ static Items static D = "Doc" static D1 = "Doc1" if(ini.check_exists(Base, Sec, D1) != 1) Items = line(ini.enum_keys(Base, Sec), 0) flag set 1 static v = vec.create(Items + 2) if(not v) do messagebox("ok error", "Vector not created", "FavDoc plugin error #1") quit endif for(i = 1; i <= Items; i++) Item = ini.get(Base, Sec, D ++ i) v[i + 1] = Item if(Item == Path) do flag clear 1 Num = i + 1 endif endfor v[0] = ifelse(pproflag(1), "Add ", "Remove ") ++ Quote ++ Path ++ Quote v[1] = "*sep" win.lastmouse(1) Item = v.showmenu("", "", 1) local Mouse = win.lastmouse(0) if(abs(Item) == 1) do quit elseif(Item == 0) if(pproflag(1)) do //add ini.set(Base, Sec, D1, Path) for(i = 2; i < Items + 2; i++) ini.set(Base, Sec, D ++ i, v[i]) endfor else //remove .@Delete(Num) endif else if(Mouse == 1) do file.doverb(v[Item], "Open") else .@Delete(Item) endif endif quit //=================================================== Function Delete(Num) local Shift, i ini.delete_section(Base, Sec) for(i = 2; i < Num; i++) Shift = i - 1 ini.set(Base, Sec, D ++ Shift, v[i]) endfor for(i = Num + 1; i < Items + 2; i++) Shift = i - 2 ini.set(Base, Sec, D ++ Shift, v[i]) endfor