Ejemplo n.º 1
0
pascal OSStatus
driverchooser_ok_clicked (EventHandlerCallRef inHandlerRef,
    EventRef inEvent, void *inUserData)
{
  TDRIVERCHOOSER *choose_t = (TDRIVERCHOOSER *) inUserData;
  DataBrowserItemID first, last;
  OSStatus err;

  if (choose_t)
    {
      /* Get the selection */
      if ((err =
	      GetDataBrowserSelectionAnchor (choose_t->driverlist, &first,
	       &last)) == noErr)
	{
	  if (first > DBITEM_ID && first <= DBITEM_ID + Drivers_nrows)
	    {
	      /* Get the driver name */
              choose_t->driver =
                convert_CFString_to_wchar(Drivers_array[0][first - DBITEM_ID - 1]);
	    }
	  else
	    choose_t->driver = NULL;
	}
      else
	choose_t->driver = NULL;

      DisposeWindow (choose_t->mainwnd);
	  choose_t->mainwnd = NULL;
      choose_t->driverlist = NULL;
      Drivers_nrows = 0;
    }

  return noErr;
}
Ejemplo n.º 2
0
char* convert_CFString_to_char(const CFStringRef str)
{
  wchar_t *prov = convert_CFString_to_wchar (str);
  char *buffer = NULL;

  if (prov)
    {
      buffer = dm_SQL_W2A (prov, SQL_NTS);
      free(prov);
    }

  return buffer;
}