I64 MyLeftCB1(CDoc *,CDocEntry *)
{
  I64 i;
  for (i=500;i<1000;i+=25) {
    Snd(Freq2Ona(i));
    Sleep(10);
  }
  Snd;
  return 0;
}

U0 ClickCallBack()
{
  CDocEntry *doc_e;
  DocLock(DocPut);
//The DocPrint() routine returns the addr of the last entry.
  doc_e=DocPrint(DocPut,"\n$MA+LC,\"Click Me\"$ ");
//The LC flag is "has left callback".

  //Flags are explained here:
  //::/Doc/DolDocOverview.DD    ::/Doc/Widget.DD
  //Dollar Flags                ST_DOC_FLAGS
  "(Not preserved if you press <CTRL-t>.)\n\n";
  doc_e->left_cb=&MyLeftCB1;
  DocUnlock(DocPut);
}

ClickCallBack;

I64 MyLeftCB2(CDoc *,CDocEntry *)
{
  return cnts.jiffies;
}

U0 PopUpJiffiesCallBack(I64 i)
{
  CDoc *doc=DocNew;
  CDocEntry *doc_e=DocPrint(doc,
        "Click %d more times\n\n\n$BT+LC,\"Jiffies\"$\n\n\n",i);
  doc_e->left_cb=&MyLeftCB2;
  "Current Jiffies:%d\n",PopUpMenu(doc);
  DocDel(doc);
}

PopUpJiffiesCallBack(3);
PopUpJiffiesCallBack(2);
PopUpJiffiesCallBack(1);