|
|
Line 1: |
Line 1: |
− | {{Lazarus Documentation}}
| |
| | | |
− | ==Lazarus and Pascal Tutorials==
| |
− |
| |
− | *[[Object Pascal Tutorial]]
| |
− | *[[More Lazarus/FPC Tutorials]] - These are only the main tutorials. This other page shows more Lazarus/FPC tutorials.
| |
− | *There are also other tutorials not hosted here in [[Lazarus Documentation#Lazarus related blogs, websites, videos, magazines and books]].
| |
− | *[[:Category:Tutorials|Assorted Tutorials]] - Collection of tutorials with difficulty ranging from beginner to expert level
| |
− | *[http://www.schoolfreeware.com/Free_Pascal_Tutorials.html SchoolFreeware's FreePascal Tutorials] - From command line interface (CLI) to graphical user interface (GUI) using Lazarus IDE
| |
− |
| |
− | === Lazarus/FPC ===
| |
− | *[[Overview of Free Pascal and Lazarus]] - A brief discussion of kinds of things you can develop with these general-purpose tools.
| |
− | *[[Lazarus Tutorial]] - A tutorial for beginners and a detailed description of the Lazarus IDE.
| |
− | *[[Lazarus IDE Tools]] - An intermediate level tutorial about code completion and other IDE tools.
| |
− | *[[Developing with Graphics]] - Examples on 2D & 3D graphic programming.
| |
− | *[[OpenGL Tutorial]] - How to use OpenGL in Lazarus applications.
| |
− | *[[Multimedia Programming]] - How to play videos and sounds.
| |
− | *[[Office Automation]] - How to interact with office software and create spreadsheets, text documents, presentations, etc.
| |
− | *[[Lazarus/FPC Libraries]] - How to create dynamic libraries (.so, .dll, .dylib) and how to use them
| |
− | *[[Creating bindings for C libraries]] - How to convert C header files (.h) to pascal units
| |
− | *[[Console Mode Pascal]] - Using the Lazarus IDE for writing Pascal programs for text-mode operation.
| |
− | *[[Lazarus Inline Assembler]] - A getting started guide.
| |
− | *[[Databases]] - An introduction to using databases in Lazarus and links to other database articles.
| |
− | *[[SQLdb Tutorial1]] - A tutorial that teaches you to get up and running with Lazarus visual components and databases
| |
− | *[[SqlDBHowto]] - Explanations and code for various aspects of using SQLdb for reading and manipulating data in relational databases
| |
− | *[[Lazarus Database Tutorial]] - A tutorial which has some more background information on how to connect to popular databases, for example MySQL, Firebird, Postgres, etc.
| |
− | *[[Working With TSQLQuery]] - An in depth description of using TSQLQuery, having details about using parameters in queries and non-SELECT-queries
| |
− | *[[Translations / i18n / localizations for programs]] - How to provide localized versions of your programs and packages
| |
− | *[[Daemons and Services]] - How to write windows services and/or linux daemons.
| |
− | *[[VirtualTreeview Example for Lazarus]] - Using VirtualTreeview on Lazarus.
| |
− |
| |
− | === Hardware, Threads and Processes ===
| |
− | *[[Using the printer]] - Printer support in Lazarus
| |
− | *[[Hardware Access]] - How to access hardware devices, such as ISA cards, PCI cards, parallel and serial ports and USB devices.
| |
− | *[[Multithreaded Application Tutorial]] - How to write multithreaded applications using Free Pascal and Lazarus.
| |
− | *[[Executing External Programs]] - A short tutorial showing how to run external programs from inside your program.
| |
− | *[[LazDeviceAPIs]] - A LCL unit which offers an interface to various hardware devices such as the Accelerometer, SMS sending, GPS positioning, etc.
| |
− |
| |
− | === Files===
| |
− | *[[File Handling In Pascal]] - Basic explanations on the use of files, for beginners in pascal.
| |
− | *[[TXMLPropStorage]] - Using TXMLPropStorage to save user preferences.
| |
− | *[[XML Tutorial]] - Writing and reading XML files.
| |
− | *[[Using INI Files]] - How to work with INI files in pascal.
| |
− |
| |
− | === Web ===
| |
− | *[[Webbrowser]] - Webbrowser controls
| |
− | *[[Networking|Web Programming and Networking]] - Tutorials about TCP/IP protocol, WebServices and links to web development articles.
| |
− |
| |
− | ===Platform specific Tips===
| |
− | *[[Windows Programming Tips]] - Desktop Windows programming tips.
| |
− | *[[Linux Programming Tips]] - Linux programming tips.
| |
− | *[[OS X Programming Tips]] - Lazarus installation, useful tools, Unix commands, and more...
| |
− | *[[WinCE Programming Tips]] - Using the telephone API, sending SMSes, and more...
| |
− | *[[Android Programming]] - For Android smartphones and tablets
| |
− | *[[iPhone/iPod development]] - About using Objective Pascal to develop iOS applications
| |
− |
| |
− | ==The Lazarus User Guides==
| |
− | *[[Lazarus Faq]] - General information about Lazarus and specifics for Linux and Windows users.
| |
− | *[[Lazarus DB Faq]] - FAQ on database issues in Lazarus.
| |
− | *[[Feature Ideas|Wishlist/Wanted Features]] - Features that you would like to see in Lazarus
| |
− | *[[How do I create a bug report]] - You think you found a bug in Lazarus, how can you report it?
| |
− |
| |
− | ===Installation===
| |
− | *[[Getting Lazarus]] - Brief instructions on how to download and install a released or SVN version of Lazarus
| |
− | *[[Installing Lazarus]] - A detailed installation guide
| |
− | *[[Multiple Lazarus]] - How to install several lazarus versions on one machine
| |
− |
| |
− | ===IDE===
| |
− | *[[IDE tricks]] - Tips, tricks and hidden features
| |
− | *[[Lazarus IDE]] - The IDE windows
| |
− | *[[Lazarus IDE Shortcuts]] - The key mapping and shortcuts.
| |
− | *[[Lazarus Packages]] - A guide for creating a package under Lazarus
| |
− | *[[Install Packages]] - A small guide to install packages
| |
− | *[[Extending the IDE]] - How to add functionality to the Lazarus IDE
| |
− | *[[Installing Help in the IDE]] - How to install help for the RTL, FCL and LCL in the IDE, as well as installing the Kylix help files in it and also adding help for user packages.
| |
− | *[[Using Lazarus for other computer languages]] - How to use the IDE for C, Java, etc.
| |
− | *[[IDE Development]] - Various pages about current development of the IDE.
| |
− | *[[Lazarus for education]] - How to setup the IDE for courses and beginners.
| |
− | *[[Lazarus Hacks]] - Customizations and hacks that can adapt the IDE and LCL to specific needs.
| |
− | *[[startlazarus]] - How the IDE is started.
| |
− | *[[Unit not found - How to find units]] - Explains how the compiler and the IDE searches for units and how this can fail.
| |
− |
| |
− | ===LCL===
| |
− | *[[doc:lcl/|LCL documentation]] - On line help for LCL (work in progress).
| |
− | *[[LCL Components]] - Tutorials about the standard LCL components such as TMainMenu, TButton, TComboBox, TTimer, etc. Complements and links to the reference docs.
| |
− | *[[The LCL in various platforms]] - A brief discussion about LCL features which behave differently in different platforms.
| |
− | *[[Autosize / Layout]] - How to design forms that work on all platforms.
| |
− | *[[Main Loop Hooks]] - How to handle multiple event sources
| |
− | *[[Asynchronous Calls]] - How to queue methods for later execution
| |
− | *[[File size and smartlinking]] - How to smartlink applications and create smaller executables.
| |
− | *[[Accessing the Interfaces directly]] - Example how to access the LCL widgetsets
| |
− | *[[Add Help to Your Application]] - How to create a Online Help for your application
| |
− | *[[Colors]] - Description of system colors like clDefault, clWindow and the fpImage FPColor
| |
− | *[[LCL Tips]] - Tips and tricks
| |
− | *[[LCL Defines]] - Choosing the right options to recompile LCL
| |
− | *[[Components_and_Code_examples|LCL Code Examples]] - Example working code for Lazarus.
| |
− | *[[Lazarus Custom Drawn Controls]] - A set of custom drawn controls in Lazarus
| |
− | *[[How To Write Lazarus Component]] - A helpful guide to creating your first LCL component.
| |
− | *[[LCL Accessibility]] - Documentation about using making LCL applications accessible
| |
− |
| |
− | ===Developing===
| |
− | *[[The Power of Proper Planning and Practices]] - common-sense programming best practices for the Free Pascal and Lazarus developer
| |
− | *[[Multiplatform Programming Guide]] - How to develop cross-platform applications and how to port from one platform to another
| |
− | *[[Deploying Your Application]] - How to create an installer for your application
| |
− | *[[Cross compiling]] - Creating executables for one platform, on another
| |
− | *[[GDB Debugger Tips]] - Known Issues / Tips for debugging Pascal using GDB
| |
− | *[[Remote Debugging]] - How to debug your Lazarus application from another machine
| |
− | *[[Application Icon]] - Setting the application icon
| |
− | *[[Using Pascal Libraries with .NET and Mono]] - yes, you can use your Pascal code with .NET and Mono
| |
− | *[[Pascal and PHP]] - the Pascal connection to PHP
| |
− | *[[Developing Python Modules with Pascal]] - extending Python with Pascal
| |
− | *[[Developing Web Apps with Pascal]] - yes, you can write Rich Internet Applications (RIA) with Pascal
| |
− | *[[Smartphone Development]] - About using FPC and Lazarus to target various smartphones
| |
− | *[[Lazarus Components Directory]] - A description of extra packages which are shipped with Lazarus, such as support for printers, fpWeb, daemons, etc
| |
− |
| |
− | === Tools ===
| |
− | *[[Lazarus Documentation Editor]] - Using "lazde" to create documentation
| |
− | *[[FPDoc Editor]] - An integrated editor for documentation files
| |
− | *[[FPDoc Updater]] - A GUI tool for updating FPDoc files
| |
− | *[[lazbuild]] - Compiling projects and packages without the IDE
| |
− | *[[LazSVNPkg]] - Lazarus Subversion IDE Plugin
| |
− | *[[InstantFPC]] - run pascal programs as normal unix scripts
| |
− |
| |
− | ===Coming from Delphi===
| |
− | *[[Lazarus Components]] - Comparison between Lazarus and Turbo Delphi components
| |
− | *[[Lazarus For Delphi Users]] - For Delphi users who are getting started with Lazarus
| |
− | *[[Code Conversion Guide]] - How to convert existing code and components from Delphi and Kylix
| |
− | *[[Delphi Converter in Lazarus]] - Convert a Delphi unit, project or package almost automatically
| |
− |
| |
− | ==The Lazarus Developer Guides==
| |
− | *[[Lazarus Development Process]] - Roadmaps, ToDos, current development and what needs to be done for Lazarus 1.0
| |
− | *[[How To Help Developing Lazarus]] - A guide to help newbies start improving Lazarus
| |
− | *[[Version Numbering]] - Explanation of the different version numbers of Lazarus
| |
− | *[[Creating A Patch| Creating a Patch]] - A guide to making a patch with changes made to Lazarus
| |
− | *[[Creating a Backtrace with GDB]] - A guide to making a backtrace to help you debug a program
| |
− | *[[Nomenclature]] - Guide to choose a name for a new method or property
| |
− | *[[DesignGuidelines|Design Guide Lines]] - A guide about how to proceed when changing Lazarus Source Code.
| |
− | *[[GUI design]] - Notes on guidelines when designing the lazarus GUI
| |
− | *[[Roadmap]] - An idea of the current status of the various parts of Lazarus
| |
− | *[[Moderating the bug tracker]] - Guidelines for lazarus developers and moderators for using the [http://www.freepascal.org/mantis/ bug tracker].
| |
− | *[[Codetools]] - How the codetools are integrated into the IDE
| |
− | *[[Creating IDE Help]] - How to extend the IDE documentation
| |
− | *[[Distributing Lazarus - Installers]] - Hints and notes for packagers who want to write an installer for Lazarus
| |
− | *[[Bounties]] - Need a particular new feature soon? Set a price here.
| |
− |
| |
− | ===LCL - Lazarus component library===
| |
− | *[[LCL Messages]] - Guide related to LCL Messages
| |
− | *[[LCL Internals]] - Implementation details and how to create a new widgetset
| |
− | *[[LCL Key Handling]] - Help! A key press, what now?
| |
− | *[[LCL Internals - Resizing, Moving]] - How the LCL communicates with the LCL interface to resize, move controls
| |
− | *[[LCL Drag Drop]] - Managing dragging, dropping and docking
| |
− | *[[LCL Unicode Support]] - Road to Unicode enabled Lazarus
| |
− | *[[LCL Documentation Roadmap]] - Which units have to be documented
| |
− | *[[LCL Bindings]] - Bindings to use LCL on other languages
| |
− |
| |
− | ===Interfaces===
| |
− | {{Interfaces}}
| |
− |
| |
− | ===Translations===
| |
− | * [[Translations_/_i18n_/_localizations_for_programs|Translations / i18n / localizations for programs]] How to translate your application and how to load translated resourcestrings of projects and packages in your application.
| |
− | * [[Getting translation strings right]] A few notes for programmers on how to create and use translateable strings in your application. Quickly discusses general things about creating strings, offers a few hints on implementation issues and points out some things to consider when using English as base language in particular.
| |
− | * '''Localization Notes:'''
| |
− | :* [[German localization notes|German]] - Notes and guidelines for translating the Lazarus IDE to German, including a small dictionary to look up often used translations.
| |
− | :* [[Portuguese-Brazilian Localization Notes|Portuguese-Brazilian]] - Small dictionary containing common translations of terms used in the Lazarus IDE for the Portuguese-Brazilian translation.
| |
− | :* [[Russian localization notes|Russian]] - Notes and guidelines for translating the Lazarus IDE into Russian.
| |
− | <!-- *[[TO-DO]] Remaining Tasks -->
| |
− | * [[Help:Add language bar | Add language bar]] explains how you can add a list of translations to the top of a wiki page.
| |
− | *[[Translations_/_i18n_/_localizations_for_programs#Translating_the_IDE|Translating the IDE]]
| |
− |
| |
− | ==Additional Components Documentation==
| |
− | *[[Project Templates]] - the package projtemplates
| |
− | *[[Pascal Script]] and [[Pascal Script Examples]] - How to use the pascal script components in Lazarus
| |
− | *[[OpenGL]] - How to use OpenGL in Lazarus
| |
− | *[[KOL-CE]] - Free Pascal/Lazarus port of KOL&MCK library. How to create very compact applications for Win32/WinCE in Lazarus.
| |
− | *[[TAChart documentation]] - Standard component for drawing graphs and charts.
| |
− | *[[How To Write Lazarus Component]] for more component info
| |
− |
| |
− | ==Free Pascal Compiler Documentation==
| |
− | In addition to [http://lazarus-ccr.sourceforge.net/fpcdoc/ this site], the latest version of the documentation can also be found on-line and in a variety of downloadable formats on the main [http://www.freepascal.org/docs.html Free Pascal Compiler site].
| |
− |
| |
− | *[http://lazarus-ccr.sourceforge.net/fpcdoc/user/user.html User's guide]
| |
− | *[http://lazarus-ccr.sourceforge.net/fpcdoc/prog/prog.html Programmer's guide]
| |
− | *[http://lazarus-ccr.sourceforge.net/fpcdoc/ref/ref.html Reference guide for the system unit, and supported Pascal constructs]
| |
− | *[http://lazarus-ccr.sourceforge.net/fpcdoc/rtl/index.html Run-Time Library reference manual]
| |
− | *[http://lazarus-ccr.sourceforge.net/fpcdoc/fcl/index.html Free Component Library reference manual]
| |
− | *[http://lazarus-ccr.sourceforge.net/fpcdoc/fpdoc/fpdoc.html Free Pascal documentation tool manual]
| |
− | *[[Build messages]]
| |
− |
| |
− | ==Lazarus related blogs, websites, videos, magazines and books==
| |
− |
| |
− | ===Blogs===
| |
− |
| |
− | *[http://lazarus-dev.blogspot.com/ Lazarus Development] - A blog of Lazarus developers regards development process.
| |
− | *[[Adventures of a Newbie]] - A blog of a newbie getting started with some tutorial information in a running log.
| |
− | *[http://lazarusroad.blogspot.com/ On the road with Lazarus/Free Pascal] - A blog dedicated to register my experiences while programming with Lazarus and Free Pascal (by Luiz Américo)
| |
− | *[http://port2laz.blogspot.com/ Porting to Lazarus] - This blog describes the porting of a medium-sized application (~100 kloc) from D7 with CLX to Lazarus (by Alexsander da Rosa)
| |
− | *[http://living-lazarus.blogspot.com/ Living Lazarus] - One man's exploration into the possibilities of an open source RAD (by [[User:Wibblytim|Wibblytim]]).
| |
− | *[http://beeography.wordpress.com/tag/object-pascal/ Bee.ography] just (another) Bee’s buzz!
| |
− | *[http://donaldshimoda.blogspot.com/ Parallel Pascal Worlds] Donald Shimoda.
| |
− | *[http://devblog.brahmancreations.com/content/observations-on-freepascal-and-lazarus-development Observations on FreePascal and Lazarus Development]
| |
− | *[http://www.lazarussupport.com/lazarus/weblog Lazarussupport] - A blog about Lazarus and Free Pascal in general - Joost van der Sluis
| |
− |
| |
− | ===Websites===
| |
− |
| |
− | *[http://mercury.it.swin.edu.au/swinbrain/index.php/Pascal#Pascal_Development_Tools Pascal - SwinBrain] - Unique free pascal tutorial and documentation at Swinburne University
| |
− | *[http://aprendepascal.wikidot.com Programando en Pascal] - Spanish tutorial focused on FPC/Lazarus, hosted in Wikidot.
| |
− | *[http://sheepdogguides.com/lut/ Lazarus Programming Tutorials]
| |
− | *[[Object Pascal Tutorial]] ''Wiki version'' - [http://www.taoyue.com/ Tao Yue's] [http://www.taoyue.com/tutorials/pascal/ Pascal Tutorial] (reposted with permission).
| |
− | *[http://www.fpccn.com/ Community for Free Pascal and Lazarus in Chinese.] - Community, forums, source code and demos in Chinese.
| |
− | *[http://pascal.developpez.com/ Pascal - Club d'entraide des développeurs francophones] - Francophone community about Pascal.
| |
− |
| |
− | ===Videos===
| |
− |
| |
− | *See [[Lazarus videos]].
| |
− |
| |
− | ===Books and Magazines===
| |
− |
| |
− | *See [[Pascal and Lazarus Books and Magazines]].
| |
− |
| |
− | ==Missing documentation?==
| |
− | If you miss documentation for Lazarus or FreePascal, you can always write it yourself and submit it to the Lazarus/FPC bugtracker for inclusion.
| |
− | Have a look at:
| |
− | *[[FPDoc Editor]] Built-in documentation editor in Lazarus. Page explains how to get fpdoc help sources and write your own help.
| |
− |
| |
− | [[Category:Lazarus]]
| |