he conseguido un iphone

Re: he conseguido un iphone

Postby mastintin » Wed Oct 27, 2010 5:02 pm

Como no tengo acceso al repositorio desde donde estoy , os dejo aqui unas cuantas funciones para añadir ...
Son funciones curiosas y estan sin probar aún.
Funcion SetIdLETimer() y getIdleTimer() activa desactiva y mira el estado del autoreposo.
Función setproximimonitor() comprueba si el dispositivo tiene sensor de proximidad , sino lo tiene nos da un aviso , si lo tiene lo activa o desactiva segun el parametro pasado .
Funcion phoneCall() llama al número de telefono pasado como parametro ( ojo texto).
Saludos.
Code: Select all  Expand view


HB_FUNC( SETIDLETIMER )
{
[[UIApplication sharedApplication] setIdleTimerDisabled:hb_parnl( 1 )];
}

HB_FUNC( GETIDLETIMER )
{
hb_retl( [[UIApplication sharedApplication] isIdleTimerDisabled] );
}

HB_FUNC( SETPROXIMONITOR )
{
UIDevice *device = [UIDevice currentDevice];
device.proximityMonitoringEnabled = YES;
if (device.proximityMonitoringEnabled == YES)
{
[ device setProximityMonitoringEnabled:hb_parnl( 1 )];

}
else
{
Msginfo("Dispositivo sin sensor de proximidad")
}
}

HB_FUNC( PHONECALL )
{
 NSString *ctelf = [ [ [ NSString alloc ] initWithCString: ISCHAR( 1 ) ? hb_parc( 1 ) : "" ] autorelease ]
 NSString *cURL =  [ [ [ NSString alloc ] initWithCString: "tel:"   ] autorelease ];     
   
        cURL = [cURL stringByAppendingString:ctelf ];
NSURL *phoneNumberURL = [NSURL URLWithString: cURL ];
[[UIApplication sharedApplication] openURL:phoneNumberURL];
}

 
User avatar
mastintin
 
Posts: 1516
Joined: Thu May 27, 2010 2:06 pm

Re: he conseguido un iphone

Postby Antonio Linares » Wed Oct 27, 2010 6:13 pm

mastintin wrote:¿ Esa funcionando el tutor7 ? .Me está dando error al cambiar de tab y en principio tengo todo actualizado.mirar si podeis confirmarlo .
Saludos.


Manuel,

Borrado todo, hecho un checkout limpio y funcionando bien tutor07 :-)
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 41315
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Re: he conseguido un iphone

Postby mastintin » Wed Oct 27, 2010 8:20 pm

Perfecto ,pero no esta funcionando bien . Si pulso primero el primer boton en vez el segundo el view que se ve es el segundo , si luego al pulsar el segundo se ve el view primero .
He realizado unos cambios en la clase y en el tutor7 y ahora podemos asociar un view a cada tab . El cambio entre views lo he realizado en el tutor7 pero tendria que estar mas bien en la clase . Es una manera de implementarlo , vosotros direis.
Lo Subo al repositorio.

---------------- edito --------------------
Por cierto el codigo del phonecall() funciona perfecto :D ....
Añadida function smscall() tambien funciona ...
User avatar
mastintin
 
Posts: 1516
Joined: Thu May 27, 2010 2:06 pm

Re: he conseguido un iphone

Postby mastintin » Thu Oct 28, 2010 2:58 pm

Nueva function para view.m , aun sin probar si funciona o no ....
coloca una imagen como fondo de un view ..
Saludos.
Code: Select all  Expand view


 HB_FUNC( VIEWBKGIMG )
{
   UIView * view = ( UIView * ) hb_parnl( 1 );
   NSString * cImage = [ [ [ NSString alloc ] initWithCString: ISCHAR( 2 ) ? hb_parc( 2 ) : "" ] autorelease ];
   
   UIColor* BgrImg = [[UIColor alloc] initWithPatternImage[UIImage imageNamed:cImage]];
   view.backgroundColor = BgrImg ;
   [BgrImg release];        
}  
 


___________________ edito -----------------------------

Probado y funcionando .
User avatar
mastintin
 
Posts: 1516
Joined: Thu May 27, 2010 2:06 pm

Re: he conseguido un iphone

Postby mastintin » Thu Oct 28, 2010 8:13 pm

He estado observando los programas propios deel iphone . Veo que cada View de un tab tiene su propia barra de navegación diferente a otor view ...
Si colocamos una barra de navegación en un view y intentamos ejecutar el programa ( tutor07 ) nos da una serie de mensajes de error ,si los pasamos ,al final la barrase pinta correctamente . Debemos cambiar la forma de implementar las barrasa de navegacion para que admitan los view .
Mirando las classes encuentro una cosa extraña , siendo en principio window la clase "primaria" de un programa sobre la que en principio se colocan los distintos views , es window quien hereda de view ...
pienso que lo correcto sería que windows al crearse Generara un view "primario" donde se colocaran los controles ... de esa forma el control de eventos se haría por el view asi como el contenido de toolbar ,navbar y demas controles , pasaria a ser window la clase primaria de la que hereda view ¿ no?
Un saludo.
User avatar
mastintin
 
Posts: 1516
Joined: Thu May 27, 2010 2:06 pm

Re: he conseguido un iphone

Postby Antonio Linares » Fri Oct 29, 2010 12:13 am

Manuel,

En la jerarquía de clases del iOS, la Clase UIWindow deriva de la Clase UIView. Es decir, una ventana es un UIView tambien, por lo que no es necesario crear un view contenido por la ventana, salvo que queramos una forma cómoda de pasar de un grupo de controles a otro (en Windows usamos cajas de dialogo no modales, y aqui serían UIViews).

Los controles derivan directamente desde UIView y no de UIWindow. Es algo que tiene una cierta lógica, pues una ventana ofrece una serie de funcionalidades que no necesitan los controles. En Windows todo son ventanas, por eso TControl deriva de TWindow en FWH.
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 41315
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Re: he conseguido un iphone

Postby mastintin » Fri Oct 29, 2010 7:13 am

Antonio Linares wrote:Manuel,

En la jerarquía de clases del iOS, la Clase UIWindow deriva de la Clase UIView. Es decir, una ventana es un UIView tambien, por lo que no es necesario crear un view contenido por la ventana, salvo que queramos una forma cómoda de pasar de un grupo de controles a otro (en Windows usamos cajas de dialogo no modales, y aqui serían UIViews).

Los controles derivan directamente desde UIView y no de UIWindow. Es algo que tiene una cierta lógica, pues una ventana ofrece una serie de funcionalidades que no necesitan los controles. En Windows todo son ventanas, por eso TControl deriva de TWindow en FWH.

Ok comprendido .Da gusto como explicas las cosas . :)

Por otro lado y volviendo al problema . Está claro que dentro de un programa pueden existir varias barras de navegación y que estas derivan de view directamente asi que lo logico ( creo yo) es que la propiedad onavbar pase a twiew . Otra opcion es crear un array de navbars , segun que item del tab se muestra se muestra "su" navbar , este array puede estar o bien en la clase windows o en la clase tabbar ( esto es lo que me parece que hace el ejemplo TabSampleBar que estamos usando ) .Yo pienso que es mejor la primera opción ¿no?.
Saludos.
User avatar
mastintin
 
Posts: 1516
Joined: Thu May 27, 2010 2:06 pm

Re: he conseguido un iphone

Postby mastintin » Fri Oct 29, 2010 7:53 am

Por cierto el viewbackimg()...
Image
User avatar
mastintin
 
Posts: 1516
Joined: Thu May 27, 2010 2:06 pm

Re: he conseguido un iphone

Postby Antonio Linares » Fri Oct 29, 2010 11:30 pm

mastintin wrote:Por cierto el viewbackimg()...
Image


Manuel,

Que nombre de imagen has usado ?
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 41315
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Re: he conseguido un iphone

Postby Daniel Garcia-Gil » Sat Oct 30, 2010 2:31 am

Primera version de la clase slider

Image


* new class slider
+ tutorslider.prg
+ slider.prg
+ sliders.m
! makefile
! fmsgs,h
! fivephone.ch

* class label
+ method SetText
! labels.m
! label.prg
User avatar
Daniel Garcia-Gil
 
Posts: 2365
Joined: Wed Nov 02, 2005 11:46 pm
Location: Isla de Margarita

Re: he conseguido un iphone

Postby Antonio Linares » Sat Oct 30, 2010 5:55 am

Daniel,

Muy bueno! :-)

Gracias!!!
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 41315
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Re: he conseguido un iphone

Postby Antonio Linares » Sat Oct 30, 2010 7:42 am

He subido un nuevo ejemplo slider2.prg que pretende usar tres sliders para cambiar el color de la ventana, pero algo debo estar haciendo mal :-)
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 41315
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Re: he conseguido un iphone

Postby mastintin » Sat Oct 30, 2010 7:52 am

Antonio Linares wrote:
mastintin wrote:Por cierto el viewbackimg()...
Image


Manuel,

Que nombre de imagen has usado ?

La imagen esta en el repositorio en el directorio images , back.png .

En otro orden de cosas ,he estado intentando solucionar el problema del navBar con varios views ( TABS) ,pero no consiguo hacer que funcione bien del todo .
Comento lo quue he hecho y hasta donde he llegado ...
he puesto una data oNavBar a la clase view para poder ponerle una barra de navegación . En el archivo navBars.m he cambiado estas lineas :
Code: Select all  Expand view


Window * miwindow = ( Window * ) hb_parnl( 1 );
.......
   [ item setLeftBarButtonItem : [ [ UIBarButtonItem alloc ] initWithTitle : left style : UIBarButtonItemStyleBordered target :[ miwindow window] action : @selector( BarLeftClick: ) ] animated : FALSE ];
   [ item setRightBarButtonItem : [ [ UIBarButtonItem alloc ] initWithTitle : right style : UIBarButtonItemStyleBordered target : [miwindow window] action : @selector( BarRightClick: ) ] animated : FALSE ];

 


De esta manera consiguo que rute el evento a a la window raiz en vez a el view ... hasta aqui funciona ya que el evento llega al HandleEvent.
El problema está aqui :
llega hasta el msginfo("si") , pero no se como indicarle que navbar lo desencadena .
Una opción es crear una clase navbaritem , que vendría bien para poder gestionarlos distintos estilos de boton y que esta fuera la que tuviera el codeblock a ejecutar ... gracias al hsender si sabriamos que control manda el clik ....

Code: Select all  Expand view

   case nMsg == WM_BARRIGHTCLICK
          msginfo("si")
           if ! Empty( ::oNavBar )
              MsgInfo("yo")
              ::oNavBar:RightClick()
           endif
 


Un Saludo.
User avatar
mastintin
 
Posts: 1516
Joined: Thu May 27, 2010 2:06 pm

Re: he conseguido un iphone

Postby Antonio Linares » Sat Oct 30, 2010 8:00 am

Antonio Linares wrote:He subido un nuevo ejemplo slider2.prg que pretende usar tres sliders para cambiar el color de la ventana, pero algo debo estar haciendo mal :-)


Solucionado (habia un bug en la gestión de colores de los views) y subido :-)

Code: Select all  Expand view
function Main()

   local oWnd := TWindow():New(), oSlider1, oSlider2, oSlider3
   
   oSlider1 = TSlider():New( oWnd, 10, 100, 300, 50,, 1, 255 )
   
   oSlider2 = TSlider():New( oWnd, 10, 200, 300, 50,, 1, 255 )
   
   oSlider3 = TSlider():New( oWnd, 10, 300, 300, 50,, 1, 255 )
   
   oSlider1:bChanged := oSlider2:bChanged := oSlider3:bChanged := ;
   { | oSelf | oWnd:SetBkgColor( oSlider1:nValue, oSlider2:nValue, oSlider3:nValue, 255 * 255 ) }
   
   oWnd:Activate()
   
return nil    
 

Image
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 41315
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Re: he conseguido un iphone

Postby Antonio Linares » Sat Oct 30, 2010 5:02 pm

Subido el primer prototipo de la Clase TImageView y samples/image.prg

Aun no muestra nada (?) pero bueno, ya lo solucionaremos :-)
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 41315
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

PreviousNext

Return to FiveMac / FivePhone (iPhone, iPad)

Who is online

Users browsing this forum: No registered users and 22 guests