Yes, it can be done, I have created a similar solution, but I used the standard link button and customized the link dialogue. The user can choose what can of link he wants to create (internal, http://, mail) and when he chooses internal, I show a drop down listbox with all the pages. I create this list from the DB and preload it in javascript. I use a javascript function to toggle the drop down with an input box.