STDMETHODIMP ecom_control_library::ui_window::SetActiveObject(  /* [in] */ ::IOleInPlaceActiveObject * p_active_object, /* [in] */ LPCOLESTR  psz_obj_name )

/*-----------------------------------------------------------
  No description available.
-----------------------------------------------------------*/
{
  ECATCH;

  EIF_OBJECT tmp_p_active_object = NULL;
  if (p_active_object != NULL)
  {
    tmp_p_active_object = eif_protect (grt_ce_control_interfaces2.ccom_ce_pointed_interface_214 (p_active_object));
    p_active_object->AddRef ();
  }
  EIF_OBJECT tmp_psz_obj_name = NULL;
  if (psz_obj_name != NULL)
  {
    tmp_psz_obj_name = eif_protect (rt_ce.ccom_ce_lpwstr ((LPOLESTR)psz_obj_name, NULL));
  }
  
  EIF_PROCEDURE eiffel_procedure = 0;
  eiffel_procedure = eif_procedure ("set_active_object", type_id);

  (FUNCTION_CAST (void, (EIF_REFERENCE, EIF_REFERENCE, EIF_REFERENCE))eiffel_procedure) (eif_access (eiffel_object), ((tmp_p_active_object != NULL) ? eif_access (tmp_p_active_object) : NULL), ((tmp_psz_obj_name != NULL) ? eif_access (tmp_psz_obj_name) : NULL));
  if (tmp_p_active_object != NULL)
    eif_wean (tmp_p_active_object);
  if (tmp_psz_obj_name != NULL)
    eif_wean (tmp_psz_obj_name);
  
  END_ECATCH;
  return S_OK;
};
STDMETHODIMP ecom_control_library::IEnumUnknown_impl_stub::Next(  /* [in] */ ULONG celt, 
                                                                  /* [out] */ IUnknown * * rgelt, 
                                                                  /* [out] */ ULONG * pcelt_fetched )

/*-----------------------------------------------------------
  No description available.
-----------------------------------------------------------*/
{
  ECATCH;

  EIF_INTEGER tmp_celt = (EIF_INTEGER)celt;
  EIF_OBJECT tmp_rgelt = NULL;
  if (rgelt != NULL)
  {
    tmp_rgelt = eif_protect (rt_ce.ccom_ce_array_unknown (rgelt, 1, (int*)&celt, NULL));
  }
  EIF_OBJECT tmp_pcelt_fetched = NULL;
  if (pcelt_fetched != NULL)
  {
    tmp_pcelt_fetched = eif_protect (rt_ce.ccom_ce_pointed_unsigned_long (pcelt_fetched, NULL));
  }
  
  EIF_PROCEDURE eiffel_procedure = 0;
  eiffel_procedure = eif_procedure ("next", type_id);

  (FUNCTION_CAST (void, (EIF_REFERENCE, EIF_INTEGER, EIF_REFERENCE, EIF_REFERENCE))eiffel_procedure) (eif_access (eiffel_object), (EIF_INTEGER)tmp_celt, ((tmp_rgelt != NULL) ? eif_access (tmp_rgelt) : NULL), ((tmp_pcelt_fetched != NULL) ? eif_access (tmp_pcelt_fetched) : NULL));
  
  rt_ec.ccom_ec_array_unknown (((tmp_rgelt != NULL) ? eif_wean (tmp_rgelt) : NULL), 1, *rgelt);
  rt_ec.ccom_ec_pointed_unsigned_long (((tmp_pcelt_fetched != NULL) ? eif_wean (tmp_pcelt_fetched) : NULL), pcelt_fetched);
  
  END_ECATCH;
  return S_OK;
};
Ejemplo n.º 3
0
EIF_OBJ bstr_to_eif_obj (BSTR BstrName)

// Transform BSTR into Eiffel STRING object
{
  EIF_OBJ name;
  size_t bstr_size;
  char * str_name;

  if (BstrName != NULL)
  {
    bstr_size = SysStringLen (BstrName);
    str_name = (char *) malloc (bstr_size + 1);

    wcstombs (str_name, BstrName, bstr_size);
    str_name [bstr_size] = '\0';

    name = eif_protect (eif_string (str_name));
    free (str_name);
  }
  else
  {
	name = eif_protect (eif_string (""));
  }
  return name;
};
STDMETHODIMP ecom_control_library::IEnumUnknown_impl_stub::Clone(  /* [out] */ ::IEnumUnknown * * ppenum )

/*-----------------------------------------------------------
  No description available.
-----------------------------------------------------------*/
{
  ECATCH;

  EIF_OBJECT tmp_ppenum = NULL;
  if (ppenum != NULL)
  {
    *ppenum = NULL;
    tmp_ppenum = eif_protect (grt_ce_control_interfaces2.ccom_ce_pointed_cell_191 (ppenum, NULL));
  }
  
  EIF_PROCEDURE eiffel_procedure = 0;
  eiffel_procedure = eif_procedure ("clone1", type_id);

  (FUNCTION_CAST (void, (EIF_REFERENCE, EIF_REFERENCE))eiffel_procedure) (eif_access (eiffel_object), ((tmp_ppenum != NULL) ? eif_access (tmp_ppenum) : NULL));
  
 grt_ec_control_interfaces2.ccom_ec_pointed_cell_191 (((tmp_ppenum != NULL) ? eif_wean (tmp_ppenum) : NULL), ppenum);
  if (*ppenum != NULL)
    (*ppenum)->AddRef ();
  
  END_ECATCH;
  return S_OK;
};
Ejemplo n.º 5
0
/* Set Eiffel EV_SIMPLE_PROPERTY_SET object address */
void c_set_simple_property_set_object(EIF_REFERENCE a_address)
{
	if (a_address) {
		eiffel_simple_property_set_object = eif_protect (a_address);
	} else {
		eiffel_simple_property_set_object = NULL;
	}
}
Ejemplo n.º 6
0
/* Set Eiffel EV_RIBBON_DISPATCHER object address */
void c_set_eiffel_dispatcher (EIF_REFERENCE a_address)
{
	if (a_address) {
		eiffel_dispatcher = eif_protect (a_address);
	} else {
		eiffel_dispatcher = NULL;
	}
}
Ejemplo n.º 7
0
void epx_set_signal_switch (EIF_POINTER object, EIF_POINTER address) {
#ifdef EIFFEL_VENDOR_VE
  signal_switch_object = eif_adopt(object);
#else
#ifdef EIFFEL_VENDOR_SE
  signal_switch_object = object;
#else
  signal_switch_object = (EIF_REFERENCE) eif_protect(object);
#endif
#endif
  signal_switch_address = address;
}
LPSTR * ecom_gec_string_manipulator_idl_c::ccom_ec_pointed_cell_1( EIF_REFERENCE eif_ref, LPSTR * old )

/*-----------------------------------------------------------
	Convert CELL [STRING] to LPSTR *.
-----------------------------------------------------------*/
{
	EIF_OBJECT eif_object = 0;
	LPSTR * result = 0;
	EIF_REFERENCE cell_item = 0;

	eif_object = eif_protect (eif_ref);
	if (old != NULL)
		result = old;
	else
		result = (LPSTR *) CoTaskMemAlloc (sizeof (LPSTR));
	cell_item = eif_field (eif_access (eif_object), "item", EIF_REFERENCE);
	if (cell_item != NULL)
		*result = rt_ec.ccom_ec_lpstr (cell_item, NULL);
	eif_wean (eif_object);
	return result;
};
EIF_REFERENCE ecom_StringManipulatorLib::StringManipulator::ccom_string(  )

/*-----------------------------------------------------------
	Manipulated string
-----------------------------------------------------------*/
{
	HRESULT hr;
	if (p_IString == NULL)
	{
		hr = p_unknown->QueryInterface (IID_IString_, (void **)&p_IString);
		rt.ccom_check_hresult (hr);
	};
	LPSTR ret_value = 0;
	
	EIF_ENTER_C;
	hr = p_IString->String( &ret_value);
	EIF_EXIT_C;
	rt.ccom_check_hresult (hr);
	
	
	EIF_OBJECT eiffel_result = eif_protect ((EIF_REFERENCE)rt_ce.ccom_ce_lpstr (ret_value, NULL));
	return eif_wean (eiffel_result);
};
STDMETHODIMP ecom_control_library::ui_window::GetBorder(  /* [out] */ ::tagRECT * lprect_border )

/*-----------------------------------------------------------
  No description available.
-----------------------------------------------------------*/
{
  ECATCH;

  EIF_OBJECT tmp_lprect_border = NULL;
  if (lprect_border != NULL)
  {
    tmp_lprect_border = eif_protect (grt_ce_control_interfaces2.ccom_ce_pointed_record_210 ((ecom_control_library::tagRECT *)lprect_border));
  }
  
  EIF_PROCEDURE eiffel_procedure = 0;
  eiffel_procedure = eif_procedure ("get_border", type_id);

  (FUNCTION_CAST (void, (EIF_REFERENCE, EIF_REFERENCE))eiffel_procedure) (eif_access (eiffel_object), ((tmp_lprect_border != NULL) ? eif_access (tmp_lprect_border) : NULL));
  
  
  END_ECATCH;
  return S_OK;
};
STDMETHODIMP ecom_control_library::ui_window::GetWindow(  /* [out] */ HWND * phwnd )

/*-----------------------------------------------------------
  No description available.
-----------------------------------------------------------*/
{
  ECATCH;

  EIF_OBJECT tmp_phwnd = NULL;
  if (phwnd != NULL)
  {
    * phwnd = NULL;
    tmp_phwnd = eif_protect (rt_ce.ccom_ce_pointed_pointer ((void **)phwnd, NULL));
  }
  
  EIF_PROCEDURE eiffel_procedure = 0;
  eiffel_procedure = eif_procedure ("get_window", type_id);

  (FUNCTION_CAST (void, (EIF_REFERENCE, EIF_REFERENCE))eiffel_procedure) (eif_access (eiffel_object), ((tmp_phwnd != NULL) ? eif_access (tmp_phwnd) : NULL));
  
  
  END_ECATCH;
  return S_OK;
};
STDMETHODIMP ecom_control_library::ui_window::SetBorderSpace(  /* [in] */const ::tagRECT * pborderwidths )

/*-----------------------------------------------------------
  No description available.
-----------------------------------------------------------*/
{
  ECATCH;

  EIF_OBJECT tmp_pborderwidths = NULL;
  if (pborderwidths != NULL)
  {
    tmp_pborderwidths = eif_protect (grt_ce_control_interfaces2.ccom_ce_pointed_record_210 ((ecom_control_library::tagRECT *)pborderwidths));
  }
  
  EIF_PROCEDURE eiffel_procedure = 0;
  eiffel_procedure = eif_procedure ("set_border_space", type_id);

  (FUNCTION_CAST (void, (EIF_REFERENCE, EIF_REFERENCE))eiffel_procedure) (eif_access (eiffel_object), ((tmp_pborderwidths != NULL) ? eif_access (tmp_pborderwidths) : NULL));
  if (tmp_pborderwidths != NULL)
    eif_wean (tmp_pborderwidths);
  
  END_ECATCH;
  return S_OK;
};