Sources
You can find all my published sources usable in your projects. Only components for Delphi are on another page. All sources published under the terms of the MPL-, GPL- or BSD-License can you change and distribute in any way you want.But in case of MPL or GPL you must publish changes and you mustn't change the license. In case of GPL you must also publish extensions and the source of every program (from you) using it under the terms of the GPL.
Is any of the files published under the terms of more than one license, you can choose one of them.
You can find more and legally valid information in the source files.
| Titel | Beschreibung | Sprache | Lizenz |
|---|---|---|---|
| Farbauswahldialog | A color select dialog with hls- and rgb-mode. | Delphi | GPL |
| Internet Tools | A template based html parser, an auto update class and a http connection wrapper. | FPC | GPL |
| Diagram-Tools | A diagram component based on a model/view system. | FPC/Lazarus | GPL |
| Non-VCL Canvas | A translation of the Delphi-Canvas to non vcl. | Delphi | MPL, GPL |
| BBUtils | Often needed functions missing in FPC. | FPC | GPL |
| Diffreader | A unit to read and write unified diffs. | FPC | GPL |
| TCVirus | An unit/component for the development of joke programs | Delphi | MPL, GPL |
| TCommandLineReader | An unit for the parsing of command line parameters | FPC, Delphi | GPL |
| TAutoUpdater | An unit for an automatically update | FPC | GPL |
| SimpleBrowser | A simple IE-based browser | (Delphi), (EXE) | GPL |
| Huffmankomprimierer | A collection of function for huffman (de-)compression. | Delphi | MPL, GPL |
Farbauswahldialog
GPL
This color select dialog is similar to the default one, but has more possibilities:
Download (16 KB ) jump to top
- All components of rgb and hls are shown.
- You can change any component of rgb/hls in a color gradient
- This component is shown depending of the other two as well as independent
- You can change the other two components in a two-dimensional gradient
- This one is drawn depending on the first component
- Additional you can enable a list of colors to change
Download (16 KB ) jump to top
Internet Tools
GPL
This package consists of three parts working together:
The HTML Parser parses a html page using a language similar to html itself. Therefore you can just copy the html site you want to parse and mark the important things to get a template for the parser. With this template you can extract the marked information from any similar page. (imagine for example you have a site showing several entries from a database. Then you can create a template for one of those entries and the parser will automatically retrieve all entries)
The http-wrapper enables you to switch dynamically between Wininet (default library installed on every Windows computer) and Synapse (platform-independent, but not always installed).
The auto update class can be used to add an auto update function to a program which will check online for a more recent version, download that version automatically and (optionally) install it.
Online Documentation
Download (124 KB ) jump to top
The HTML Parser parses a html page using a language similar to html itself. Therefore you can just copy the html site you want to parse and mark the important things to get a template for the parser. With this template you can extract the marked information from any similar page. (imagine for example you have a site showing several entries from a database. Then you can create a template for one of those entries and the parser will automatically retrieve all entries)
The http-wrapper enables you to switch dynamically between Wininet (default library installed on every Windows computer) and Synapse (platform-independent, but not always installed).
The auto update class can be used to add an auto update function to a program which will check online for a more recent version, download that version automatically and (optionally) install it.
- Parser:
- Templates can be easily created/updated from the existing html file
- Can read all parts of the html file (except comments)
- The values are automatically converted into the correct output encoding
- The template languages allows the use of regular expressions
- The language allows optional elements, loops and conditions
- HTTP-Wrapper:
- Can be used for get/post transmissions over http and https
- Either uses the default Windows library Wininet or the platform independent synapse package
- Auto update:
- Uses a xml format to store the most recent version and a changelog on the server.
- Supports different updates for 32/64-bit platforms and linux,Windows or BSD systems
- Checks if a new version is available without downloading the whole, large changelog
- Allows the execution of an arbitrary command line after the update
Online Documentation
Download (124 KB ) jump to top
Diagram-Tools
GPL
This diagram drawing unit follows a model/view concept like qt: There is a view component responsible for showing the data, and a model class storing them.
This is much more flexible than the traditional way, where the data is handled within the viewing class.
Features:
Download (68 KB ) jump to top
This is much more flexible than the traditional way, where the data is handled within the viewing class.
Features:
- Model/view-concept with automatical synchronisation between different views showing the same model
- Filling with horizontal/vertical color gradient and different line/point-styles
- Interpolation using linear lines or splines
- The diagram data can be modified by the user if wanted
- Multiple axis and point rows as well as a legend naming the latter
- Automatical calculation of the view range and support for floats
- Standardmodels with lists of points, cyclic lists, and a model to merge other ones
- There is a help file
Download (68 KB ) jump to top
Non-VCL Canvas
MPL, GPL
You can draw in a non vcl as if you would be able to use the normal Delphi, when you use this units. They contain a methode as replacement for every TCanvas methode.
The most important features are:
There is a good, German help, and you could use the documentation of TCanvas from Delphi.
Download (28 KB ) jump to top
The most important features are:
- Functions for drawing texts, ellipses, lines, rectangles and polygones.
- Functions for copying parts of pictures.
- Classes for setting font, pen and brush properties.
- A hash class and a ressources manager.
There is a good, German help, and you could use the documentation of TCanvas from Delphi.
Download (28 KB ) jump to top
BBUtils
GPL
These units consist of function which you need very often, when programming in FPC. You can use it to
Online Documentation
Download (36 KB ) jump to top
- Automatical translation of with tr['marked strings'] and components
- insert and remove array elements, invert arrays
- execute a function in another thread.
- compare pchar/strings in different ways
- split strings, change encoding, load/save strings
- calculate Bernoulli statistics
Online Documentation
Download (36 KB ) jump to top
Diffreader
GPL
You can use this unit to read a Unified Diff, do some work on its tree structure and save it finally.
Download (4 KB ) jump to top
- Reads Unified Diffs of one or many files
- Creates valid diffs
- Has functions to remove unnecessary data (see also Simplify Diff)
Download (4 KB ) jump to top
TCVirus
MPL, GPL
These are the most important features of TCvirus:
Download (68 KB ) jump to top
- It gives a canvas for direct drawing on the screen.
- It can mirror the screen.
- It returns handle of important objects like the task button, the task list, and the desktop.
- It can hide your program from the task manager.
- It can open and close the CD door.
Download (68 KB ) jump to top
TCommandLineReader
GPL
This is a command line parser working with Delphi as well as with Free Pascal (not tested under Linux).
In contrast to most of the other command line parsers, here you have to declare the allowed parameter, so the parser can be more intelligent.
The exact features are:
Download (8 KB ) jump to top
In contrast to most of the other command line parsers, here you have to declare the allowed parameter, so the parser can be more intelligent.
The exact features are:
- type conversion
- automatically user notification about wrong parameters
- linux and windows style parameters
- different input possibilities for boolean flags
- understanding of quotation marks
- existing files with names containing spaces can be parsed without quotation marks
Download (8 KB ) jump to top
TAutoUpdater
GPL
This allows an automatical update about the internt.
To use the class you need a wininet unit containing the windows internet functions (above is a new class which use a better customizable xml format).
Features:
Download (12 KB ) jump to top
To use the class you need a wininet unit containing the windows internet functions (above is a new class which use a better customizable xml format).
Features:
- check for new versions
- download them in a compressed zip archive
- extract this
- replace the current executable with the new one on every Windows
- detect missing access rights on Windows NT...
Download (12 KB ) jump to top
SimpleBrowser
GPL
This is a small browser based on the IE.
It is completely useless for a normal user, but you can use it to implement a browser for a certain web page in your program. The appearance and behaviour can be controlled over command line switches, so it allows, for example restricted access.
Download (196 KB ) jump to top
It is completely useless for a normal user, but you can use it to implement a browser for a certain web page in your program. The appearance and behaviour can be controlled over command line switches, so it allows, for example restricted access.
Download (196 KB ) jump to top
Huffmankomprimierer
MPL, GPL
This unit can (de-)compress strings with using the huffman algorithm. In a compressed string a character isn't stored with 8 bit, but the bit count is different.
It is also possible to compress strings in the Unicode Format, arrays and files. These types are simply regarded as Ansi Strings.
This unit doesn't need the VCL.
You get the best compression rates in data which contains many equal characters, but it is always worse than modern compression processes like ACE or RAR.
Download (16 KB ) jump to top
It is also possible to compress strings in the Unicode Format, arrays and files. These types are simply regarded as Ansi Strings.
This unit doesn't need the VCL.
You get the best compression rates in data which contains many equal characters, but it is always worse than modern compression processes like ACE or RAR.
Download (16 KB ) jump to top
www.benibela.de/sources_en.html
Last change of the content of this page: 2010-01-01 01:03:06+0100
Last change of this page: 2010-02-07 23:46:30+0100
