-void InsetUrl::CloseUrlCB(FL_OBJECT * ob, long)
-{
- Holder * holder = static_cast<Holder*>(ob->u_vdata);
-
- InsetUrl * inset = holder->inset;
- BufferView * bv = holder->view;
-
- string url = fl_get_input(inset->fd_form_url->url_name);
- string name = fl_get_input(inset->fd_form_url->name_name);
- string cmdname;
- if (fl_get_button(inset->fd_form_url->radio_html))
- cmdname = "htmlurl";
- else
- cmdname = "url";
-
- Buffer * buffer = bv->buffer();
-
- if ((url != inset->getContents() ||
- name != inset->getOptions() ||
- cmdname != inset->getCmdName())
- && !(buffer->isReadonly()) ) {
- buffer->markDirty();
- inset->setContents(url);
- inset->setOptions(name);
- inset->setCmdName(cmdname);
- if (cmdname == "url")
- inset->flag = InsetUrl::URL;
- else
- inset->flag = InsetUrl::HTML_URL;
- bv->updateInset(inset, true);
- }
-
- if (inset->fd_form_url) {
- fl_hide_form(inset->fd_form_url->form_url);
- fl_free_form(inset->fd_form_url->form_url);
- inset->fd_form_url = 0;
- }
-}