2010-04-07 17 views
9

Me muero por saber cómo puedo hacer una GUI para ffmpeg y jhead en OSX. He estado buscando una solución por un tiempo y pensé que ustedes, los usuarios de stackoverflow, podrían ayudarme. Tal vez conozcas algún documento con el que no me haya encontrado o, mejor dicho, un tutorial para hacer una GUI.¿Cómo puedo hacer una interfaz gráfica de usuario para una herramienta de línea de comandos en OSX?

Me encantan estas dos herramientas pero me gusta la simplicidad de las operaciones de arrastrar/soltar.

Nota: No necesito una GUI para ellos, quiero hacer una.

+0

posible duplicado de http://stackoverflow.com/questions/2346171/writing-gui-frontend-for-commandline-application-in-mac-os-x – extraneon

Respuesta

7

No es un tutorial para envolver las herramientas de línea de comandos utilizando NSTask, en el sitio de cacao Dev central:

Es pocos años ahora, sino que debe comienza.

+0

¡Eso es más o menos lo que estaba buscando! Empezaré = D ¡Gracias! –

-1

En su disco Leopard/Snow Leopard puede encontrar XCode, pero también puede descargarlo de Apple Developer Community. XCode viene con Interface Builder, que te permite construir GUI's y puedes armar tus comandos usando el framework Cocoa.

0

Puede que esta no sea la mejor respuesta pero en el libro "Xcode unleashed" es un capítulo sobre cómo insertar una herramienta de línea de comandos dentro de una aplicación Cocoa. Tal vez deberías echarle un vistazo. Buen libro de todos modos.

+0

He estado queriendo leer ese libro por un tiempo , ahora, pero nunca funcionó ... –

-1

Usted es demasiado tarde, ya que hay una interfaz GUI para ffmpeg llamados ffmpegX, pero de todos modos, debe crear un modelo que, o bien envolturas o utiliza la biblioteca o ejecutable .... si se utiliza el ejecutable que puede utilizar popen para invocar el ejecutable, escribir en su STDIN y leer de su STDOUT. La vista y el controlador serían básicamente los mismos que diseñaría para cualquier otra aplicación GUI. Como esta es una publicación de Cocoa, puede usar Objective-C y Cocoa para hacer la GUI, pero realmente puede implementarse en cualquier idioma.

+0

Lo sé pero ffmpegX no es exactamente el tipo de software que me gusta (arrastrar, soltar, convertir, hacer), demasiados ajustes repartidos en una interfaz similar a Windows llena de controles. Me gustaría construir algo como EasyWMV: http://www.easywma.com/wmv/ –

2

Si está preguntando "¿Cómo creo una aplicación de GUI en Mac OS X que interactúa con una herramienta de línea de comandos?" La respuesta es NSTask. Aunque, si la herramienta de línea de comandos proporciona una API de programación, usar eso sería preferible a invocar a la herramienta de línea de comandos.

Si se está preguntando "¿Cómo creo una aplicación de GUI en Mac OS X?", La respuesta es leer un libro sobre él y ver los documentos del tutorial de Apple. Cocoa Programming en Mac OS X de Aaron Hillegass fue mi punto de partida.

2

¿Quieres decir algo así como Miro video converter?

+0

Básicamente, sí! No existía, pero si de alguna manera aprendí cómo hacer mi propia interfaz, también haré una para * jhead * y otro software de línea de comandos increíble. –

0

Puede utilizar un lenguaje de scripting como Tcl, Python o Ruby con un conjunto de herramientas como Tk que utiliza widgets nativos en el mac.

1

Primero cree una NIB Modal Dialog con la GUI necesaria.
Cuando se invoca en C, crea una NSReleasePool y luego la salsa mágica.

[NSApplication sharedApplication]  
ProcessSerialNumber psn; 
GetCurrentProcess(&psn); 
TransformProcessType(&psn,kProcessTransformToForegroundApplication); 
SetFrontProcess(&psn); 

tarde después de cargar la SEMILLA del paquete, tema

[NSApp runModalForWindow:[controller window]]; 
[[controller window] close]; 

Sin la TransfromProcessType(), la aplicación Terminal obtendrá las pulsaciones del teclado, no el diálogo modal.

Cuestiones relacionadas