Cross-Platform Development in C++ This Page Intentionally Left Blank = Cross-Platform Development in C++ Building Mac OS X, Linux, and Windows Applications

Total Page:16

File Type:pdf, Size:1020Kb

Cross-Platform Development in C++ This Page Intentionally Left Blank = Cross-Platform Development in C++ Building Mac OS X, Linux, and Windows Applications = Cross-Platform Development in C++ This page intentionally left blank = Cross-Platform Development in C++ Building Mac OS X, Linux, and Windows Applications Syd Logan Upper Saddle River, NJ • Boston • Indianapolis • San Francisco New York • Toronto • Montreal • London • Munich • Paris • Madrid Cape Town • Sydney • Tokyo • Singapore • Mexico City Many of the designations used by manufacturers and sellers to distinguish their Editor-in-Chief products are claimed as trademarks. Where those designations appear in this book, Mark Taub and the publisher was aware of a trademark claim, the designations have been printed with initial capital letters or in all capitals. Acquisitions Editor Greg Doench The author and publisher have taken care in the preparation of this book, but make no expressed or implied warranty of any kind and assume no responsibility for errors Development Editor or omissions. No liability is assumed for incidental or consequential damages in Michael Thurston connection with or arising out of the use of the information or programs contained Managing Editor herein. Gina Kanouse The publisher offers excellent discounts on this book when ordered in quantity for Project Editor bulk purchases or special sales, which may include electronic versions and/or custom Anne Goebel covers and content particular to your business, training goals, marketing focus, and branding interests. For more information, please contact: Copy Editor Keith Cline U.S. Corporate and Government Sales (800) 382-3419 Indexer [email protected] Erika Millen For sales outside the United States please contact: Proofreader Kathy Ruiz International Sales [email protected] Technical Reviewers Jim Dunn Amy Fong Hang Lau Stephen Morse Lew Pitcher Sean Su Namachivayam Thirumazshusai Doug Turner Roy Yokohama Publishing Coordinator Andrea Bledsoe Cover Designer Gary Adair Visit us on the Web: www.informit.com/title/9780321246424 and www.crossplatformbook.com Composition Nonie Ratcliff Library of Congress Cataloging-in-Publication Data: Logan, Syd. Cross-platform development in C++ : building Mac OS X, Linux, and Windows applications / Syd Logan. p. cm. ISBN 0-321-24642-X (pbk. : alk. paper) 1. Cross-platform software development. 2. C++ (Computer program language) I. Title. QA76.76.D47L65 2007 005.13’3--dc22 2007036292 Copyright © 2008 Pearson Education, Inc. All rights reserved. Printed in the United States of America. This publication is protected by copyright, and permission must be obtained from the publisher prior to any prohibited reproduction, storage in a retrieval system, or transmission in any form or by any means, electronic, mechanical, photocopying, recording, or likewise. For information regarding permissions, write to: Pearson Education, Inc. Rights and Contracts Department 501 Boylston Street, Suite 900 Boston, MA 02116 Fax: (617) 671-3447 ISBN-13: 978-0-321-24642-4 ISBN-10: 0-321-24642-X Text printed in the United States on recycled paper at RR Donnelly in Crawfordsville, Indiana. First printing December 2007 This book is dedicated to all of the members of Netscape CPD and Mozilla, from whom I have learned so much. It was truly an honor to be a part of the team. = This page intentionally left blank = Contents Foreword . xiii Preface . xv Acknowledgments . xxiii About the Author . xxv Introduction . .1 Areas That Can Affect Software Portability . 3 The Role of Abstraction . 10 1 Policy and Management . 17 Item 1: Make All of Your Platforms a Priority . 17 Item 2: Code from a Common Codebase . 22 Platform Factory Implementations . 29 Implementation Classes . 31 Platform-Specific ProcessesImpl Classes . 32 Creating the Instance Hierarchy . 42 Organizing the Project in CVS or SVN . 45 Makefiles and Building the Code . 49 Item 3: Require Developers to Compile Their Code with Different Compilers . 52 Item 4: Require Developers to Build Their Code on Multiple Platforms . 56 Item 5: Test Builds on Each Supported Platform . 60 Item 6: Pay Attention to Compiler Warnings . 61 GNU Flags . 62 Microsoft Visual C++ . 63 vii viii Contents 2 Build System/Toolchain . 65 Item 7: Use Whatever Compiler Makes the Most Sense for a Platform . 66 Item 8: Use Native IDEs When Appropriate . 67 Item 9: Install and Use Cygwin on Windows . 71 Item 10: Use a Cross-Platform Make System . 76 Make . 77 Building on Windows . 81 Autoconf/Automake . 87 Imake . 91 Installing on Mac OS X . 91 Installing on Windows . 91 Using Imake, an Example . 93 Imakefiles . 94 Building a Complete Program from Multiple Sources . 95 Overriding Defaults with site.def . 99 Eliminating #ifdefs in Code . 101 Files Used by Imake . 107 Building Projects with Subdirectories . 108 Building Debug . 130 3 Software Configuration Management . 131 Item 11: Use a Cross-Platform Bug Reporting and Tracking System . 132 Accessibility . 133 Ability to Track Platform-Specific Bugs . 133 Bugzilla . 133 Item 12: Set Up a Tinderbox . 140 Item 13: Use CVS or Subversion to Manage Source Code . 147 Setting Up and Using CVS . 152 Item 14: Use Patch . 157 An Example . 158 Patch Options . 161 Dealing with Rejects . 162 Patch and Cross-Platform Development . 163 Contents ix 4 Installation and Deployment . 165 Item 15: Provide Support for Native Installers . 165 XPInstall . 166 Platform Installs . 170 5 Operating System Interfaces and Libraries . 221 Item 16: Use Standards-Based APIs (For Example, POSIX) . 222 POSIX . 222 Support for POSIX, SVID, XPG, and BSD . 226 Using Standards Support in GCC . 227 Microsoft Runtime Library Support for POSIX . 231 Using GCC on Microsoft Windows . 234 Deciding Which Standards to Support . 240 Item 17: Consider Using a Platform Abstraction Library Such as NSPR . 242 Why NSPR? . 242 NSPR Basics . 245 Threads . 249 Additional NSPR Functionality . 260 6 Miscellaneous Portability Topics . 273 Item 18: Take Care When Using Floating Point . 274 Don’t Serialize Floating-Point Values as Binary . 276 Equality . 277 Item 19: Be Explicit Regarding the Sign of Char Types . 278 Item 20: Avoid the Serialization of Binary Data . 280 Item 21: Avoid Problems Related to the Size and Organization of Types . 293 Size of Integer Types . 293 NSPR and Types . 296 Sizes and Efficiency . 297 Integer Conversions . 298 Struct Alignment and Ordering . 299 7 User Interfaces . 303 Item 22: Separate the User Interface from the Model . 304 Separating the User Interface and Application Logic with Model/View . 305 x Contents Using Publish/Subscribe to Communicate between the View and the Model . 318 Summary . 322 Item 23: Develop a Cross-Platform User Interface Strategy . 323 Issues Affecting Portable Cross-Platform GUI Development . 323 Choosing a GUI Strategy . 325 8 wxWidgets . ..
Recommended publications
  • Childnodes 1
    Index Home | Projects | Docs | Jargon Bugzilla | LXR | Tree Status | Checkins Feedback | FAQ | Search A - B - C - D - E - F - G - H - I - J - K - L - M - N - O - P - Q - R - S - T - U - V - W - X - Y - Z Index Symbols _content 1 A addEventListener 1 alert() 1 align 1 alinkColor 1 anchors 1 appCodeName 1 appendChild 1 applets 1 appName 1 appVersion 1 attributes 1, 2 http://www.mozilla.org/docs/dom/domref/dom_shortIX.html (1 de 20) [09/06/2003 9:55:09] Index availLeft 1 availTop 1 availWidth 1 B back() 1 bgColor 1 blur 1 blur() 1 body 1 C captureEvents() 1 characterSet 1 childNodes 1 clear 1 clearInterval() 1 clearTimeout() 1 click 1 cloneContents 1 cloneNode 1 cloneRange 1 close 1 http://www.mozilla.org/docs/dom/domref/dom_shortIX.html (2 de 20) [09/06/2003 9:55:09] Index close() 1 closed 1 collapse 1 collapsed 1 colorDepth 1 commonAncestorContainer 1 compareBoundaryPoints 1 Components 1 confirm() 1 contentDocument 1, 2 contentWindow 1, 2 controllers 1 cookie 1 cookieEnabled 1 createAttribute 1 createDocumentFragment 1 createElement 1 createRange 1 createTextNode 1 crypto 1 cssRule 1 cssRule Object 1 http://www.mozilla.org/docs/dom/domref/dom_shortIX.html (3 de 20) [09/06/2003 9:55:09] Index cssRules 1 cssText 1 D defaultStatus 1 deleteContents 1 deleteRule 1 detach 1 directories 1 disabled 1 dispatchEvent 1 doctype 1 document 1 documentElement 1 DOM 1, 2 DOM 2 Range Interface 1 DOM window Interface 1 domain 1 dump() 1 E Elements Interface 1 embeds 1 http://www.mozilla.org/docs/dom/domref/dom_shortIX.html (4 de 20) [09/06/2003 9:55:09]
    [Show full text]
  • A Political History of X Or How I Stopped Worrying and Learned to Love the GPL
    A Political History of X or How I Stopped Worrying and Learned to Love the GPL Keith Packard SiFive [email protected] Unix in !"# ● $SD Everywhere – $'t not actually BS% ● )*+* want, to make Sy,tem V real – S'rely they still matter ● .o Free So/tware Anywhere The 0rigins of 1 ● $rian Reid and Pa'l Asente at Stan/ord – - kernel → VGTS → W window system – Ported to VS100 at Stan/ord ● $o4 Scheifler started hacking W→ X – Working on Argus with Barbara Liskov at LCS – 7ade it more Unix friendly (async9, renamed X -AXstation 00 (aka v, 339 Unix Workstation Market ● Unix wa, closed source ● Most vendors ,hipped a proprietary 0S 4ased on $SD #.x ● S'n: HP: Digita(: )po((o: *ektronix: I$7 ● ;congratu(ation,: yo'<re not running &'nice=. – Stil(: so many gratuito', di/ference, -AXstation II S'n >?@3 Early Unix Window Systems ● S'n-iew dominated (act'al commercial app,A De,ktop widget,A9 ● %igital had -WS/UIS (V7S on(y9 ● )pollo had %omain ● *ektronix demon,trating Sma((*alk 1 B1@ ● .onB/ree so/tware ● U,ed internally at MIT ● Shared with friend, in/ormally 1 3 ● )(mo,t u,able ● %elivered by Digital on V)1,tation, ● %i,trib'tion was not all free ,o/tware – Sun port relied on Sun-iew kernel API – %igital provided binary rendering code – IB7 PC?2T support act'ally complete (C9 Why 1 C ● 1 0 had wart, – rendering model was pretty terrible ● ,adly, X1 wa,n't m'ch better... – External window management witho't borders ● Get everyone involved – Well, at lea,t every workstation vendor willing to write big checks X as Corporate *ool ● Dim Gettys and Smokey
    [Show full text]
  • TRABAJO DE DIPLOMA Título: Diseño De La Página Web De Antenas
    FACULTAD DE INGENIERÍA ELÉCTRICA Departamento de Telecomunicaciones y Electrónica TRABAJO DE DIPLOMA Título: Diseño de la Página Web de Antenas Autor: Alaín Hidalgo Burgos Tutor: Dr. Roberto Jiménez Hernández Santa Clara 2006 “Año de la Revolución Energética en Cuba” Universidad Central “Marta Abreu” de Las Villas FACULTAD DE INGENIERÍA ELÉCTRICA Departamento de Telecomunicaciones y Electrónica TTRRAABBAAJJOO DDEE DDIIPPLLOOMMAA Diseño de la Página Web de Antenas Autor: Alaín Hidalgo Burgos e-mail: [email protected] Tutor: Dr. Roberto Jiménez Hernández Prof. Dpto. de Telecomunicaciones y electrónica Facultad de Ing. Eléctrica. UCLV. e-mail: [email protected] Santa Clara Curso 2005-2006 “Año de la Revolución Energética en Cuba” Hago constar que el presente trabajo de diploma fue realizado en la Universidad Central “Marta Abreu” de Las Villas como parte de la culminación de estudios de la especialidad de Ingeniería en Telecomunicaciones y Electrónica, autorizando a que el mismo sea utilizado por la Institución, para los fines que estime conveniente, tanto de forma parcial como total y que además no podrá ser presentado en eventos, ni publicados sin autorización de la Universidad. Firma del Autor Los abajo firmantes certificamos que el presente trabajo ha sido realizado según acuerdo de la dirección de nuestro centro y el mismo cumple con los requisitos que debe tener un trabajo de esta envergadura referido a la temática señalada. Firma del Tutor Firma del Jefe de Departamento donde se defiende el trabajo Firma del Responsable de Información Científico-Técnica PENSAMIENTO “El néctar de la victoria se bebe en la copa del sacrificio” DEDICATORIA Dedico este trabajo a mis padres, a mí hermana y a mi novia por ser las personas más hermosas que existen y a las cuales les debo todo.
    [Show full text]
  • Ebook - Informations About Operating Systems Version: August 15, 2006 | Download
    eBook - Informations about Operating Systems Version: August 15, 2006 | Download: www.operating-system.org AIX Internet: AIX AmigaOS Internet: AmigaOS AtheOS Internet: AtheOS BeIA Internet: BeIA BeOS Internet: BeOS BSDi Internet: BSDi CP/M Internet: CP/M Darwin Internet: Darwin EPOC Internet: EPOC FreeBSD Internet: FreeBSD HP-UX Internet: HP-UX Hurd Internet: Hurd Inferno Internet: Inferno IRIX Internet: IRIX JavaOS Internet: JavaOS LFS Internet: LFS Linspire Internet: Linspire Linux Internet: Linux MacOS Internet: MacOS Minix Internet: Minix MorphOS Internet: MorphOS MS-DOS Internet: MS-DOS MVS Internet: MVS NetBSD Internet: NetBSD NetWare Internet: NetWare Newdeal Internet: Newdeal NEXTSTEP Internet: NEXTSTEP OpenBSD Internet: OpenBSD OS/2 Internet: OS/2 Further operating systems Internet: Further operating systems PalmOS Internet: PalmOS Plan9 Internet: Plan9 QNX Internet: QNX RiscOS Internet: RiscOS Solaris Internet: Solaris SuSE Linux Internet: SuSE Linux Unicos Internet: Unicos Unix Internet: Unix Unixware Internet: Unixware Windows 2000 Internet: Windows 2000 Windows 3.11 Internet: Windows 3.11 Windows 95 Internet: Windows 95 Windows 98 Internet: Windows 98 Windows CE Internet: Windows CE Windows Family Internet: Windows Family Windows ME Internet: Windows ME Seite 1 von 138 eBook - Informations about Operating Systems Version: August 15, 2006 | Download: www.operating-system.org Windows NT 3.1 Internet: Windows NT 3.1 Windows NT 4.0 Internet: Windows NT 4.0 Windows Server 2003 Internet: Windows Server 2003 Windows Vista Internet: Windows Vista Windows XP Internet: Windows XP Apple - Company Internet: Apple - Company AT&T - Company Internet: AT&T - Company Be Inc. - Company Internet: Be Inc. - Company BSD Family Internet: BSD Family Cray Inc.
    [Show full text]
  • An Introduction to the X Window System Introduction to X's Anatomy
    An Introduction to the X Window System Robert Lupton This is a limited and partisan introduction to ‘The X Window System’, which is widely but improperly known as X-windows, specifically to version 11 (‘X11’). The intention of the X-project has been to provide ‘tools not rules’, which allows their basic system to appear in a very large number of confusing guises. This document assumes that you are using the configuration that I set up at Peyton Hall † There are helpful manual entries under X and Xserver, as well as for individual utilities such as xterm. You may need to add /usr/princeton/X11/man to your MANPATH to read the X manpages. This is the first draft of this document, so I’d be very grateful for any comments or criticisms. Introduction to X’s Anatomy X consists of three parts: The server The part that knows about the hardware and how to draw lines and write characters. The Clients Such things as terminal emulators, dvi previewers, and clocks and The Window Manager A programme which handles negotiations between the different clients as they fight for screen space, colours, and sunlight. Another fundamental X-concept is that of resources, which is how X describes any- thing that a client might want to specify; common examples would be fonts, colours (both foreground and background), and position on the screen. Keys X can, and usually does, use a number of special keys. You are familiar with the way that <shift>a and <ctrl>a are different from a; in X this sensitivity extends to things like mouse buttons that you might not normally think of as case-sensitive.
    [Show full text]
  • Wxshapeframework: an Easy Way for Diagrams Manipulation in C++ Applications
    WSEAS TRANSACTIONS on COMPUTERS Michal Bliznak, Tomas Dulik, Vladimir Vasek WXSHAPEFRAMEWORK: AN EASY WAY FOR DIAGRAMS MANIPULATION IN C++ APPLICATIONS MICHAL BLIŽŇÁK1, TOMÁŠ DULÍK2, VLADIMÍR VAŠEK3 Department of Informatics and Artificial Inteligence1, 2, Department of Automation and Control Engineering3 Faculty of Applied Informatics, Tomas Bata University Nad Stráněmi 4511, 760 05, Zlín CZECH REPUBLIC [email protected], [email protected], [email protected] Abstract: wxShapeFramework is new cross-platform software library written in C++ programming language which is suitable for creation of software applications manipulating diagrams, images and other graphical objects. Thanks to the underlying technologies such as wxWidgets toolkit and its XML-based persistent data container add-on called wxXmlSerializer it is an ideal solution for rapid and easy cross-platform visualisation software development. The paper reveals how the wxSF allows user to easily create applications able to interactively handle various scenes consisting of pre-defined or user-defined graphic objects (both vector- and bitmap-based) or GUI controls, store them to XML files, export them to bitmap images, print them etc. Moreover, thanks to applied software licence the library can be used for both open-source and commercial projects on all main target platforms including MS Windows, MacOS and Linux. Keywords: Diagram, vector, bitmap, GUI, wxWidgets, wxXmlSerializer, wxShapeFramework, wxSF, C++ 1 Introduction called shapes (including basic rectangular and elliptic shapes, line and curve shapes, polygonal shapes, static Modern software applications often need the ability to and in-place editable text, bitmap images, etc.). graphically represent various data or logical structures, information flows, processes and similar The wxSF allows to define relationship between abstract information types in the form of diagrams.
    [Show full text]
  • Modelsim SE Tutorial T-3
    ModelSim® SE Tutorial Version 5.6d Published: 6/Aug/02 The world’s most popular HDL simulator T-2 ModelSim /VHDL, ModelSim /VLOG, ModelSim /LNL, and ModelSim /PLUS are produced by Model Technology™ Incorporated. Unauthorized copying, duplication, or other reproduction is prohibited without the written consent of Model Technology. The information in this manual is subject to change without notice and does not represent a commitment on the part of Model Technology. The program described in this manual is furnished under a license agreement and may not be used or copied except in accordance with the terms of the agreement. The online documentation provided with this product may be printed by the end-user. The number of copies that may be printed is limited to the number of licenses purchased. ModelSim is a registered trademark and ChaseX and TraceX are trademarks of Model Technology Incorporated. Model Technology is a trademark of Mentor Graphics Corporation. PostScript is a registered trademark of Adobe Systems Incorporated. UNIX is a registered trademark of AT&T in the USA and other countries. FLEXlm is a trademark of Globetrotter Software, Inc. IBM, AT, and PC are registered trademarks, AIX and RISC System/6000 are trademarks of International Business Machines Corporation. Windows, Microsoft, and MS-DOS are registered trademarks of Microsoft Corporation. OSF/Motif is a trademark of the Open Software Foundation, Inc. in the USA and other countries. SPARC is a registered trademark and SPARCstation is a trademark of SPARC International, Inc. Sun Microsystems is a registered trademark, and Sun, SunOS and OpenWindows are trademarks of Sun Microsystems, Inc.
    [Show full text]
  • Tms320c3x Workstation Emulator Installation Guide
    TMS320C3x Workstation Emulator Installation Guide 1994 Microprocessor Development Systems Printed in U.S.A., December 1994 2617676-9741 revision A TMS320C3x Workstation Emulator Installation Guide SPRU130 December 1994 Printed on Recycled Paper IMPORTANT NOTICE Texas Instruments (TI) reserves the right to make changes to its products or to discontinue any semiconductor product or service without notice, and advises its customers to obtain the latest version of relevant information to verify, before placing orders, that the information being relied on is current. TI warrants performance of its semiconductor products and related software to the specifications applicable at the time of sale in accordance with TI’s standard warranty. Testing and other quality control techniques are utilized to the extent TI deems necessary to support this warranty. Specific testing of all parameters of each device is not necessarily performed, except those mandated by government requirements. Certain applications using semiconductor products may involve potential risks of death, personal injury, or severe property or environmental damage (“Critical Applications”). TI SEMICONDUCTOR PRODUCTS ARE NOT DESIGNED, INTENDED, AUTHORIZED, OR WARRANTED TO BE SUITABLE FOR USE IN LIFE-SUPPORT APPLICATIONS, DEVICES OR SYSTEMS OR OTHER CRITICAL APPLICATIONS. Inclusion of TI products in such applications is understood to be fully at the risk of the customer. Use of TI products in such applications requires the written approval of an appropriate TI officer. Questions concerning potential risk applications should be directed to TI through a local SC sales offices. In order to minimize risks associated with the customer’s applications, adequate design and operating safeguards should be provided by the customer to minimize inherent or procedural hazards.
    [Show full text]
  • Xview Developer's Notes
    XView Developer’s Notes 2550 Garcia Avenue Mountain View, CA 94043 U.S.A. A Sun Microsystems, Inc. Business 1994 Sun Microsystems, Inc. 2550 Garcia Avenue, Mountain View, California 94043-1100 U.S.A. All rights reserved. This product and related documentation are protected by copyright and distributed under licenses restricting its use, copying, distribution, and decompilation. No part of this product or related documentation may be reproduced in any form by any means without prior written authorization of Sun and its licensors, if any. Portions of this product may be derived from the UNIX® and Berkeley 4.3 BSD systems, licensed from UNIX System Laboratories, Inc., a wholly owned subsidiary of Novell, Inc., and the University of California, respectively. Third-party font software in this product is protected by copyright and licensed from Sun’s font suppliers. RESTRICTED RIGHTS LEGEND: Use, duplication, or disclosure by the United States Government is subject to the restrictions set forth in DFARS 252.227-7013 (c)(1)(ii) and FAR 52.227-19. The product described in this manual may be protected by one or more U.S. patents, foreign patents, or pending applications. TRADEMARKS Sun, the Sun logo, Sun Microsystems, Sun Microsystems Computer Corporation, SunSoft, the SunSoft logo, Solaris, SunOS, OpenWindows, DeskSet, ONC, ONC+, and NFS are trademarks or registered trademarks of Sun Microsystems, Inc. in the U.S. and certain other countries. UNIX is a registered trademark of Novell, Inc., in the United States and other countries; X/Open Company, Ltd., is the exclusive licensor of such trademark. OPEN LOOK® is a registered trademark of Novell, Inc.
    [Show full text]
  • PHP Beyond the Web Shell Scripts, Desktop Software, System Daemons and More
    PHP Beyond the web Shell scripts, desktop software, system daemons and more Rob Aley This book is for sale at http://leanpub.com/php This version was published on 2013-11-25 This is a Leanpub book. Leanpub empowers authors and publishers with the Lean Publishing process. Lean Publishing is the act of publishing an in-progress ebook using lightweight tools and many iterations to get reader feedback, pivot until you have the right book and build traction once you do. ©2012 - 2013 Rob Aley Tweet This Book! Please help Rob Aley by spreading the word about this book on Twitter! The suggested hashtag for this book is #phpbeyondtheweb. Find out what other people are saying about the book by clicking on this link to search for this hashtag on Twitter: https://twitter.com/search?q=#phpbeyondtheweb Contents Welcome ............................................ i About the author ...................................... i Acknowledgements ..................................... ii 1 Introduction ........................................ 1 1.1 “Use PHP? We’re not building a website, you know!”. ............... 1 1.2 Are you new to PHP? ................................. 2 1.3 Reader prerequisites. Or, what this book isn’t .................... 3 1.4 An important note for Windows and Mac users ................... 3 1.5 About the sample code ................................ 4 1.6 External resources ................................... 4 1.7 Book formats/versions available, and access to updates ............... 5 1.8 English. The Real English. .............................. 5 2 Getting away from the Web - the basics ......................... 6 2.1 PHP without a web server .............................. 6 2.2 PHP versions - what’s yours? ............................. 7 2.3 A few good reasons NOT to do it in PHP ...................... 8 2.4 Thinking about security ...............................
    [Show full text]
  • Mozbackup 1.4.8) - Add: FS#152 - New Graphic for Mozbackup 1.4.8 - Fix: FS#143 - ZIP Version Should Contains Directory
    Changelog (since MozBackup 1.4) ------------------------------- (MozBackup 1.4.8) - Add: FS#152 - New graphic for MozBackup 1.4.8 - Fix: FS#143 - ZIP version should contains directory (MozBackup 1.4.8 Beta) - Fix: FS#120 - Check Czech localization - Fix: FS#123 - language file hasn't applied correctry - Fix: FS#141 - Spelling error on component selection screen. (MozBackup 1.4.8 Alpha) - Add: FS#1 - Backup file urlbarhistory.sqlite from SeaMonkey 2.0 profile - Add: FS#6 - Add support for Netscape 9 - Add: FS#7 - Add support for logging - Add: FS#8 - Add support for SeaMonkey 2.0 - Add: FS#9 - Add support for Flock - Add: FS#10 - Add support for Sunbird - Add: FS#11 - Migrate to Nullsoft installer - Add: FS#13 - Add support for Firefox/Thunderbird portable - Add: FS#16 - Add option for disable password question dialog - Add: FS#22 - Option to save unsupported files from profile - Add: FS#18 - Enable extensions backup by default - Add: FS#38 - Add test if backup's file is ok after backup - Add: FS#39 - Rename Backup.exe to MozBackup.exe - Add: FS#45 - Backup file urlclassifier3.sqlite from profile - Add: FS#48 - backup.ini / fileformat: Add "Day of Week" (Monday, ...) - Add: FS#67 - Support for Netscape Messenger 9.0 - Add: FS#69 - Add license information to all source files - Add: FS#70 - Create profile for MozBackup - Add: FS#73 - Create documentation for compilation of MozBackup - Add: FS#75 - Add new bookmarks* files to backup process - Add: FS#77 - Backup new signons3.txt file. - Add: FS#81 - Backup file cert_override.txt - Add: FS#82
    [Show full text]
  • Gou, Zaiyong, Ph.D
    Order Number 9411950 Scientific visualization and exploratory data analysis of a large spatial flow dataset Gou, Zaiyong, Ph.D. The Ohio State University, 1993 U M I 300 N. Zeeb Rd. Ann Arbor, MI 48106 SCIENTIFIC VISUALIZATION AND EXPLORATORY DATA ANALYSIS OF A LARGE SPATIAL FLOW DATASET DISSERTATION Presented in Partial Fulfillment of the Requirement for the Degree of Doctor of Philosophy in the Graduate School of The Ohio Stale University By Zaiyong Gou, B.S., M.A. $ * + $ * The Ohio State University 1993 Dissertation Committee: Approved by Duane F. Marble Morton E. O’Kelly 7 Duane F. Marble Randy W. Jackson Department of Geography DEDICATION To My Parents ACKNOWLEDGEMENT Of my thirteen years of being a geographer, the last four years under the supervision of Prof. Duane F. Marble at The Ohio State University has been the most exciting and most memorable. His wisdom and profound academic insight showed me what geography as an extraordinarily difficult discipline should be and could be. He is always the person who stands very high and sees very far, exploring the most challenging frontiers of geography relentlessly. As my academic adviser, his unfailing encouragement, guidance, patience and professional courtesy have always been my inspiration to work more creatively and more enthusiastically. He leads us to a high intellectual plateau and offers us the unlimited freedom to face the challenges and to pursue academic excellence. I am always grateful for the paths and opportunities you have pointed out to me. My gratitude also goes to Prof. Edward J. Taaffe, Prof. Morton E. O’Kelly and Prof.
    [Show full text]