Sign in Join
Wiki copytemporary

Free Pascal Window Manager/es: what changed

Revision 2 to 3. Removed lines have a minus sign; added lines have a plus sign.

OldNewLine
11## Historia
22
33![](/wiki-images/d/d0/Screenshot-fpwm.png)
44
55   El Gestor de Ventanas de Free Pascal comenzó su diseño en el año 2006. Fué una iniciativa de Andrew Haines, Daniel Franzini y Felipe Monteiro de Carvalho. La mayor motivación para comenzar el proyecto fue para propiciar una gran visibilidad para las aplicaciones escritas en Free Pascal, que encara dificultades para encontrar un adecuado desarrollo en Linux, debido a que sus diferentes distribuciones (distros) prefieren diseñar sus programas estándar empaquetándolos para cada Gestor de Ventanas (Window Manager), tales como Gnome, KDE, ....
66
77   FPWM (Free Pascal Window Manager) pretende ser simple, pero fácil de utilizar, y que además disponga de un conjunto de aplicaciones útiles. Este conjunto de aplicaciones se desarrolla en el proyecto "Suite de Aplicaciones de FreePascal" [[Free Pascal Application Suite]]. Desafortunadamente, debido a la falta de tiempo libre y de suficiente conocimiento de X11 y a las dificultades en general para encontrar información sobre como escribir un Gestor de Ventanas, el proyecto se estancó pronto.
88
99   En la segunda mitad de 2010 la universidad de São Paulo por medio del Prof. Dr. Pedro Luiz Pizzigatti Corrêa relanzó el proyecto creando un equipo de 4 estudiantes dispuestos a colaborar en su desarrollo durante un semestre como parte del curso de ingeniería en la universidad. Esto contaba como 2 créditos. En este proyecto, con la mayor parte del código y soluciones provinientes de Felipe, alcanzó la conversión total del Gestor de Ventanas *wm2* a Pascal, haciéndolo ya funcional hacia el principio de 2011.
1010
1111   El siguiente paso después de alcanzar un Gestor de Ventanas funcional es modificar las ventanas para lograr una disposición más normal.
1212
1313## Guía de uso
1414
1515   FPWM debería ser simple, liviano y fácil de utilizar. Debería ser usable tanto para dispositivos tipo tabletas / pantallas táctiles como para ordenadores de escritorio con ratón. Debería proveer de una barra de tareas similar a la de Windows, además de iconos en el escritorio (típico de un gestor de escritorio). Debería tener bordes e iconos largos en modo tableta y una apariencia más común en la modalidad escritorio. Debería además proveer un área para iconos en la barra de sistema así como respetar las especificaciones Free Desktop para Gestores de Ventanas.
1616
1717## Subversion
1818
19-` svn co `[`https://fpwm.svn.sourceforge.net/svnroot/fpwm`](https://fpwm.svn.sourceforge.net/svnroot/fpwm)` fpwm`
19+```text
20+ svn co https://fpwm.svn.sourceforge.net/svnroot/fpwm fpwm
21+```
2022
2123## Arbol de Código
2224
23-` `[`http://sourceforge.net/p/fpwm/code/HEAD/tree/`](http://sourceforge.net/p/fpwm/code/HEAD/tree/)
25+```text
26+ http://sourceforge.net/p/fpwm/code/HEAD/tree/
27+```
2428
2529## Tutorials
2630
2731### Instalando Linux en una máquina virtual dentro Windows
2832
2933- Primero descarga Virtual PC: [Descargar la versión completa de Microsoft Virtual PC 2007](http://www.microsoft.com/downloads/details.aspx?FamilyID=04d26402-3199-48a3-afa2-2dc0b40a73b6&DisplayLang=en)
3034
3135- Tutorial para instalar Linux en Virtual PC: [Correr Linux bajo Windows](http://www.pcreview.co.uk/articles/Windows/Run_Linux_in_Windows/)
3236
3337Adicionalmente teniendo soporte para virtualización a nivel de hardware, es perfectamente factible utilizando sobre la máquina física una instalación de Linux teniendo las ventajas que aporta KVM y LibVirt para hacer esto mismo bajo un linux, permitiéndonos tener instantaneas de la virtualización para guardar el progreso del proyecto.
3438
3539### Configurando la pantalla de login en Linux
3640
3741#### Añadiendo XTerm como opción en la pantalla de login
3842
3943   Para propósitos de depuración se puede añadir XTerm como un Gestor de Ventanas en la pantalla de login.
4044
4145   Entones cuando nos logeamos seleccionamos XTerm destro del listado de Gestores de Ventanas. Esto abrirá un entorno X11 vacío (X11 es el servidor de entorno gráfico de Linux sobre el que se instala el resto de Gestores de Ventana y Gestores de Escritorio) con una instancia de XTerm (Terminal del sistema X, que es el equivalente la línea de mandatos de otros shell, para entendernos). Por decirlo de un modo muy, muy, pero que muy simplista sería como tener el antiguo initgraph que arrancariamos con una orden tal como xinit (lógicamente no tiene punto de comparación, para más información leer <http://es.wikipedia.org/wiki/Sistema_de_ventanas_X> ).
4246
4347   Una vez que nos encontramos en dicha línea de mandatos podemos o bien arrancar simplemente el sistema gráfico X con xinit que no nos dará más que una ventana por así decirlo o bien arrancar un Gestor de Ventanas real como fpwm por ejemplo.
4448
4549   Se pueden utilizar los siguientes mandatos de terminal para arrancar **fpwm**:
4650
4751 cd /trayecto/a/fpwm
4852 xinit
4953 ./'''fpwm<'''
5054
5155   Como es un gestor de ventanas lo primero que hace es chequear si ya existe otro cargado, en mi caso lo arranco desde la línea de mandatos sin que previamente arranque ningún otro.
5256
5357A fecha Marzo de 2017 lo he compilado y una vez arrancado me sale una ventana donde se pueden escribir mandatos para arrancar aplicaciones por ejemplo **fp** o **startlazarus**.
5458
5559Una aplicación interesante como complemento es **idesk** que nos va a permitir tener iconos en el escritorio, además de permitirnos definir un fondo de pantalla.
5660
5761   Para añadir XTerm en el listado de elecciones, debería añadirse el fichero 99xterm.desktop a una carpeta que contenga un fichero .desktop por Gestor de Ventanas. Este fichero se puede obtener desde <http://fpwm.svn.sourceforge.net/viewvc/fpwm/resources/99XTERM.desktop?revision=107&view=markup>
5862
5963   Y debería ser similar a esto:
6064
6165 [Desktop Entry]
6266 Encoding=UTF-8
6367 Name=XTerm
6468 Comment=XTerm
6569 TryExec=xterm
6670 Exec=/usr/share/X11/xdm/Xsession xterm
6771 Icon=
6872 Type=Application
6973
7074   En Mandriva Linux con GDM (gestor de login Gnome) la carpeta para ubicar este fichero es: /etc/X11/dm/Sessions/
7175
7276   En Mandriva Linux con KDM (gestor de login KDE) la carpeta para ubicar este fichero es: /usr/share/apps/kdm/sessions/
7377
7478## Proyecto Lap-Tupniquim
7579
7680   Este Gestor de Ventanas debería utilizarse en los escritorios digitales de las escuelas brasileñas si se comprueba que es suficientemente bueno para ello:
7781
7882- Project Lap-Tupniquim: <http://www.youtube.com/watch?v=GvEv0aWo94Q>
7983
8084## Incidencias
8185
8286\<\<\< Marzo 2017 \>\>\>
8387
8488Tratando de compilarlo (ultimo snapshot desde sourceforge) desde Lazarus 1.6 con FPC 3.0.0 genera el siguiente error:
8589
8690Compilar Proyecto, Objetivo: fpwm: Código de salida 256, errores: 1 sugerencias: 4
8791
8892fpwmrotated.pas(406,34) Error: Illegal type conversion: "ShortString" to "Pchar"
8993
9094El resto de sugerencias son:
9195
9296fpwmgeneral.pas(65,17) Hint: Local variable "sAct" does not seem to be initialized
9397
9498fpwmgeneral.pas(21,6) Hint: Unit "xlib" not used in fpwmgeneral
9599
96100xproto.pas(74,6) Hint: Unit "x" not used in xproto
97101
98102xproto.pas(74,9) Hint: Unit "xmd" not used in xproto
99103
100104Si comento la línea del error compila correctamente. A continuación arranco xinit y después ./fpwm pero únicamente sale una pequeña ventana que puedo cerrar a modo de shell. No muestra icononos ni una barra de menú funcional. No se si alguien utiliza este gestor pero es una pena que probablemente con pocos retoques funcionaría bien.
101105
102106Tengo instalado otro gestor de ventanas y funciona bien, también arranca correctamente el sistema X con xinit.
103107
104108## Noticias
105109
106110Existe un fork de fpwm en GitHub que se basa en FreePascal y fpGUI, aunque ya indica que no tiene espectativas de dedicar mucho tiempo al proyecto, pero que si admite gente que contribuya con parches o que lo mejore.
107111
108112<https://github.com/andrewd207/fpwm>
109113
110114## External links
111115
112116- [X11 Book: Manual de Programación de Xlib](http://www.niksula.hut.fi/~jkirma/books/xlib.pdf)
113117- [Manual de Convenciones de comunicación Entre-Clientes](http://tronche.com/gui/x/icccm/)
114118
115119---
116120*From the Free Pascal wiki, page "Free Pascal Window Manager/es", as it stood on 2017-03-24 after a change by Jma sp, out of the wiki's dump of 2024-05-26. Copyright stays with the author who wrote it, according to the old wiki's [[Licensing]] page. If you have concerns about this material, [message the admin](/wiki-contact).*
117121Category: Castellano
118122Category: Español
119123Category: FPC/es
120124Category: GUI/es

Back to history