Guile-GNOME: Gdk Version 2.16.2, Updated 9 December 2011

Total Page:16

File Type:pdf, Size:1020Kb

Guile-GNOME: Gdk Version 2.16.2, Updated 9 December 2011 Guile-GNOME: Gdk version 2.16.2, updated 9 December 2011 Damon Chaplin many others This manual is for (gnome gdk) (version 2.16.2, updated 9 December 2011) GDK documentation Copyright 1997-2007 Damon Chaplin and others This work may be reproduced and distributed in whole or in part, in any medium, physical or electronic, so as long as this copyright notice remains intact and unchanged on all copies. Commercial redistribution is permitted and encouraged, but you may not redistribute, in whole or in part, under terms more restrictive than those under which you received it. If you redistribute a modified or translated version of this work, you must also make the source code to the modified or translated version available in electronic form without charge. However, mere aggregation as part of a larger work shall not count as a modification for this purpose. All code examples in this work are placed into the public domain, and may be used, modified and redistributed without restriction. BECAUSE THIS WORK IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE WORK, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRIT- ING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE WORK "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. SHOULD THE WORK PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY REPAIR OR CORREC- TION. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE WORK AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAM- AGES ARISING OUT OF THE USE OR INABILITY TO USE THE WORK, EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. GDK-Pixbuf documentation Copyright 2000 Free Software Foundation. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.1 or any later version published by the Free Software Foundation with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. You may obtain a copy of the GNU Free Documentation License from the Free Software Foundation by visiting their Web site or by writing to: The Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA Many of the names used by companies to distinguish their products and ser- vices are claimed as trademarks. Where those names appear in any GNOME documentation, and those trademarks are made aware to the members of the GNOME Documentation Project, the names have been printed in caps or initial caps. i Short Contents 1 Overview :::::::::::::::::::::::::::::::::::::::::::: 1 2 General ::::::::::::::::::::::::::::::::::::::::::::: 2 3 GdkDisplay :::::::::::::::::::::::::::::::::::::::::: 7 4 GdkDisplayManager :::::::::::::::::::::::::::::::::: 14 5 GdkScreen :::::::::::::::::::::::::::::::::::::::::: 15 6 Points, Rectangles and Regions ::::::::::::::::::::::::: 24 7 Graphics Contexts ::::::::::::::::::::::::::::::::::: 27 8 Drawing Primitives ::::::::::::::::::::::::::::::::::: 32 9 Bitmaps and Pixmaps :::::::::::::::::::::::::::::::: 42 10 GdkRGB ::::::::::::::::::::::::::::::::::::::::::: 44 11 Images ::::::::::::::::::::::::::::::::::::::::::::: 48 12 Pixbufs :::::::::::::::::::::::::::::::::::::::::::: 50 13 Colormaps and Colors :::::::::::::::::::::::::::::::: 54 14 Visuals ::::::::::::::::::::::::::::::::::::::::::::: 56 15 Fonts :::::::::::::::::::::::::::::::::::::::::::::: 59 16 Cursors :::::::::::::::::::::::::::::::::::::::::::: 65 17 Windows ::::::::::::::::::::::::::::::::::::::::::: 69 18 Events ::::::::::::::::::::::::::::::::::::::::::::: 93 19 Event Structures ::::::::::::::::::::::::::::::::::::: 96 20 Key Values ::::::::::::::::::::::::::::::::::::::::: 98 21 Selections:::::::::::::::::::::::::::::::::::::::::: 102 22 Drag and Drop ::::::::::::::::::::::::::::::::::::: 105 23 Properties and Atoms :::::::::::::::::::::::::::::::: 108 24 Threads ::::::::::::::::::::::::::::::::::::::::::: 110 25 Input Devices :::::::::::::::::::::::::::::::::::::: 115 26 Pango Interaction ::::::::::::::::::::::::::::::::::: 118 27 Cairo Interaction :::::::::::::::::::::::::::::::::::: 123 28 X Window System Interaction ::::::::::::::::::::::::: 125 29 The GdkPixbuf Structure::::::::::::::::::::::::::::: 127 30 File Loading ::::::::::::::::::::::::::::::::::::::: 130 31 Image Data in Memory::::::::::::::::::::::::::::::: 132 32 Scaling :::::::::::::::::::::::::::::::::::::::::::: 134 33 Utilities ::::::::::::::::::::::::::::::::::::::::::: 139 34 Animations :::::::::::::::::::::::::::::::::::::::: 141 35 GdkPixbufLoader ::::::::::::::::::::::::::::::::::: 143 ii 36 Module Interface :::::::::::::::::::::::::::::::::::: 147 37 Undocumented ::::::::::::::::::::::::::::::::::::: 148 Type Index :::::::::::::::::::::::::::::::::::::::::::: 149 Function Index ::::::::::::::::::::::::::::::::::::::::: 150 Chapter 1: Overview 1 1 Overview (gnome gdk) wraps the platform-specific layer of +GTK for Guile. It is a part of Guile- GNOME. See the documentation for (gnome gobject) for more information on Guile-GNOME. Chapter 2: General 2 2 General Library initialization and miscellaneous functions 2.1 Overview This section describes the GDK initialization functions and miscellaneous utility functions. 2.2 Usage gdk-get-display-arg-name ) (ret mchars) [Function] Gets the display name specified in the command line arguments passed to gdk-init or gdk-parse-args, if any. ret the display name, if specified explicitely, otherwise#f ` ' this string is owned by GTK+ and must not be modified or freed. Since 2.2 gdk-set-locale ) (ret mchars) [Function] Initializes the support for internationalization by calling the setlocale system call. This function is called by gtk-set-locale and so GTK+ applications should use that instead. The locale to use is determined by the LANG environment variable, so to run an application in a certain locale you can do something like this: export LANG="fr" ... run application ... If the locale is not supported by X then it is reset to the standard "C" locale. ret the resulting locale. gdk-set-sm-client-id (sm client id mchars) [Function] Sets the `SM_CLIENT_ID' property on the application's leader window so that the window manager can save the application's state using the X11R6 ICCCM session management protocol. See the X Session Management Library documentation for more information on ses- sion management and the Inter-Client Communication Conventions Manual (ICCCM) for information on the `WM_CLIENT_LEADER' property. (Both documents are part of the X Window System distribution.) sm-client-id the client id assigned by the session manager when the connection was opened, or `#f' to remove the property. gdk-notify-startup-complete [Function] Indicates to the GUI environment that the application has finished loading. If the applications opens windows, this function is normally called after opening the appli- cation's initial set of windows. Chapter 2: General 3 GTK+ will call this function automatically after opening the first <gtk-window> un- less gtk-window-set-auto-startup-notification is called to disable that feature. Since 2.2 gdk-get-program-class ) (ret mchars) [Function] Gets the program class. Unless the program class has explicitly been set with gdk- set-program-class or with the option, the default value is the program name (de- termined with g-get-prgname) with the first character converted to uppercase. ret the program class. gdk-set-program-class (program class mchars) [Function] Sets the program class. The X11 backend uses the program class to set the class name part of the `WM_CLASS' property on toplevel windows; see the ICCCM. program-class a string. gdk-get-display ) (ret mchars) [Function] Gets the name of the display, which usually comes from the DISPLAY environment variable or the ret the name of the display. gdk-flush [Function] Flushes the X output buffer and waits until all requests have been processed bythe server. This is rarely needed by applications. It's main use is for trapping X errors with gdk-error-trap-push and gdk-error-trap-pop. gdk-screen-width ) (ret int) [Function] Returns the width of the default screen in pixels. ret the width of the default screen in pixels. gdk-screen-height ) (ret int) [Function] Returns the height of the default screen in pixels. ret the height of the default screen in pixels. gdk-screen-width-mm ) (ret int) [Function] Returns the width of the default screen in millimeters. Note that on many X servers this value will not be correct. ret the width of the default screen in millimeters, though it is not always correct. gdk-screen-height-mm ) (ret int) [Function] Returns the height of the default screen in millimeters. Note that on many X servers this value will not be correct. ret the height of the default screen in millimeters, though it is not always correct. Chapter 2: General 4 gdk-pointer-grab (window <gdk-window>)(owner events bool) [Function] (event mask <gdk-event-mask>)(confine to <gdk-window>) (cursor <gdk-cursor>)(time unsigned-int32) ) (ret <gdk-grab-status>) Grabs the pointer (usually a mouse) so that all events are passed to this applica- tion until the pointer is ungrabbed with gdk-pointer-ungrab, or the grab window becomes unviewable. This overrides any previous pointer grab by this client. Pointer grabs are
Recommended publications
  • Current Status of Win32 Gdk Implementation
    Current status of Win32 Gdk implementation Bertrand Bellenot - [email protected] Features (recall) ! Same environment on every system : ! Same look and feel on every platform. ! Simplify the code maintenance : ! No need to care about a « windows specific code ». ! Simplify functionality extension : ! No need to implement the code twice, once for windows and once for other OS. ! Only use TVirtualX. Actual Status (recall) ! The actual code uses a modified version of gdk and glib, the GIMP low-level libraries ported on win32. In practice, this means that we only need to link with gdk.lib, glib.lib and iconv.dll as additional libraries (hopefully less in the future). These libraries are under LGPL, so there are no licensing issues in using and distributing them. ! As original version of gdk was not doing everything needed by root (as font orientation!), I did have to slightly modify the original code. Points fixed since last year ! Some characters were not displayed. " ! Some problems with icon’s transparency. " ! The event handling was not perfect. " ! OpenGL was not working. " Events handling architecture (actual) TSystem CINT TGClient TVirtualX Gdk Threads issue ! From gdk developper FAQ : ! Without some major restructuring in GDK-Win32, I don't think there is any chance that GTK+ would work, in general, in a multi-threaded app, with different threads accessing windows created by other threads. ! One problem is that each thread in Windows have its own message queue. GDK-Win32 currently uses just one "message pump" in the main thread. It will never see messages for windows created by other threads. Threads issue ! As gdk is not thread safe, I had to create a separate thread from within the gdk calls are made.
    [Show full text]
  • The GNOME Desktop Environment
    The GNOME desktop environment Miguel de Icaza ([email protected]) Instituto de Ciencias Nucleares, UNAM Elliot Lee ([email protected]) Federico Mena ([email protected]) Instituto de Ciencias Nucleares, UNAM Tom Tromey ([email protected]) April 27, 1998 Abstract We present an overview of the free GNU Network Object Model Environment (GNOME). GNOME is a suite of X11 GUI applications that provides joy to users and hackers alike. It has been designed for extensibility and automation by using CORBA and scripting languages throughout the code. GNOME is licensed under the terms of the GNU GPL and the GNU LGPL and has been developed on the Internet by a loosely-coupled team of programmers. 1 Motivation Free operating systems1 are excellent at providing server-class services, and so are often the ideal choice for a server machine. However, the lack of a consistent user interface and of consumer-targeted applications has prevented free operating systems from reaching the vast majority of users — the desktop users. As such, the benefits of free software have only been enjoyed by the technically savvy computer user community. Most users are still locked into proprietary solutions for their desktop environments. By using GNOME, free operating systems will have a complete, user-friendly desktop which will provide users with powerful and easy-to-use graphical applications. Many people have suggested that the cause for the lack of free user-oriented appli- cations is that these do not provide enough excitement to hackers, as opposed to system- level programming. Since most of the GNOME code had to be written by hackers, we kept them happy: the magic recipe here is to design GNOME around an adrenaline response by trying to use exciting models and ideas in the applications.
    [Show full text]
  • GTK Lesson 3: Containers
    CSci493.70 Graphical User Interface Programming Prof. Stewart Weiss Lesson 3: Containers Lesson 3: Containers 1 Container Widgets and Packing When you design an application with a graphical user interface, you put various widgets inside of one another and implicitly dene a hierarchy of what's inside of what. This is a containment hierarchy. Some of the widgets you use have specic purposes, such as buttons, text entry boxes, and menus. If you design your GUI on paper, you draw these widgets where you want them and making them the sizes that you want them to be. However, getting them to be in those specic positions with their specic sizes using a library like GTK+ requires that you use widgets whose primary purpose is for laying out other widgets. These widgets are called container widgets. In Lesson 2, we introduced the GtkContainer class, which is the ancestral class of all container widgets and which we now cover in more detail. Recall that containers can be partitioned into two categories: (1) those that can hold only a single child widget, and (2) those that can hold more than one. Containers that can contain only a single widget are called decorator containers, because their principal purpose is to add functionality and decorative eects to the child widget. Containers that can hold several children are called layout containers, because they are used primarily for laying out the child widgets within their (GDK) windows. Layout containers assign sizes and positions to their children. 1.1 The GtkContainer Class Before we look at their concrete subclasses, we will examine what functionality and properties GtkContainers possess.
    [Show full text]
  • Drawing in GTK+
    CSci493.70 Graphical User Interface Programming Prof. Stewart Weiss Drawing in GTK+ Drawing in GTK+ Background In order to understand how to draw in GTK, you rst have to understand something about how GTK draws widgets, because how GTK draws widgets has an important role in how you design your drawing application. An understanding of how GTK draws widgets is also required if you ever plan to build your own custom widgets. Windows and Clipping Most windowing systems are designed around the idea that an application's visual display lies within a rectangular region on the screen called its window. The windowing system, e.g. Gnome or KDE or Explorer, does not automatically save the graphical content of an application's windows; instead it asks the application itself to repaint 1 its windows whenever it is needed. For example, if a window that is stacked below other windows gets raised to the top, then a client program has to repaint the area that was previously obscured. When the windowing system asks a client program to redraw part of a window, it sends an exposure event to the program that contains that window. An exposure event is simply an event sent from the underlying windowing system to a widget to notify it that it must redraw itself. In this context, a "window" means "a rectangular region with automatic clipping", not a top-level application window. Clipping is the act of removing portions of a window that do not need to be redrawn, or looked at the other way, it is determining which are the only regions of a window that must be redrawn.
    [Show full text]
  • Embedded Linux Training
    Free Electrons Embedded Linux training Gregory Clement Thomas Petazzoni Michael Opdenacker Free Electrons. Kernel, drivers and embedded Linux development, consulting, training and support. http//free-electrons.com Rights to copy © Copyright 2004-2011, Free Electrons [email protected] Electronic version of this document available on http://free-electrons.com/doc/training/embedded-linux Updates will be available on http://free-electrons.com/doc/training/embedded-linux/ Attribution ± ShareAlike 3.0 Corrections, suggestions, You are free contributions and translations are welcome! to copy, distribute, display, and perform the work to make derivative works Latest update: Feb 14, 2011 to make commercial use of the work Under the following conditions Attribution. You must give the original author credit. Share Alike. If you alter, transform, or build upon this work, you may distribute the resulting work only under a license identical to this one. For any reuse or distribution, you must make clear to others the license terms of this work. Any of these conditions can be waived if you get permission from the copyright holder. Your fair use and other rights are in no way affected by the above. License text: http://creativecommons.org/licenses/by-sa/3.0/legalcode Free Electrons. Kernel, drivers and embedded Linux development, consulting, training and support. http//free-electrons.com Linux kernel Linux device drivers Free Electrons Board support code Our services Mainstreaming kernel code Kernel debugging Custom Development System integration
    [Show full text]
  • Release Notes for Xfree86® 4.8.0 the Xfree86 Project, Inc December 2008
    Release Notes for XFree86® 4.8.0 The XFree86 Project, Inc December 2008 Abstract This document contains information about the various features and their current sta- tus in the XFree86 4.8.0 release. 1. Introduction to the 4.x Release Series XFree86 4.0 was the first official release of the XFree86 4 series. The current release (4.8.0) is the latest in that series. The XFree86 4.x series represents a significant redesign of the XFree86 X server,with a strong focus on modularity and configurability. 2. Configuration: aQuickSynopsis Automatic configuration was introduced with XFree86 4.4.0 which makes it possible to start XFree86 without first creating a configuration file. This has been further improved in subsequent releases. If you experienced any problems with automatic configuration in a previous release, it is worth trying it again with this release. While the initial automatic configuration support was originally targeted just for Linux and the FreeBSD variants, as of 4.5.0 it also includes Solaris, NetBSD and OpenBSD support. Full support for automatic configuration is planned for other platforms in futurereleases. If you arerunning Linux, FreeBSD, NetBSD, OpenBSD, or Solaris, try Auto Configuration by run- ning: XFree86 -autoconfig If you want to customise some things afterwards, you can cut and paste the automatically gener- ated configuration from the /var/log/XFree86.0.log file into an XF86Config file and make your customisations there. If you need to customise some parts of the configuration while leav- ing others to be automatically detected, you can combine a partial static configuration with the automatically detected one by running: XFree86 -appendauto If you areusing a platform that is not currently supported, then you must try one of the older methods for getting started like "xf86cfg", which is our graphical configuration tool.
    [Show full text]
  • Pygtk GUI Programming Pygtk GUI Programming Table of Contents Pygtk GUI Programming
    PyGTK GUI programming PyGTK GUI programming Table of Contents PyGTK GUI programming...............................................................................................................................1 Chapter 1. Introduzione....................................................................................................................................2 1.1. Primo approccio...............................................................................................................................2 1.2. Il toolkit PyGTK..............................................................................................................................2 1.3. PyGTK e Glade................................................................................................................................2 1.4. IDE o editor......................................................................................................................................4 1.5. Installazione.....................................................................................................................................6 1.5.1. Installazione su piattaforma GNU/Linux...............................................................................6 1.5.2. Installazione su piattaforma Windows...................................................................................6 1.6. Supporto e help................................................................................................................................6 Chapter 2. I Widget, le classi ed un
    [Show full text]
  • Pygtk 2.0 Tutorial
    PyGTK 2.0 Tutorial John Finlay October 7, 2012 PyGTK 2.0 Tutorial by John Finlay Published March 2, 2006 ii Contents 1 Introduction 1 1.1 Exploring PyGTK . .2 2 Getting Started 5 2.1 Hello World in PyGTK . .7 2.2 Theory of Signals and Callbacks . .9 2.3 Events . 10 2.4 Stepping Through Hello World . 11 3 Moving On 15 3.1 More on Signal Handlers . 15 3.2 An Upgraded Hello World . 15 4 Packing Widgets 19 4.1 Theory of Packing Boxes . 19 4.2 Details of Boxes . 20 4.3 Packing Demonstration Program . 22 4.4 Packing Using Tables . 27 4.5 Table Packing Example . 28 5 Widget Overview 31 5.1 Widget Hierarchy . 31 5.2 Widgets Without Windows . 34 6 The Button Widget 35 6.1 Normal Buttons . 35 6.2 Toggle Buttons . 38 6.3 Check Buttons . 40 6.4 Radio Buttons . 42 7 Adjustments 45 7.1 Creating an Adjustment . 45 7.2 Using Adjustments the Easy Way . 45 7.3 Adjustment Internals . 46 8 Range Widgets 49 8.1 Scrollbar Widgets . 49 8.2 Scale Widgets . 49 8.2.1 Creating a Scale Widget . 49 8.2.2 Methods and Signals (well, methods, at least) . 50 8.3 Common Range Methods . 50 8.3.1 Setting the Update Policy . 50 8.3.2 Getting and Setting Adjustments . 51 8.4 Key and Mouse Bindings . 51 8.5 Range Widget Example . 51 9 Miscellaneous Widgets 57 9.1 Labels . 57 9.2 Arrows . 60 9.3 The Tooltips Object .
    [Show full text]
  • Real-Time Calibration and Monitoring of Radar Reflectivity on Nationwide
    remote sensing Article Real-Time Calibration and Monitoring of Radar Reflectivity on Nationwide Dual-Polarization Weather Radar Network Jeong-Eun Lee , Soohyun Kwon and Sung-Hwa Jung * Weather Radar Center, Korea Meteorological Administration, Seoul 07062, Korea; [email protected] (J.-E.L.); [email protected] (S.K.) * Correspondence: [email protected]; Tel.: +82-2-2181-0862 Abstract: Monitoring calibration bias in reflectivity (ZH) in an operational S-band dual-polarization weather radar is the primary requisite for monitoring and prediction (nowcasting) of severe weather and routine weather forecasting using a weather radar network. For this purpose, we combined methods based on self-consistency (SC), ground clutter (GC) monitoring, and intercomparison to monitor the ZH in real time by complementing the limitations of each method. The absolute calibra- tion bias can be calculated based on the SC between dual-polarimetric observations. Unfortunately, because SC is valid for rain echoes, it is impossible to monitor reflectivity during the non-precipitation period. GC monitoring is an alternative method for monitoring changes in calibration bias regardless of weather conditions. The statistics of GC ZH near radar depend on the changes in radar system status, such as antenna pointing and calibration bias. The change in GC ZH relative to the baseline was defined as the relative calibration adjustment (RCA). The calibration bias was estimated from the change in RCA, which was similar to that estimated from the SC. The ZH in the overlapping volume of adjacent radars was compared to verify the homogeneity of ZH over the radar network after applying the calibration bias estimated from the SC.
    [Show full text]
  • Tizen V2.3 Graphics & UI Frameworks
    !1 105 Tizen v2.3 Graphics & UI Frameworks Embedded Software Lab. @ SKKU 内容 !2 105 • EFL(Enlightenment Foundation Library) – EFL Features – Ecore – Evas – Edje – Elementary – Cserve2 • Window Systems – X Window System – Wayland • DALi 3D Engine Embedded Software Lab. @ SKKU !3 Tizen Graphics & UI Frameworks 96 • UI 框架 – 实现交互型 GUI的模块 – EFL(Elementary/Ecore), OSP, GTK, Qt – Input Service Framework(ISF), Voice Framework • 图像库 – 渲染图像对象的模块 – Evas, Cairo, OpenGL ES, EGL • 窗⼝系统 (Window Systems) – 管理窗⼝和 frame缓存的模块 – X Window System, Wayland Embedded Software Lab. @ SKKU !4 Tizen Graphics & UI Frameworks 96 • Frameworks for UI of core Deprecated applications & web applications (Bada App FW) Embedded Software Lab. @ SKKU !5 96 EFL (Enlightenment Foundation Library) Embedded Software Lab. @ SKKU !6 Enlightenment 96 • 起源于桌⾯窗⼝管理器 – Bodhi Linux的默认窗⼝管理器 Embedded Software Lab. @ SKKU !7 Enlightenment Foundation Library 96 • ⼀组⽀持 Enlightenment的库 – Enlightenment 0.17(E17) • 组件由函数区分 – Event loop: Ecore – Rendering engine: Evas – UI: Edje, Elementary, … – UI builder tools: Enventor, Eflete, ELM Theme Editor • 当前的 EFL – Tizen 图形 /UI框架的核⼼组件 – 26% 的代码是 E17, 其他的是 EFL Embedded Software Lab. @ SKKU !8 EFL in Tizen 96 Core Applications Elementary Input Ecore Service Edje Evas Framework & Eet Voice Eina freetype2 fontconfig Cairo OpenGL ES/EGL Framework X Window System Linux Kernel Frame Buffer Input Devices H/W Legend Applications Window System Graphics EFL & fonts ISF& Voice FW H/W kernel / Frame Buffer/ Input Devices Embedded Software Lab. @ SKKU !9 Immediate vs. Retained 模式 (1/2) 96 • 即时模式图形系统 – 应⽤直接重新绘制⽆效的部分 – 当需要新的 frame时,应⽤重新发出绘制请求描述整个场景 – GTK+ 3, GDI, GDI+ Application 1. Invalidate 2. Expose GTK+/GDK-X11 3. Drawing Window System Graphics Card Frame Buffer for Screen Embedded Software Lab.
    [Show full text]
  • Embedded Linux System Design and Development
    Au0586 half title page 11/17/05 2:05 PM Page 1 EMBEDDED LINUX SYSTEM DESIGN AND DEVELOPMENT Au0586 title page 11/17/05 2:04 PM Page 1 EMBEDDED LINUX SYSTEM DESIGN AND DEVELOPMENT TEAM FLY P. Raghavan • Amol Lad • Sriram Neelakandan Boca Raton New York Published in 2006 by Auerbach Publications Taylor & Francis Group 6000 Broken Sound Parkway NW, Suite 300 Boca Raton, FL 33487-2742 © 2006 by Taylor & Francis Group, LLC Auerbach is an imprint of Taylor & Francis Group No claim to original U.S. Government works Printed in the United States of America on acid-free paper 10987654321 International Standard Book Number-10: 0-8493-4058-6 (Hardcover) International Standard Book Number-13: 978-0-8493-4058-1 (Hardcover) Library of Congress Card Number 2005048179 This book contains information obtained from authentic and highly regarded sources. Reprinted material is quoted with permission, and sources are indicated. A wide variety of references are listed. Reasonable efforts have been made to publish reliable data and information, but the author and the publisher cannot assume responsibility for the validity of all materials or for the consequences of their use. No part of this book may be reprinted, reproduced, transmitted, or utilized in any form by any electronic, mechanical, or other means, now known or hereafter invented, including photocopying, microfilming, and recording, or in any information storage or retrieval system, without written permission from the publishers. For permission to photocopy or use material electronically from this work, please access www.copyright.com (http://www.copyright.com/) or contact the Copyright Clearance Center, Inc.
    [Show full text]
  • A Study on the Use of Opengl in Window Systems
    Master Thesis Computer Science Thesis no: MCS-2004:03 March 2004 A study on the use of OpenGL in window systems Johan Persson Department of Software Engineering and Computer Science Blekinge Institute of Technology Box 520 SE - 372 25 Ronneby Sweden This thesis is submitted to the Department of Software Engineering and Computer Science at Blekinge Institute of Technology in partial fulfillment of the requirements for the degree of Master of Science in Software Engineering. The thesis is equivalent to 20 weeks of full time studies. Contact Information: Author: Johan Persson E-mail: [email protected] University advisor: Bj¨orn T¨ornqvist Department of Software Engineering and Computer Science Department of Software Engineering and Computer Science Internet : http://www.bth.se/ipd Blekinge Institute of Technology Phone : +46 457 38 50 00 Box 520 Fax : + 46 457 271 25 SE - 372 25 Ronneby Sweden Abstract OpenGL is getting used more in window system as a way of improving performance and enabling new functionality. Examples of two systems using different approaches of how OpenGL is being used are Quartz Extreme and Fresco. Quartz Extreme uses window composition which assures fast redisplay and Fresco on the other hand uses a structured graphics approach which utilises OpenGL on a much lower level compared to Quartz Extreme which operates at a window level. Fresco’s way brings great flexibility and an ability to mix 2D and 3D-objects on the desktop. But each of the approaches has its problems; Quartz extreme requires a large amount of memory for buffering of the window contents and Fresco has performance problems when redisplaying complex structures.
    [Show full text]