he conseguido un iphone

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

Re: he conseguido un iphone

Post by mastintin »

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


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
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Re: he conseguido un iphone

Post by Antonio Linares »

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
mastintin
Posts: 1502
Joined: Thu May 27, 2010 2:06 pm

Re: he conseguido un iphone

Post by mastintin »

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 _ 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: 1502
Joined: Thu May 27, 2010 2:06 pm

Re: he conseguido un iphone

Post by mastintin »

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

Code: Select all


 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: 1502
Joined: Thu May 27, 2010 2:06 pm

Re: he conseguido un iphone

Post by mastintin »

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 . _ 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
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Re: he conseguido un iphone

Post by Antonio Linares »

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 _ 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
mastintin
Posts: 1502
Joined: Thu May 27, 2010 2:06 pm

Re: he conseguido un iphone

Post by mastintin »

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 _ 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: 1502
Joined: Thu May 27, 2010 2:06 pm

Re: he conseguido un iphone

Post by mastintin »

Por cierto el viewbackimg()...
Image
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Re: he conseguido un iphone

Post by Antonio Linares »

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

Que nombre de imagen has usado ?
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Daniel Garcia-Gil
Posts: 2365
Joined: Wed Nov 02, 2005 11:46 pm
Location: Isla de Margarita
Contact:

Re: he conseguido un iphone

Post by Daniel Garcia-Gil »

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
our best documentation is the source code
Isla de Margarita Venezuela.
danielgarciagil@gmail.com
http://tdolphin.blogspot.com/
https://www.dropbox.com/referrals/NTI5N ... rc=global9
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Re: he conseguido un iphone

Post by Antonio Linares »

Daniel,

Muy bueno! :-)

Gracias!!!
regards, saludos

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

Re: he conseguido un iphone

Post by Antonio Linares »

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
mastintin
Posts: 1502
Joined: Thu May 27, 2010 2:06 pm

Re: he conseguido un iphone

Post by mastintin »

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


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

   case nMsg == WM_BARRIGHTCLICK
          msginfo("si")
           if ! Empty( ::oNavBar )
              MsgInfo("yo")
              ::oNavBar:RightClick()
           endif 
 
Un Saludo.
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Re: he conseguido un iphone

Post by Antonio Linares »

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

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: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Re: he conseguido un iphone

Post by Antonio Linares »

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
Post Reply