Hoy toca un código muy rápido para nuestras aplicaciones con Gtk+ (yo he usado la versión 3 para este ejemplo). Lo que haremos será incluir un archivo (el que nosotros queramos) en la lista de «Usados recientemente» de forma que cuando vayamos a algún diálogo de apertura de archivo veamos añadido dicho documento.
Esto puede ser muy útil cuando nuestra aplicación salve o cargue archivos y queramos que el usuario pueda utilizarlos rápidamente desde otra aplicación.… Leer artículo completo
Cómo crear ventanas semitransparentes en Gtk+-3.0 con GtkMM
Es algo que está muy chulo, y puede hacer que la experiencia de usuario de nuestras aplicaciones sea mucho mejor, además de dar un punto friki si queremos intercalar información de fondo, o queremos hacer una animación, una ventana splash chula mientras arranca nuestro programa, etc.Lo que tenemos que hacer es que nuestra ventana se pinte en un contexto RGBA (rojo, verde, azul, alpha), donde alpha es nuestro valor de opacidad.… Leer artículo completo
Conocer el tipo MIME de un archivo gracias a GIO en lenguaje C
La biblioteca GIO nos proporciona una capa más sobre el manejo de archivos. Nos aíslan un poco de las llamadas al sistema operativo para hacer muchas operaciones sobre archivos facilitando el uso de la biblioteca en aplicaciones multiplataforma. Así como dándonos algunas funciones interesantes que ya vienen hechas.
La gran ventaja de GIO frente al acceso normal a un archivo es que hace transparente al programador el acceso a sistemas de archivos compartidos (en Windows, Mac o Linux) sin tener que gastar mucho tiempo en todo eso.… Leer artículo completo
Copiar en el portapapeles un texto desde la línea de comandos [C]
En ocasiones, cuando estamos haciendo shell scripts, surge la necesidad de copiar algo al portapapeles para que el usuario lo utilice, en principio, podemos utilizar xclip, aunque ese sería el portapapeles de X11, ese con el que se copia seleccionando con el ratón, y se pega con el botón del centro (o izquierdo+derecho si emulamos el botón central).
Pero para dar algo de usabilidad (Control+V), y no queremos obligar al usuario a configurar sus gestores de portapapeles, esos grandes desconocidos que suelen estar ahí y nunca hacemos caso…Podemos hacer este pequeño programa en C, que utilizará Gtk para acceder al portapapeles, y escribir en él.… Leer artículo completo
Representar imágenes a pantalla completa con GTK+ en C (y romperles la pantalla del portátil)
Aunque muchos de mis proyectos con GTK+ son en C++, cuando es algo pequeño, es más corto hacerlo en C (aunque una vez que te acostumbras a los objetos, es poco intuitivo).
Lo que vamos a hacer es crear una ventana, introducir una imagen dentro redimensionada para ocupar la pantalla y poner la ventana a pantalla completa (ojo, no en todos los window managers funciona, pero en casi todos). Al final, lo que conseguimos es poner de fondo la imagen que ilustra el post en cualquier pantalla de portátil para conseguir dar un susto al dueño.… Leer artículo completo
Creando un navegador web basado en gtkwebkit y gtkmm [Actualizado: 15/11/2010]
Ahora, vamos a ir un poco más allá, aunque los ejemplos están hechos por mí, en parte me he basado un poco en la documentación de gtkmm (recomendable, llena de ejemplos e información interesante de cada widget), aunque ahora voy a utilizar algo de investigación propia.
El método a seguir será parecido a veces anteriores, un archivo principal, y una clase (con archivos cpp y h). Al compilar el proyecto, ha ocupado entre 45Kb y 60Kb, por lo que para ser un navegador no ocupa demasiado.… Leer artículo completo
Un método para gobernarlos a todos. Identificando quién me llama. [ gtkmm ]
Una de las características que primero quise probar con Gtk era la posibilidad de crear varios botones, que en su signal_clicked llamaran todos al mismo método, y sea éste el que identifique de dónde viene la llamada. Por ejemplo, en Delphi, siempre que se genera un evento onClick se envía la información del Sender al evento para este mismo propósito.
En el siguiente ejemplo, crearemos un objeto de la clase Sender (que será nuestra ventana principal)
[ sendermain.cpp ]
… Leer artículo completo1
2
3
4
5
6
7
8
9
10
11
12
13
14
15#include <gtkmm.h>
#include "sender.h"
int main(int argc, char *argv[])
{
Main entorno (argc, argv);
// Creamos la ventana
Sender swin;
// Ejecutamos
entorno.Interfaces Gráficos en Linux con gtkmm 1 [Hola Mundo]
Aunque a veces, cuando nos dedicamos a programar en Linux, recurrimos a la consola (ya que muchos de nosotros tenemos siempre una abierta), a veces es interesante crear un Interfaz Gráfico de Usuario (en inglés GUI, Graphical User Interface), para ello, si no queremos complicarnos demasiado tenemos dos opciones: Gtk+ y Qt.
Bien, vamos con Gtk+, está muy extendido y escrita en C, aunque aquí hablaré de una interfaz de Gtk+ para C++ llamada gtkmm, que nos proporciona las clases necesarias para jugar con la potencia de Gtk+ de una forma un poco más amigable (ya que podemos crear un botón, una etiqueta o una ventana como objetos de C++, hará todo un poco más intuitivo).… Leer artículo completo
Últimos comentarios