https://wiki.freepascal.org/api.php?action=feedcontributions&user=Nero76&feedformat=atomLazarus wiki - User contributions [en]2024-03-29T13:43:55ZUser contributionsMediaWiki 1.35.6https://wiki.freepascal.org/index.php?title=Multithreaded_Application_Tutorial&diff=44295Multithreaded Application Tutorial2010-08-27T13:19:33Z<p>Nero76: </p>
<hr />
<div>{{Multithreaded Application Tutorial}}<br />
<br />
== Overview ==<br />
This page will try to explain how to write and debug a multi-threaded application with Free Pascal and Lazarus. A multi-threaded application is one that creates two or more threads of execution that work at the same time. If you are new to multi-threading, please read the paragraph "Do you need multi-threading?" to determine whether it is really required; this may save you many headaches.<br />
<br />
One of the threads is called the Main Thread. The Main Thread is the one that is created by the Operating System once our application starts. The Main Thread '''must be''' the only thread that updates the components that interfaces with the user: otherwise, the application may hang.<br />
<br />
The main idea is that the application can do some processing in background in a second thread while the user can continue working using the main thread.<br />
<br />
Another use of threads is just to have a better responding application. If you create an application, and when the user presses a button the application starts processing a big job... and while processing, the screen stops responding, and gives the user the impression that the application is frozen, a poor or misleading impression will be created. If the big job runs in a second thread, the application keeps responding (almost) as if it were idle. In this case it is a good idea, before starting the thread, to disable the buttons of the form to avoid the user starting more than one thread for the job.<br />
<br />
Another use of multi-threading may be a server application that is able to respond to many clients at the same time.<br />
<br />
== Do you need multi-threading? ==<br />
<br />
If you are new to multi-threading and you only want to make your application more responsive while your application performs moderately long-running tasks, then multi-threading may be more than is required.<br />
Multi-threaded applications are always more difficult to debug and they are often much more complex; in many cases you don't need multi-threading. A single thread is enough. If you can split up the time-consuming task into several smaller chunks, then instead you should use '''Application.ProcessMessages'''. This method allows the LCL to handle all waiting messages and returns.<br />
The central idea is to call Application.ProcessMessages at regular intervals during the execution of a long-running task to determine whether the user has clicked on something, or a progress indicator must be repainted, and so on.<br />
<br />
For example: Reading a big file and process it. <br />
See examples/multithreading/singlethreadingexample1.lpi.<br />
<br />
Multi-threading is only needed for<br />
* blocking handles, like network communications<br />
* using multiple processors simultaneously (SMP)<br />
* algorithms and library calls that must be called through an API an as such cannot be split up into smaller parts.<br />
<br />
== The TThread Class ==<br />
<br />
The following example can be found in the examples/multithreading/ directory.<br />
<br />
To create a multi-threaded application, the easiest way is to use the TThread Class. This class permits the creation of an additional thread (alongside the main thread) in a simple way. Normally you are required to override only 2 methods: the Create constructor, and the Execute method.<br />
<br />
In the constructor, you will prepare the thread to run. You will set the initial values of the variables or properties you need. The original constructor of TThread requires a parameter called Suspended. As you might expect, setting Suspended = True will prevent the thread starting automatically after the creation. If Suspended = False, the thread will start running just after the creation. If the thread is created suspended, then it will run only after the Resume method is called.<br />
<br />
As of FPC version 2.0.1 and later, TThread.Create also has an implicit parameter for Stack Size. You can now change the default stack size of each thread you create if you need it. Deep procedure call recursions in a thread are a good example. If you don't specify the stack size parameter, a default OS stack size is used.<br />
<br />
In the overridden Execute method you will write the code that will run on the thread.<br />
<br />
The TThread class has one important property: <br />
Terminated : boolean;<br />
<br />
If the thread has a loop (and this is typical), the loop should be exited when Terminated is true (it is false by default). Within each pass, the value of Terminated must be checked, and if it is true then the loop should be exited as quickly as is appropriate, after any necessary cleanup. Bear in mind that the Terminate method does not do anything by default: the .Execute method must explicitly implement support for it to quit its job.<br />
<br />
As we explained earlier, the thread should not interact with the visible components. Updates to visible components must be made within the context of the main thread. To do this, a TThread method called Synchronize exists. Synchronize requires a method (that takes no parameters) as an argument. When you call that method through Synchronize(@MyMethod), the thread execution will be paused, the code of MyMethod will run in the main thread, and then the thread execution will be resumed. The exact working of Synchronize depends on the platform, but basically it does this: it posts a message onto the main message queue and goes to sleep. Eventually the main thread processes the message and calls MyMethod. This way MyMethod is called without context, that means not during a mouse down event or during paint event, but after. After the main thread executed MyMethod, it wakes the sleeping Thread and processes the next message. The Thread then continues.<br />
<br />
There is another important property of TThread: FreeOnTerminate. If this property is true, the thread object is automatically freed when the thread execution (.Execute method) stops. Otherwise the application will need to free it manually.<br />
<br />
Example:<br />
<br />
<delphi><br />
Type<br />
TMyThread = class(TThread)<br />
private<br />
fStatusText : string;<br />
procedure ShowStatus;<br />
protected<br />
procedure Execute; override;<br />
public<br />
Constructor Create(CreateSuspended : boolean);<br />
end;<br />
<br />
constructor TMyThread.Create(CreateSuspended : boolean);<br />
begin<br />
FreeOnTerminate := True;<br />
inherited Create(CreateSuspended);<br />
end;<br />
<br />
procedure TMyThread.ShowStatus;<br />
// this method is executed by the mainthread and can therefore access all GUI elements.<br />
begin<br />
Form1.Caption := fStatusText;<br />
end;<br />
<br />
procedure TMyThread.Execute;<br />
var<br />
newStatus : string;<br />
begin<br />
fStatusText := 'TMyThread Starting...';<br />
Synchronize(@Showstatus);<br />
fStatusText := 'TMyThread Running...';<br />
while (not Terminated) and ([any condition required]) do<br />
begin<br />
...<br />
[here goes the code of the main thread loop]<br />
...<br />
if NewStatus <> fStatusText then<br />
begin<br />
fStatusText := newStatus;<br />
Synchronize(@Showstatus);<br />
end;<br />
end;<br />
end;<br />
</delphi><br />
<br />
On the application,<br />
<br />
<delphi><br />
var<br />
MyThread : TMyThread;<br />
begin<br />
MyThread := TMyThread.Create(True); // This way it doesn't start automatically<br />
...<br />
[Here the code initialises anything required before the threads starts executing]<br />
...<br />
MyThread.Resume;<br />
end;<br />
</delphi><br />
<br />
If you want to make your application more flexible you can create an event for the thread; this way your synchronized method won't be tightly coupled with a specific form or class: you can attach listeners to the thread's event. Here is an example:<br />
<br />
<delphi><br />
Type<br />
TShowStatusEvent = procedure(Status: String) of Object;<br />
<br />
TMyThread = class(TThread)<br />
private<br />
fStatusText : string;<br />
FOnShowStatus: TShowStatusEvent;<br />
procedure ShowStatus;<br />
protected<br />
procedure Execute; override;<br />
public<br />
Constructor Create(CreateSuspended : boolean);<br />
property OnShowStatus: TShowStatusEvent read FOnShowStatus write FOnShowStatus;<br />
end;<br />
<br />
constructor TMyThread.Create(CreateSuspended : boolean);<br />
begin<br />
FreeOnTerminate := True;<br />
inherited Create(CreateSuspended);<br />
end;<br />
<br />
procedure TMyThread.ShowStatus;<br />
// this method is executed by the mainthread and can therefore access all GUI elements.<br />
begin<br />
if Assigned(FOnShowStatus) then<br />
begin<br />
FOnShowStatus(fStatusText);<br />
end;<br />
end;<br />
<br />
procedure TMyThread.Execute;<br />
var<br />
newStatus : string;<br />
begin<br />
fStatusText := 'TMyThread Starting...';<br />
Synchronize(@Showstatus);<br />
fStatusText := 'TMyThread Running...';<br />
while (not Terminated) and ([any condition required]) do<br />
begin<br />
...<br />
[here goes the code of the main thread loop]<br />
...<br />
if NewStatus <> fStatusText then<br />
begin<br />
fStatusText := newStatus;<br />
Synchronize(@Showstatus);<br />
end;<br />
end;<br />
end;<br />
</delphi><br />
<br />
On the application,<br />
<br />
<delphi><br />
Type<br />
TForm1 = class(TForm)<br />
Button1: TButton;<br />
Label1: TLabel;<br />
procedure FormCreate(Sender: TObject);<br />
procedure FormDestroy(Sender: TObject);<br />
private<br />
{ private declarations }<br />
MyThread: TMyThread; <br />
procedure ShowStatus(Status: string);<br />
public<br />
{ public declarations }<br />
end;<br />
<br />
procedure TForm1.FormCreate(Sender: TObject);<br />
begin<br />
inherited;<br />
MyThread := TMyThread.Create(true);<br />
MyThread.OnShowStatus := @ShowStatus;<br />
end;<br />
<br />
procedure TForm1.FormDestroy(Sender: TObject);<br />
begin<br />
MyThread.Terminate;<br />
MyThread.Free;<br />
inherited;<br />
end;<br />
<br />
procedure TForm1.Button1Click(Sender: TObject);<br />
begin<br />
MyThread.Resume;<br />
end;<br />
<br />
procedure TForm1.ShowStatus(Status: string);<br />
begin<br />
Label1.Caption := Status;<br />
end;<br />
</delphi><br />
<br />
== Special things to take care of ==<br />
<br />
=== Stack checking under Windows ===<br />
<br />
There is a potential headache in Windows with Threads if you use the -Ct (stack check) switch.<br />
For reasons not so clear the stack check will "trigger" on any TThread.Create if you use the default stack size.<br />
The only work-around for the moment is to simply not use -Ct switch. Note that it does NOT cause an exception in<br />
the main thread, but in the newly created one. This "looks" like if the thread was never started.<br />
<br />
A good code to check for this and other exceptions which can occur in thread creation is:<br />
<br />
<br />
MyThread:=TThread.Create(False);<br />
if Assigned(MyThread.FatalException) then<br />
raise MyThread.FatalException;<br />
<br />
<br />
This code will assure that any exception which occurred during thread creation will be raised in your main thread.<br />
<br />
== Units needed for a multi-threaded application ==<br />
You don´t need any special unit for this to work with Windows.<br />
However with Linux, Mac OS X and FreeBSD, you need the cthreads unit and it ''must'' be the first used unit of the project (the program unit, .lpr)!<br />
<br />
So, your Lazarus application code should look like:<br />
<br />
<Delphi><br />
program MyMultiThreadedProgram;<br />
{$mode objfpc}{$H+}<br />
uses<br />
{$ifdef unix}<br />
cthreads,<br />
cmem, // the c memory manager is on some systems much faster for multi-threading<br />
{$endif}<br />
Interfaces, // this includes the LCL widgetset<br />
Forms<br />
{ you can add units here },<br />
</Delphi><br />
<br />
If you forget this and you use TThread you will get this error on startup:<br />
This binary has no thread support compiled in.<br />
Recompile the application with a thread-driver in the program uses clause before other units using thread.<br />
<br />
=== Multithreading in packages ===<br />
Packages which uses multi-threading should add the '''-dUseCThreads''' flag to the custom usage options. Open the package editor of the package, then Options > Usage > Custom and add ''-dUseCThreads''. This will define this flag to all projects and packages using this package, including the IDE. The IDE and all new applications created by the IDE have already the following code in their .lpr file:<br />
<Delphi><br />
uses<br />
{$IFDEF UNIX}{$IFDEF UseCThreads}<br />
cthreads,<br />
cmem, // the c memory manager is on some systems much faster for multi-threading<br />
{$ENDIF}{$ENDIF}<br />
</DELPHI><br />
<br />
===Heaptrc===<br />
<br />
You can not use the -gh switch with the ''cmem'' unit. The -gh switch uses the heaptrc unit, which extends the heap manager. Therefore the '''heaptrc''' unit must be used '''after''' the '''cmem''' unit.<br />
<br />
<Delphi><br />
uses<br />
{$IFDEF UNIX}{$IFDEF UseCThreads}<br />
cthreads,<br />
cmem, // the c memory manager is on some systems much faster for multi-threading<br />
{$ENDIF}{$ENDIF}<br />
heaptrc,<br />
</DELPHI><br />
<br />
== SMP Support ==<br />
The good news is that if your application works properly multi-threaded this way, it is already SMP enabled!<br />
<br />
== Debugging Multi-threaded Applications with Lazarus ==<br />
The debugging on Lazarus requires GDB and is rapidly becoming more and more fully featured and stable. However, there still exists a few Linux distributions with some problems. <br />
<br />
=== Debugging output ===<br />
In a single threaded application, you can simply write to console/terminal/whatever and the order of the lines is the same as they were written.<br />
In multi-threaded application things are more complicated. If two threads are writing, say a line is written by thread A before a line by thread B, then the lines are not necessarily written in that order. It can even happen, that a thread writes its output, while the other thread is writing a line.<br />
<br />
The LCLProc unit contains several functions, to let each thread write to its own log file:<br />
procedure DbgOutThreadLog(const Msg: string); overload;<br />
procedure DebuglnThreadLog(const Msg: string); overload;<br />
procedure DebuglnThreadLog(Args: array of const); overload;<br />
procedure DebuglnThreadLog; overload;<br />
<br />
For example:<br />
Instead of ''writeln('Some text ',123);'' use <br />
DebuglnThreadLog(['Some text ',123]);<br />
<br />
This will append a line 'Some text 123' to '''Log<PID>.txt''', where <PID> is the process ID of the current thread.<br />
<br />
It is a good idea to remove the log files before each run:<br />
rm -f Log* && ./project1<br />
<br />
=== Linux ===<br />
If you try to debug a multi-threaded application on Linux, you will have one big problem: the Desktop Manager on X server will hang. When that happens you can simply exit out of that session and create a new session by pressing CTRL+ALT+F3. That will give you a new session prompt. Once there enter sudo /etc/init.d/gdm restart. This will restart the desktop manager and get you back into your desktop.<br />
<br />
One method that solved this problem for Ubuntu x64 is to set the Project options for debugging required extra information file...<br />
<br />
Project Options -> Compiler Options -> Linking -> Debugging: Check Use external gdb debug symbols file (-Xg).<br />
<br />
If the above solution does not work a workaround is:<br />
<br />
Create a new instance of X with:<br />
<br />
X :1 &<br />
<br />
It will open, and when you switch to another desktop (the one you are working with pressing CTRL+ALT+F7), you will be able to go back to the new graphical desktop with CTRL+ALT+F8 (if this combination does not work, try with CTRL+ALT+F2... this one worked on [http://www.slackware.com Slackware]).<br />
<br />
Then you could, if you want, create a desktop session on the X started with:<br />
<br />
gnome-session --display=:1 &<br />
<br />
Then, in Lazarus, on the run parameters dialog for the project, check "Use display" and enter :1.<br />
<br />
Now the application will run on the second X server and you will be able to debug it on the first one.<br />
<br />
This was tested with Free Pascal 2.0 and Lazarus 0.9.10 on Windows and Linux.<br />
<br />
<br />
----<br />
<br />
Instead of creating a new X session, one can use [http://en.wikipedia.org/wiki/Xnest Xnest]. Xnest is a X session on a window. Using it X server didn't lock while debugging threads, and it's much easier to debug without keeping changing terminals.<br />
<br />
The command line to run Xnest is<br />
<br />
Xnest :1 -ac<br />
<br />
to create a X session on :1, and disabling access control.<br />
<br />
== Widgetsets ==<br />
The win32, the gtk and the carbon interfaces fully support multi-threading. This means, TThread, critical sections and Synchronize work.<br />
<br />
== Critical sections ==<br />
A ''critical section'' is an object used to make sure, that some part of the code is executed only by one thread at a time. A critical section needs to be created/initialized before it can be used and be freed when it is not needed anymore.<br />
<br />
Critical sections are normally used this way:<br />
<br />
Add the unit SyncObjs.<br />
<br />
Declare the section (globally for all threads which should access the section):<br />
MyCriticalSection: TRTLCriticalSection;<br />
<br />
Create the section:<br />
InitializeCriticalSection(MyCriticalSection);<br />
<br />
Run some threads. Doing something exclusively<br />
EnterCriticalSection(MyCriticalSection);<br />
try<br />
// access some variables, write files, send some network packets, etc<br />
finally<br />
LeaveCriticalSection(MyCriticalSection);<br />
end;<br />
<br />
After all threads terminated, free it:<br />
DeleteCriticalSection(MyCriticalSection);<br />
<br />
As an alternative, you can use a TCriticalSection object. The creation does the initialization, the Enter method does the EnterCriticalSection, the Leave method does the LeaveCriticalSection and the destruction of the object does the deletion.<br />
<br />
For example: 5 threads incrementing a counter.<br />
See lazarus/examples/multithreading/criticalsectionexample1.lpi<br />
<br />
'''BEWARE:''' There are two sets of the above 4 functions. The RTL and the LCL ones. The LCL ones are defined in the unit LCLIntf and LCLType. Both work pretty much the same. You can use both at the same time in your application, but you should not use a RTL function with an LCL Critical Section and vice versus.<br />
<br />
<br />
=== Sharing Variables ===<br />
If some threads share a variable, that is read only, then there is nothing to worry about. Just read it.<br />
But if one or several threads changes the variable, then you must make sure, that only one thread accesses the variables at a time.<br />
<br />
For example: 5 threads incrementing a counter.<br />
See lazarus/examples/multithreading/criticalsectionexample1.lpi<br />
<br />
== Waiting for another thread ==<br />
If a thread A needs a result of another thread B, it must wait, till B has finished. <br />
<br />
'''Important:''' The main thread should never wait for another thread. Instead use Synchronize (see above).<br />
<br />
See for an example: lazarus/examples/multithreading/waitforexample1.lpi<br />
<br />
<delphi><br />
{ TThreadA }<br />
<br />
procedure TThreadA.Execute;<br />
begin<br />
Form1.ThreadB:=TThreadB.Create(false);<br />
// create event<br />
WaitForB:=RTLEventCreate;<br />
while not Application.Terminated do begin<br />
// wait infinitely (until B wakes A)<br />
RtlEventWaitFor(WaitForB);<br />
writeln('A: ThreadB.Counter='+IntToStr(Form1.ThreadB.Counter));<br />
end;<br />
end;<br />
<br />
{ TThreadB }<br />
<br />
procedure TThreadB.Execute;<br />
var<br />
i: Integer;<br />
begin<br />
Counter:=0;<br />
while not Application.Terminated do begin<br />
// B: Working ...<br />
Sleep(1500);<br />
inc(Counter);<br />
// wake A<br />
RtlEventSetEvent(Form1.ThreadA.WaitForB);<br />
end;<br />
end;<br />
</delphi><br />
<br />
Note: RtlEventSetEvent can be called before RtlEventWaitFor. Then RtlEventWaitFor will return immediately. Use RTLeventResetEvent to clear a flag.<br />
<br />
== Fork ==<br />
When forking in a multi-threaded application, be aware that any threads created and running BEFORE the fork (or fpFork) call, will NOT be running in the child process. As stated on the fork() man page, any threads that were running before the fork call, their state will be undefined.<br />
<br />
So be aware of any threads initializing before the call (including on the initialization section). They will NOT work.<br />
<br />
== Parallel procedures/loops ==<br />
A special case of multi threading is running a single procedure in parallel. See [[Parallel procedures]].<br />
<br />
== Distributed computing ==<br />
The next higher steps after multi threading is running the threads on multiple machines. <br />
* You can use one of the TCP suites like synapse, lnet or indy for communications. This gives you maximum flexibility and is mostly used for loosely connected Client / Server applications.<br />
* You can use message passing libraries like [[MPICH]], which are used for HPC (High Performance Computing) on clusters.<br />
<br />
<br />
<br />
== External threads ==<br />
To make Free Pascal's threading system to work properly, each newly created FPC thread needs to be initialized (more exactly, the exception, I/O system and threadvar system per thread needs to be initialized so threadvars and heap are working). That is fully automatically done for you if you use BeginThread (or indirectly by using the TThread class). However, if you use threads that were created without BeginThread (i.e. external threads), additional work (currently) might be required. External threads also include those that were created in external C libraries (.DLL/.so). <br />
<br />
<br />
Things to consider when using external threads (might not be needed in all or future compiler versions): <br />
<br />
* Do not use external threads at all - use FPC threads. If can you can get control over how the thread is created, create the thread by yourself by using BeginThread.<br />
<br />
If the calling convention doesn't fit (e.g. if your original thread function needs cdecl calling convention but BeginThread needs pascal convention, create a record, store the original required thread function in it, and call that function in your pascal thread function: <br />
<br />
<Delphi><br />
type <br />
TCdeclThreadFunc = function (user_data:Pointer):Pointer;cdecl; <br />
<br />
PCdeclThreadFuncData = ^TCdeclThreadFunc; <br />
TCdeclThreadFuncData = record<br />
Func: TCdeclThreadFunc; //cdecl function<br />
Data: Pointer; //original data<br />
end; <br />
<br />
// The Pascal thread calls the cdecl function<br />
function C2P_Translator(FuncData: pointer) : ptrint;<br />
var<br />
ThreadData: TCdeclThreadFuncData;<br />
begin <br />
ThreadData := PCdeclThreadFuncData(FuncData)^;<br />
Result := ptrint(ThreadData.Func(ThreadData.Data));<br />
end; <br />
<br />
procedure CreatePascalThread;<br />
var<br />
ThreadData: PCdeclThreadFunc; <br />
begin <br />
New(ThreadData);<br />
// this is the desired cdecl thread function<br />
ThreadData^.Func := func; <br />
ThreadData^.Data := user_data; <br />
// this creates the Pascal thread<br />
BeginThread(@C2P_Translator, ThreadData );<br />
end; <br />
</Delphi><br />
<br />
<br />
* Initialize the FPC's threading system by creating a dummy thread. If you don't create any Pascal thread in your app, the thread system won't be initialized (and thus threadvars won't work and thus heap will not work correctly). <br />
<br />
<Delphi><br />
type<br />
tc = class(tthread)<br />
procedure execute;override;<br />
end;<br />
<br />
procedure tc.execute;<br />
begin<br />
end;<br />
<br />
{ main program } <br />
begin<br />
{ initialise threading system }<br />
with tc.create(false) do<br />
begin<br />
waitfor;<br />
free;<br />
end;<br />
{ ... your code follows } <br />
end. <br />
</Delphi><br />
<br />
(After the threading system is initialized, the runtime may set the system variable "IsMultiThread" to true which is used by FPC routines to perform locks here and there. You should not set this variable manually.) <br />
<br />
<br />
* If for some reason this doesn't work for you, try this code in your external thread function:<br />
<br />
<Delphi> <br />
function ExternalThread(param: Pointer): LongInt; stdcall;<br />
var<br />
tm: TThreadManager;<br />
begin<br />
GetThreadManager(tm);<br />
tm.AllocateThreadVars;<br />
InitThread(1000000); // adjust inital stack size here<br />
<br />
{ do something threaded here ... }<br />
<br />
Result:=0;<br />
end; <br />
</Delphi><br />
<br />
<br />
=== Identifying external threads ===<br />
Sometimes you even don't know if you have to deal with external threads (e.g. if some C library makes a callback). This can help to analyse this: <br />
<br />
1. Ask the OS for the ID of the current thread at your application's start <br />
<br />
<Delphi><br />
Win32: GetCurrentThreadID();<br />
Darwin: GetThreadID(); <br />
Linux: TThreadID(pthread_self);<br />
</Delphi><br />
<br />
2. Ask again for the ID of the current thread inside the thread function and compare this by the result of step 1.<br />
<br />
----<br />
[[Streaming components]]</div>Nero76https://wiki.freepascal.org/index.php?title=Bounties&diff=41655Bounties2010-03-25T08:48:19Z<p>Nero76: /* Carbon bounties */</p>
<hr />
<div>{{Bounties}}<br />
<br />
=Introduction=<br />
<br />
Need a particular feature? Set a price here, giving a short description, your name and email address. Hopefully, one or more people will contact you and you can arrange the terms of this development work.<br />
<br />
Currently, Lazarus depends on volunteers to implement everything on it. Recently Lazarus popularity has increased a lot, and many commercial projects are being developed with it. The idea behind the Bounties is '''not''' to substitute the current Mantis bug system, where work will continue normally. The idea is to provide a new development mechanism where commercial application developers can receive professional support and at the same time be able to contribute back to the community. <br />
<br />
If there is no one interested in your bounty, it's probably because the price is too low. Also, try to keep all bounties above 50 dollars. Bellow that it usually won't be worth the time investigating the problem. Please also date your bounties. This way at some point we can weed out really old ones.<br />
<br />
Examples:<br />
<br />
* Make Lazarus hello world work on PamOS 5 Garnet. $1000 Contact myemail@domain.com<br />
* Implement a new feature. Please make a budget Contact myemail@domain.com<br />
<br />
=Multi-platform bounties=<br />
<br />
== Cross-Compile to Android on Ubuntu X64 ==<br />
I would like to be able to build Android apps using Lazarus/Object Pascal on Ubuntu X64.<br />
<br />
US $50.00/Paypal<br />
<br />
Contact: mjoyner _at_ vbservices .dot. net<br />
<br />
== Optimizations for FPC/Lazarus ==<br />
Two bounties, totally $100 for speed optimizations for FPC/Lazarus are described on my web page http://www.sph.sc.edu/comd/rorden/mricron/bounty/. Martin Friebe won one of these (for changing the code, not the compiler) and donated the $50 to the [How to donate to Lazarus|Lazarus paypal account].<br />
<br />
== IDE Enhancements ==<br />
<br />
1.) If a path is added in the Compiler-Options of a project then add the path as a relative path instead of an absolute path. $20<br />
<br />
<s> 2.) If in the MessageView the sentence "Can't find unit XYZ" is displayed, it should be possible to doubleclick onto the<br />
word "XYZ" and this would open the "FindInFiles" dialog. $20 </s> Solved by Mattias.<br />
<br />
Contact: sam_solver_AT_yahoo(dot)com<br />
<br />
== GLScene improvements ==<br />
<br />
The GLScene Texture3D demo (Lazarus version at http://www.mricro.com/texture3d.zip) currently generates volume rendering. I want to encourage someone to add the ability to add surface shading. The picture at http://www.mricro.com/rendert.jpg shows a sample image with pure volume rendering (left), pure surface shading (middle) and a mixture. I would like to achieve this using the GPU. A compiled program with C++ source code and sample image is available at<br />
http://www.real-time-volume-graphics.org/?page_id=5<br />
To see the effect, download the 3D Texture Slicer and launch the SimpleSlicer.exe. At first the program displays a volume rendering, but press the 'm' key to switch the mode to surface shading. The book associated with this C++ code describes the implementation: Listing 5.6 for computing on-the-fly-gradients and Listing 5.1 for the Blinn-Phong shading. See Figure 5.5 for example output...<br />
[http://books.google.com/books?id=lDWOu3_KGvoC&pg=PA119&lpg=PA119&dq=%22cg+function+implementing+the+blinn-phong%22&source=bl&ots=TcX6X0Kxgc&sig=XukQa8E2_nlcM7qMFZV1ujam0Z4&hl=en&ei=yFctSrjsNJ6ltgeJrN2-CA&sa=X&oi=book_result&ct=result&resnum=1 Click to see Blinn-Phong shading Figure 5.5]<br />
Bounty will be paid to the first person who can send me GPU-accelerated shading for the Texture3D demo, or my open source MRIcroGL (http://www.mricro.com/mricrogl). Contact rorden_AT_gatech(dot)edu<br />
$300<br />
<br />
== GLScene improvements ==<br />
<br />
I am looking for a GLScene implementation that can reduce the triangle count <br />
of a GLFreeForm mesh. In other words, I want to remove the <br />
vertices/triangles that do not substantially improve the image. Here are two <br />
source plus executatable implementations for C++, but it is not clear how to <br />
implement this elegantly with Pascal<br />
http://www.melax.com/polychop<br />
http://www.jsomers.com/vipm_demo/meshsimp.html<br />
I think a solution would be generally useful to many GLScene users, and I <br />
would personally offer a $50 USD bounty to the first person who can provide <br />
me with a solution. The GLScene MeshSource demo might be a good example, as <br />
it starts with a cube composed of 300 triangles (whereas it could be <br />
decimated to 12 losslessly). Contact rorden_AT_gatech(dot)edu<br />
<br />
== SQL Database Administration Components $500 US ==<br />
<br />
FPC/Lazarus needs a cross platform TSQLConnector based component for Create & Drop Databases, Add Table Drop Table and Alter Table. The solution to this bounty will be complete when a base TSQLAdministration component is developed to manage fields, tables, and database. Fields and their types must be enforced. TSQLAdministration extensions for native MySQL, PostgreSQL, and OracleSQL<br />
must also be supported. <br />
<br />
The Base class and Three extended classes must be packaged and included in Lazarus distribution for optional installation in the IDE pallet.<br />
<br />
The individual or point of contact for a group will receive $500.00 ($US). Contact Andrew Brunner (andrew.t.brunner@gmail.com) to register. A work in progress should be submitted to appropriate FPC/Lazarus SVN.<br />
<br />
== Lazarus running on a Linux machine compiling to Arm/Linux $500 US ==<br />
<br />
I need help to install Lazarus, FPC and other files to compile a "HELLO WORLD" binary to Arm/Linux hardware.<br />
Contact Anderson Magalhaes (anderson@mobilitysistemas.com.br). (If you are in Brazil we can pay flight tickets and other needs)<br />
<br />
=Windows bounties=<br />
<br />
==Fixing bug #7182 - $100==<br />
$100 for fixing bug #7182 (http://bugs.freepascal.org/view.php?id=7182). Contact oleg_3630 at mail.ru.<br />
<br />
==Reparent Forms (100€)==<br />
Related to the bounty above, I'd like to spend another 100€ (see bounty above) for anyone who manages to reparent a form with a specified owner (data module) to a given parent window handle (HWnd). In Delphi this is pretty simple (ParentWindow := NewParentWindowHandle), but it is not working properly in Lazarus. The form should be reparented completely (incl. accepting keyboard/mouse input and such). The solution should work on several platforms (i.e. no direct call to the WinAPI or such, this should be handled by the LCL)<br />
The code will be used for my open source project "Delphi ASIO & VST Packages" to make them usable with Lazarus (planned for version 1.5). Please contact me prior to fixing this (Christian at savioursofsoul.de)<br />
<br />
=Gtk bounties=<br />
<br />
==Fix bug - $10==<br />
<br />
http://mantis.freepascal.org/view.php?id=11906<br />
Contact http://www.wordwebsoftware.com/contact.html<br />
<br />
==Fix GLScene volume rendering on Linux==<br />
<br />
* $100.00 US for anyone who can get GLScene's volume rendering working on Linux. I have adapted Jürgen Abel's Texture3D glscene demo (http://glscene.sourceforge.net/wikka/UserDemos/) to compile under either Delphi or Lazarus. My new code is here www.mricro.com/texture3d.zip. The Lazarus code (0.9.26.2, using SVN snapshot of GLScene) works fine under Windows and OSX, but when I compile it with Linux the volume is always rendered as an opaque white cube. I get the same results with Fedora10 using ATI 4850 and Ubuntu 9.04 using a NVidia GTX9800. Both computers are set up with the recommended proprietary. Contact rorden@mailbox.sc.edu<br />
<br />
=Windows CE bounties=<br />
<br />
None<br />
'''Bold text'''<br />
<br />
=Symbian bounties=<br />
<br />
==RTL for Symbian phones - $1000==<br />
Create an RTL for Symbian phones (FPC for ARM already exists).<br />
* Include a very simple GUI app (like [http://ccrdu.de/files/fpc/NoFrameworkAppDemo.lpr this one] for PocketPC).<br />
* Needed for Symbian UIQ 2 and 3 at least. <br />
* Bounty $1000, open for negotiation if Series 60/80/90 supported. <br />
* Contact ''bounty (at) ccrdu.de''.<br />
<br />
=Carbon bounties=<br />
<br />
None<br />
<br />
=Qt bounties=<br />
<br />
None<br />
<br />
=fpGUI bounties=<br />
<br />
None<br />
<br />
=Closed bounties=<br />
<br />
These are examples of successfully concluded bounties. <br />
<br />
===GTK2 clipping rect error===<br />
Paul Ishenin earned $50 for fixing a bug with GTK2 (Clipping rect of newly created bitmap was invalid). He then donated these funds to the Lazarus PayPal account.<br />
http://bugs.freepascal.org/view.php?id=12026<br />
<br />
===Small Fix for Linux x86_64 IDE===<br />
<br />
*Vincent earned $50 US for discovering why Linux x86_64 caused the IDE to report an Access Violation when opening the MRIcron project. This bug was also reported on Mantis (http://www.freepascal.org/mantis/view.php?id=9216).<br />
<br />
===Carbon Components===<br />
<br />
*Tombo earned $600 US for developing new Carbon components including TSpinEdit, TFloatSpinEdit, TSpeedButton<br />
<br />
*Tombo earned $50.00 US for extending [[LazRGBGraphics]] to support the QT widgetset - offered by rorden at gwm.sc.edu<br />
<br />
===Small Windows Bugs===<br />
<br />
*Jesús earned $40 US for fixing a bug where copying images with the edit/copy caused all pixels with the color shown in the bottom-left corner to appear black (http://www.sph.sc.edu/comd/rorden/mricron/bounty/)<br />
<br />
===Apache modules - €300===<br />
<br />
*Apache modules header translation and basic example. '''Awarded to [[User:Sekelsenmat|Sekelsenmat]]'''.<br />
: [[FPC and Apache Modules]]<br />
<br />
=== Making paszlib zipper Mac/Unix compatible ===<br />
Tom G. earned 100 EUR for making the paszlib zipper Mac/Unix compatible. The [http://svn.freepascal.org/svn/fpc/trunk/packages/paszlib/src/zipper.pp zipper] (TUnZipper.UnzipAllFiles) had no support for symbolic links, did not set executable bits of unzipped executable files, did not support directories, and raised a CRC exception. Thanks Tom for fixing this! - offered by Grau GbR (www.grauonline.de)<br />
<br />
===Make TListView "Virtual"===<br />
Dmitry B. (aka skalogryz) earned 200 EUR for making the Win32 and Carbon TListView implementations "virtual" - before that, TListView was not 100% Delphi compatible - the ability to set OwnerData=true together with an OnData Event-Handler was missing (http://bugs.freepascal.org/view.php?id=7749). Thanks Dmitry for fixing this! - offered by Grau GbR (www.grauonline.de)<br />
<br />
===bug 15768===<br />
Paul Ishenin earned $300 for fixing an access violation produced when raising an exception (any exception) in a safecall method for the x64 compiler ([http://bugs.freepascal.org/bug_view_advanced_page.php?bug_id=15768 bug 15768]).<br />
Bounty was offered by Dmitry Streblechenko.<br />
<br />
=Abandoned Bounties=<br />
<br />
== FPC grammar ==<br />
Creation and support of grammar FPC in notation EBNF in meta-language GOLD Meta-Language ( http://www.devincook.com/goldparser/grammars/index.htm ). The grammar should include all opportunities of language: interfaces, comments, instructions of the compiler, all announcements, keywords, etc. >1000$. Contact xayam@yandex.ru<br />
:I Contacted the author without repply. --[[User:Sekelsenmat|Sekelsenmat]] 15:46, 15 March 2010 (CET)<br />
'''Bold text'''</div>Nero76https://wiki.freepascal.org/index.php?title=Bounties&diff=41647Bounties2010-03-24T08:56:09Z<p>Nero76: /* Carbon bounties */</p>
<hr />
<div>{{Bounties}}<br />
<br />
=Introduction=<br />
<br />
Need a particular feature? Set a price here, giving a short description, your name and email address. Hopefully, one or more people will contact you and you can arrange the terms of this development work.<br />
<br />
Currently, Lazarus depends on volunteers to implement everything on it. Recently Lazarus popularity has increased a lot, and many commercial projects are being developed with it. The idea behind the Bounties is '''not''' to substitute the current Mantis bug system, where work will continue normally. The idea is to provide a new development mechanism where commercial application developers can receive professional support and at the same time be able to contribute back to the community. <br />
<br />
If there is no one interested in your bounty, it's probably because the price is too low. Also, try to keep all bounties above 50 dollars. Bellow that it usually won't be worth the time investigating the problem. Please also date your bounties. This way at some point we can weed out really old ones.<br />
<br />
Examples:<br />
<br />
* Make Lazarus hello world work on PamOS 5 Garnet. $1000 Contact myemail@domain.com<br />
* Implement a new feature. Please make a budget Contact myemail@domain.com<br />
<br />
=Multi-platform bounties=<br />
<br />
== Cross-Compile to Android on Ubuntu X64 ==<br />
I would like to be able to build Android apps using Lazarus/Object Pascal on Ubuntu X64.<br />
<br />
US $50.00/Paypal<br />
<br />
Contact: mjoyner _at_ vbservices .dot. net<br />
<br />
== Optimizations for FPC/Lazarus ==<br />
Two bounties, totally $100 for speed optimizations for FPC/Lazarus are described on my web page http://www.sph.sc.edu/comd/rorden/mricron/bounty/. Martin Friebe won one of these (for changing the code, not the compiler) and donated the $50 to the [How to donate to Lazarus|Lazarus paypal account].<br />
<br />
== IDE Enhancements ==<br />
<br />
1.) If a path is added in the Compiler-Options of a project then add the path as a relative path instead of an absolute path. $20<br />
<br />
<s> 2.) If in the MessageView the sentence "Can't find unit XYZ" is displayed, it should be possible to doubleclick onto the<br />
word "XYZ" and this would open the "FindInFiles" dialog. $20 </s> Solved by Mattias.<br />
<br />
Contact: sam_solver_AT_yahoo(dot)com<br />
<br />
== GLScene improvements ==<br />
<br />
The GLScene Texture3D demo (Lazarus version at http://www.mricro.com/texture3d.zip) currently generates volume rendering. I want to encourage someone to add the ability to add surface shading. The picture at http://www.mricro.com/rendert.jpg shows a sample image with pure volume rendering (left), pure surface shading (middle) and a mixture. I would like to achieve this using the GPU. A compiled program with C++ source code and sample image is available at<br />
http://www.real-time-volume-graphics.org/?page_id=5<br />
To see the effect, download the 3D Texture Slicer and launch the SimpleSlicer.exe. At first the program displays a volume rendering, but press the 'm' key to switch the mode to surface shading. The book associated with this C++ code describes the implementation: Listing 5.6 for computing on-the-fly-gradients and Listing 5.1 for the Blinn-Phong shading. See Figure 5.5 for example output...<br />
[http://books.google.com/books?id=lDWOu3_KGvoC&pg=PA119&lpg=PA119&dq=%22cg+function+implementing+the+blinn-phong%22&source=bl&ots=TcX6X0Kxgc&sig=XukQa8E2_nlcM7qMFZV1ujam0Z4&hl=en&ei=yFctSrjsNJ6ltgeJrN2-CA&sa=X&oi=book_result&ct=result&resnum=1 Click to see Blinn-Phong shading Figure 5.5]<br />
Bounty will be paid to the first person who can send me GPU-accelerated shading for the Texture3D demo, or my open source MRIcroGL (http://www.mricro.com/mricrogl). Contact rorden_AT_gatech(dot)edu<br />
$300<br />
<br />
== GLScene improvements ==<br />
<br />
I am looking for a GLScene implementation that can reduce the triangle count <br />
of a GLFreeForm mesh. In other words, I want to remove the <br />
vertices/triangles that do not substantially improve the image. Here are two <br />
source plus executatable implementations for C++, but it is not clear how to <br />
implement this elegantly with Pascal<br />
http://www.melax.com/polychop<br />
http://www.jsomers.com/vipm_demo/meshsimp.html<br />
I think a solution would be generally useful to many GLScene users, and I <br />
would personally offer a $50 USD bounty to the first person who can provide <br />
me with a solution. The GLScene MeshSource demo might be a good example, as <br />
it starts with a cube composed of 300 triangles (whereas it could be <br />
decimated to 12 losslessly). Contact rorden_AT_gatech(dot)edu<br />
<br />
== SQL Database Administration Components $500 US ==<br />
<br />
FPC/Lazarus needs a cross platform TSQLConnector based component for Create & Drop Databases, Add Table Drop Table and Alter Table. The solution to this bounty will be complete when a base TSQLAdministration component is developed to manage fields, tables, and database. Fields and their types must be enforced. TSQLAdministration extensions for native MySQL, PostgreSQL, and OracleSQL<br />
must also be supported. <br />
<br />
The Base class and Three extended classes must be packaged and included in Lazarus distribution for optional installation in the IDE pallet.<br />
<br />
The individual or point of contact for a group will receive $500.00 ($US). Contact Andrew Brunner (andrew.t.brunner@gmail.com) to register. A work in progress should be submitted to appropriate FPC/Lazarus SVN.<br />
<br />
== Lazarus running on a Linux machine compiling to Arm/Linux $500 US ==<br />
<br />
I need help to install Lazarus, FPC and other files to compile a "HELLO WORLD" binary to Arm/Linux hardware.<br />
Contact Anderson Magalhaes (anderson@mobilitysistemas.com.br). (If you are in Brazil we can pay flight tickets and other needs)<br />
<br />
=Windows bounties=<br />
<br />
==Fixing bug #7182 - $100==<br />
$100 for fixing bug #7182 (http://bugs.freepascal.org/view.php?id=7182). Contact oleg_3630 at mail.ru.<br />
<br />
==Reparent Forms (100€)==<br />
Related to the bounty above, I'd like to spend another 100€ (see bounty above) for anyone who manages to reparent a form with a specified owner (data module) to a given parent window handle (HWnd). In Delphi this is pretty simple (ParentWindow := NewParentWindowHandle), but it is not working properly in Lazarus. The form should be reparented completely (incl. accepting keyboard/mouse input and such). The solution should work on several platforms (i.e. no direct call to the WinAPI or such, this should be handled by the LCL)<br />
The code will be used for my open source project "Delphi ASIO & VST Packages" to make them usable with Lazarus (planned for version 1.5). Please contact me prior to fixing this (Christian at savioursofsoul.de)<br />
<br />
=Gtk bounties=<br />
<br />
==Fix bug - $10==<br />
<br />
http://mantis.freepascal.org/view.php?id=11906<br />
Contact http://www.wordwebsoftware.com/contact.html<br />
<br />
==Fix GLScene volume rendering on Linux==<br />
<br />
* $100.00 US for anyone who can get GLScene's volume rendering working on Linux. I have adapted Jürgen Abel's Texture3D glscene demo (http://glscene.sourceforge.net/wikka/UserDemos/) to compile under either Delphi or Lazarus. My new code is here www.mricro.com/texture3d.zip. The Lazarus code (0.9.26.2, using SVN snapshot of GLScene) works fine under Windows and OSX, but when I compile it with Linux the volume is always rendered as an opaque white cube. I get the same results with Fedora10 using ATI 4850 and Ubuntu 9.04 using a NVidia GTX9800. Both computers are set up with the recommended proprietary. Contact rorden@mailbox.sc.edu<br />
<br />
=Windows CE bounties=<br />
<br />
None<br />
'''Bold text'''<br />
<br />
=Symbian bounties=<br />
<br />
==RTL for Symbian phones - $1000==<br />
Create an RTL for Symbian phones (FPC for ARM already exists).<br />
* Include a very simple GUI app (like [http://ccrdu.de/files/fpc/NoFrameworkAppDemo.lpr this one] for PocketPC).<br />
* Needed for Symbian UIQ 2 and 3 at least. <br />
* Bounty $1000, open for negotiation if Series 60/80/90 supported. <br />
* Contact ''bounty (at) ccrdu.de''.<br />
<br />
=Carbon bounties=<br />
<br />
==Make Lazarus Debugger work on Mac OS X 10.4==<br />
300 EUR to make the GDB interface work in OS X 10.4 (both PowerPC and i386), so that it is possible to debug a simple hello world app. The debugger should not crash on a simple hello world app (must be working robustly), it should stop on Exceptions, and should be possible to single step/step over like in the Window Lazarus builds.<br />
Contact [http://www.grauonline.de Grau GbR]<br />
<br />
==Fix Lazarus Debugger issues on Mac OS X 10.5==<br />
300 EUR to make the GDB interface more robust in OS X 10.5 (both PowerPC and i386), so that the debugger does not crash in certain cases (when resetting it, making breakpoints etc.) on a simple hello world app. <br />
Contact [http://www.grauonline.de Grau GbR]<br />
<br />
=Qt bounties=<br />
<br />
None<br />
<br />
=fpGUI bounties=<br />
<br />
None<br />
<br />
=Closed bounties=<br />
<br />
These are examples of successfully concluded bounties. <br />
<br />
===GTK2 clipping rect error===<br />
Paul Ishenin earned $50 for fixing a bug with GTK2 (Clipping rect of newly created bitmap was invalid). He then donated these funds to the Lazarus PayPal account.<br />
http://bugs.freepascal.org/view.php?id=12026<br />
<br />
===Small Fix for Linux x86_64 IDE===<br />
<br />
*Vincent earned $50 US for discovering why Linux x86_64 caused the IDE to report an Access Violation when opening the MRIcron project. This bug was also reported on Mantis (http://www.freepascal.org/mantis/view.php?id=9216).<br />
<br />
===Carbon Components===<br />
<br />
*Tombo earned $600 US for developing new Carbon components including TSpinEdit, TFloatSpinEdit, TSpeedButton<br />
<br />
*Tombo earned $50.00 US for extending [[LazRGBGraphics]] to support the QT widgetset - offered by rorden at gwm.sc.edu<br />
<br />
===Small Windows Bugs===<br />
<br />
*Jesús earned $40 US for fixing a bug where copying images with the edit/copy caused all pixels with the color shown in the bottom-left corner to appear black (http://www.sph.sc.edu/comd/rorden/mricron/bounty/)<br />
<br />
===Apache modules - €300===<br />
<br />
*Apache modules header translation and basic example. '''Awarded to [[User:Sekelsenmat|Sekelsenmat]]'''.<br />
: [[FPC and Apache Modules]]<br />
<br />
=== Making paszlib zipper Mac/Unix compatible ===<br />
Tom G. earned 100 EUR for making the paszlib zipper Mac/Unix compatible. The [http://svn.freepascal.org/svn/fpc/trunk/packages/paszlib/src/zipper.pp zipper] (TUnZipper.UnzipAllFiles) had no support for symbolic links, did not set executable bits of unzipped executable files, did not support directories, and raised a CRC exception. Thanks Tom for fixing this! - offered by Grau GbR (www.grauonline.de)<br />
<br />
===Make TListView "Virtual"===<br />
Dmitry B. (aka skalogryz) earned 200 EUR for making the Win32 and Carbon TListView implementations "virtual" - before that, TListView was not 100% Delphi compatible - the ability to set OwnerData=true together with an OnData Event-Handler was missing (http://bugs.freepascal.org/view.php?id=7749). Thanks Dmitry for fixing this! - offered by Grau GbR (www.grauonline.de)<br />
<br />
===bug 15768===<br />
Paul Ishenin earned $300 for fixing an access violation produced when raising an exception (any exception) in a safecall method for the x64 compiler ([http://bugs.freepascal.org/bug_view_advanced_page.php?bug_id=15768 bug 15768]).<br />
Bounty was offered by Dmitry Streblechenko.<br />
<br />
=Abandoned Bounties=<br />
<br />
== FPC grammar ==<br />
Creation and support of grammar FPC in notation EBNF in meta-language GOLD Meta-Language ( http://www.devincook.com/goldparser/grammars/index.htm ). The grammar should include all opportunities of language: interfaces, comments, instructions of the compiler, all announcements, keywords, etc. >1000$. Contact xayam@yandex.ru<br />
:I Contacted the author without repply. --[[User:Sekelsenmat|Sekelsenmat]] 15:46, 15 March 2010 (CET)<br />
'''Bold text'''</div>Nero76https://wiki.freepascal.org/index.php?title=Bounties&diff=41646Bounties2010-03-24T08:46:49Z<p>Nero76: /* Carbon bounties */</p>
<hr />
<div>{{Bounties}}<br />
<br />
=Introduction=<br />
<br />
Need a particular feature? Set a price here, giving a short description, your name and email address. Hopefully, one or more people will contact you and you can arrange the terms of this development work.<br />
<br />
Currently, Lazarus depends on volunteers to implement everything on it. Recently Lazarus popularity has increased a lot, and many commercial projects are being developed with it. The idea behind the Bounties is '''not''' to substitute the current Mantis bug system, where work will continue normally. The idea is to provide a new development mechanism where commercial application developers can receive professional support and at the same time be able to contribute back to the community. <br />
<br />
If there is no one interested in your bounty, it's probably because the price is too low. Also, try to keep all bounties above 50 dollars. Bellow that it usually won't be worth the time investigating the problem. Please also date your bounties. This way at some point we can weed out really old ones.<br />
<br />
Examples:<br />
<br />
* Make Lazarus hello world work on PamOS 5 Garnet. $1000 Contact myemail@domain.com<br />
* Implement a new feature. Please make a budget Contact myemail@domain.com<br />
<br />
=Multi-platform bounties=<br />
<br />
== Cross-Compile to Android on Ubuntu X64 ==<br />
I would like to be able to build Android apps using Lazarus/Object Pascal on Ubuntu X64.<br />
<br />
US $50.00/Paypal<br />
<br />
Contact: mjoyner _at_ vbservices .dot. net<br />
<br />
== Optimizations for FPC/Lazarus ==<br />
Two bounties, totally $100 for speed optimizations for FPC/Lazarus are described on my web page http://www.sph.sc.edu/comd/rorden/mricron/bounty/. Martin Friebe won one of these (for changing the code, not the compiler) and donated the $50 to the [How to donate to Lazarus|Lazarus paypal account].<br />
<br />
== IDE Enhancements ==<br />
<br />
1.) If a path is added in the Compiler-Options of a project then add the path as a relative path instead of an absolute path. $20<br />
<br />
<s> 2.) If in the MessageView the sentence "Can't find unit XYZ" is displayed, it should be possible to doubleclick onto the<br />
word "XYZ" and this would open the "FindInFiles" dialog. $20 </s> Solved by Mattias.<br />
<br />
Contact: sam_solver_AT_yahoo(dot)com<br />
<br />
== GLScene improvements ==<br />
<br />
The GLScene Texture3D demo (Lazarus version at http://www.mricro.com/texture3d.zip) currently generates volume rendering. I want to encourage someone to add the ability to add surface shading. The picture at http://www.mricro.com/rendert.jpg shows a sample image with pure volume rendering (left), pure surface shading (middle) and a mixture. I would like to achieve this using the GPU. A compiled program with C++ source code and sample image is available at<br />
http://www.real-time-volume-graphics.org/?page_id=5<br />
To see the effect, download the 3D Texture Slicer and launch the SimpleSlicer.exe. At first the program displays a volume rendering, but press the 'm' key to switch the mode to surface shading. The book associated with this C++ code describes the implementation: Listing 5.6 for computing on-the-fly-gradients and Listing 5.1 for the Blinn-Phong shading. See Figure 5.5 for example output...<br />
[http://books.google.com/books?id=lDWOu3_KGvoC&pg=PA119&lpg=PA119&dq=%22cg+function+implementing+the+blinn-phong%22&source=bl&ots=TcX6X0Kxgc&sig=XukQa8E2_nlcM7qMFZV1ujam0Z4&hl=en&ei=yFctSrjsNJ6ltgeJrN2-CA&sa=X&oi=book_result&ct=result&resnum=1 Click to see Blinn-Phong shading Figure 5.5]<br />
Bounty will be paid to the first person who can send me GPU-accelerated shading for the Texture3D demo, or my open source MRIcroGL (http://www.mricro.com/mricrogl). Contact rorden_AT_gatech(dot)edu<br />
$300<br />
<br />
== GLScene improvements ==<br />
<br />
I am looking for a GLScene implementation that can reduce the triangle count <br />
of a GLFreeForm mesh. In other words, I want to remove the <br />
vertices/triangles that do not substantially improve the image. Here are two <br />
source plus executatable implementations for C++, but it is not clear how to <br />
implement this elegantly with Pascal<br />
http://www.melax.com/polychop<br />
http://www.jsomers.com/vipm_demo/meshsimp.html<br />
I think a solution would be generally useful to many GLScene users, and I <br />
would personally offer a $50 USD bounty to the first person who can provide <br />
me with a solution. The GLScene MeshSource demo might be a good example, as <br />
it starts with a cube composed of 300 triangles (whereas it could be <br />
decimated to 12 losslessly). Contact rorden_AT_gatech(dot)edu<br />
<br />
== SQL Database Administration Components $500 US ==<br />
<br />
FPC/Lazarus needs a cross platform TSQLConnector based component for Create & Drop Databases, Add Table Drop Table and Alter Table. The solution to this bounty will be complete when a base TSQLAdministration component is developed to manage fields, tables, and database. Fields and their types must be enforced. TSQLAdministration extensions for native MySQL, PostgreSQL, and OracleSQL<br />
must also be supported. <br />
<br />
The Base class and Three extended classes must be packaged and included in Lazarus distribution for optional installation in the IDE pallet.<br />
<br />
The individual or point of contact for a group will receive $500.00 ($US). Contact Andrew Brunner (andrew.t.brunner@gmail.com) to register. A work in progress should be submitted to appropriate FPC/Lazarus SVN.<br />
<br />
== Lazarus running on a Linux machine compiling to Arm/Linux $500 US ==<br />
<br />
I need help to install Lazarus, FPC and other files to compile a "HELLO WORLD" binary to Arm/Linux hardware.<br />
Contact Anderson Magalhaes (anderson@mobilitysistemas.com.br). (If you are in Brazil we can pay flight tickets and other needs)<br />
<br />
=Windows bounties=<br />
<br />
==Fixing bug #7182 - $100==<br />
$100 for fixing bug #7182 (http://bugs.freepascal.org/view.php?id=7182). Contact oleg_3630 at mail.ru.<br />
<br />
==Reparent Forms (100€)==<br />
Related to the bounty above, I'd like to spend another 100€ (see bounty above) for anyone who manages to reparent a form with a specified owner (data module) to a given parent window handle (HWnd). In Delphi this is pretty simple (ParentWindow := NewParentWindowHandle), but it is not working properly in Lazarus. The form should be reparented completely (incl. accepting keyboard/mouse input and such). The solution should work on several platforms (i.e. no direct call to the WinAPI or such, this should be handled by the LCL)<br />
The code will be used for my open source project "Delphi ASIO & VST Packages" to make them usable with Lazarus (planned for version 1.5). Please contact me prior to fixing this (Christian at savioursofsoul.de)<br />
<br />
=Gtk bounties=<br />
<br />
==Fix bug - $10==<br />
<br />
http://mantis.freepascal.org/view.php?id=11906<br />
Contact http://www.wordwebsoftware.com/contact.html<br />
<br />
==Fix GLScene volume rendering on Linux==<br />
<br />
* $100.00 US for anyone who can get GLScene's volume rendering working on Linux. I have adapted Jürgen Abel's Texture3D glscene demo (http://glscene.sourceforge.net/wikka/UserDemos/) to compile under either Delphi or Lazarus. My new code is here www.mricro.com/texture3d.zip. The Lazarus code (0.9.26.2, using SVN snapshot of GLScene) works fine under Windows and OSX, but when I compile it with Linux the volume is always rendered as an opaque white cube. I get the same results with Fedora10 using ATI 4850 and Ubuntu 9.04 using a NVidia GTX9800. Both computers are set up with the recommended proprietary. Contact rorden@mailbox.sc.edu<br />
<br />
=Windows CE bounties=<br />
<br />
None<br />
'''Bold text'''<br />
<br />
=Symbian bounties=<br />
<br />
==RTL for Symbian phones - $1000==<br />
Create an RTL for Symbian phones (FPC for ARM already exists).<br />
* Include a very simple GUI app (like [http://ccrdu.de/files/fpc/NoFrameworkAppDemo.lpr this one] for PocketPC).<br />
* Needed for Symbian UIQ 2 and 3 at least. <br />
* Bounty $1000, open for negotiation if Series 60/80/90 supported. <br />
* Contact ''bounty (at) ccrdu.de''.<br />
<br />
=Carbon bounties=<br />
<br />
==Make Lazarus Debugger work on Mac OS X 10.4==<br />
300 EUR to make the GDB interface work in OS X 10.4 (both PowerPC and i386), so that it is possible to debug a simple hello world app. Also, the debugger should not crash on a simple hello world app (must be working robustly).<br />
Contact [http://www.grauonline.de Grau GbR]<br />
<br />
==Fix Lazarus Debugger issues on Mac OS X 10.5==<br />
300 EUR to make the GDB interface more robust in OS X 10.5 (both PowerPC and i386), so that the debugger does not crash in certain cases (when resetting it, making breakpoints etc.) on a simple hello world app. <br />
Contact [http://www.grauonline.de Grau GbR]<br />
<br />
=Qt bounties=<br />
<br />
None<br />
<br />
=fpGUI bounties=<br />
<br />
None<br />
<br />
=Closed bounties=<br />
<br />
These are examples of successfully concluded bounties. <br />
<br />
===GTK2 clipping rect error===<br />
Paul Ishenin earned $50 for fixing a bug with GTK2 (Clipping rect of newly created bitmap was invalid). He then donated these funds to the Lazarus PayPal account.<br />
http://bugs.freepascal.org/view.php?id=12026<br />
<br />
===Small Fix for Linux x86_64 IDE===<br />
<br />
*Vincent earned $50 US for discovering why Linux x86_64 caused the IDE to report an Access Violation when opening the MRIcron project. This bug was also reported on Mantis (http://www.freepascal.org/mantis/view.php?id=9216).<br />
<br />
===Carbon Components===<br />
<br />
*Tombo earned $600 US for developing new Carbon components including TSpinEdit, TFloatSpinEdit, TSpeedButton<br />
<br />
*Tombo earned $50.00 US for extending [[LazRGBGraphics]] to support the QT widgetset - offered by rorden at gwm.sc.edu<br />
<br />
===Small Windows Bugs===<br />
<br />
*Jesús earned $40 US for fixing a bug where copying images with the edit/copy caused all pixels with the color shown in the bottom-left corner to appear black (http://www.sph.sc.edu/comd/rorden/mricron/bounty/)<br />
<br />
===Apache modules - €300===<br />
<br />
*Apache modules header translation and basic example. '''Awarded to [[User:Sekelsenmat|Sekelsenmat]]'''.<br />
: [[FPC and Apache Modules]]<br />
<br />
=== Making paszlib zipper Mac/Unix compatible ===<br />
Tom G. earned 100 EUR for making the paszlib zipper Mac/Unix compatible. The [http://svn.freepascal.org/svn/fpc/trunk/packages/paszlib/src/zipper.pp zipper] (TUnZipper.UnzipAllFiles) had no support for symbolic links, did not set executable bits of unzipped executable files, did not support directories, and raised a CRC exception. Thanks Tom for fixing this! - offered by Grau GbR (www.grauonline.de)<br />
<br />
===Make TListView "Virtual"===<br />
Dmitry B. (aka skalogryz) earned 200 EUR for making the Win32 and Carbon TListView implementations "virtual" - before that, TListView was not 100% Delphi compatible - the ability to set OwnerData=true together with an OnData Event-Handler was missing (http://bugs.freepascal.org/view.php?id=7749). Thanks Dmitry for fixing this! - offered by Grau GbR (www.grauonline.de)<br />
<br />
===bug 15768===<br />
Paul Ishenin earned $300 for fixing an access violation produced when raising an exception (any exception) in a safecall method for the x64 compiler ([http://bugs.freepascal.org/bug_view_advanced_page.php?bug_id=15768 bug 15768]).<br />
Bounty was offered by Dmitry Streblechenko.<br />
<br />
=Abandoned Bounties=<br />
<br />
== FPC grammar ==<br />
Creation and support of grammar FPC in notation EBNF in meta-language GOLD Meta-Language ( http://www.devincook.com/goldparser/grammars/index.htm ). The grammar should include all opportunities of language: interfaces, comments, instructions of the compiler, all announcements, keywords, etc. >1000$. Contact xayam@yandex.ru<br />
:I Contacted the author without repply. --[[User:Sekelsenmat|Sekelsenmat]] 15:46, 15 March 2010 (CET)<br />
'''Bold text'''</div>Nero76https://wiki.freepascal.org/index.php?title=Bounties&diff=37476Bounties2009-08-26T08:04:41Z<p>Nero76: /* Closed bounties */</p>
<hr />
<div>{{Bounties}}<br />
<br />
==Introduction==<br />
<br />
Need a particular feature? Set a price here, giving a short description, your name and email address. Hopefully, one or more people will contact you and you can arrange the terms of this development work.<br />
<br />
Currently, Lazarus depends on volunteers to implement everything on it. Recently Lazarus popularity has increased a lot, and many commercial projects are being developed with it. The idea behind the Bounties is '''not''' to substitute the current Mantis bug system, where work will continue normally. The idea is to provide a new development mechanism where commercial application developers can receive professional support and at the same time be able to contribute back to the community. <br />
<br />
If there is noone interrested in your bounty, it's probably because the price is too low. Also, try to keep all bounties above 50 dolars. Bellow that it usually won't be worth the time investigating the problem. Please also date your bounties. This way at some point we can weed out really old ones.<br />
<br />
Examples:<br />
<br />
* Make Lazarus hello world work on PamOS 5 Garnet. $1000 Contact myemail@domain.com<br />
* Implement a new feature. Please make a budget Contact myemail@domain.com<br />
<br />
==Multi-platform bounties==<br />
<br />
=== FPC grammar ===<br />
Creation and support of grammar FPC in notation EBNF in meta-language GOLD Meta-Language ( http://www.devincook.com/goldparser/grammars/index.htm ). The grammar should include all opportunities of language: interfaces, comments, instructions of the compiler, all announcements, keywords, etc. >1000$. Contact xayam@yandex.ru<br />
<br />
=== Optimizations for FPC/Lazarus ===<br />
Two bounties, totally $100 for speed optimizations for FPC/Lazarus are described on my web page http://www.sph.sc.edu/comd/rorden/mricron/bounty/. Martin Friebe won one of these (for changing the code, not the compiler) and donated the $50 to the Lazarus paypal account.<br />
<br />
=== IDE Enhancements ===<br />
<br />
1.) If a path is added in the Compiler-Options of a project then add the path as a relative path instead of an absolute path. $20<br />
<br />
2.) If in the MessageView the sentence "Can't find unit XYZ" is displayed, it should be possible to doubleclick onto the<br />
word "XYZ" and this would open the "FindInFiles" dialog. $20<br />
<br />
Contact: sam_solver_AT_yahoo(dot)com<br />
<br />
=== GLScene improvements ===<br />
<br />
The GLScene Texture3D demo (Lazarus version at http://www.mricro.com/texture3d.zip) currently generates volume rendering. I want to encourage someone to add the ability to add surface shading. The picture at http://www.mricro.com/rendert.jpg shows a sample image with pure volume rendering (left), pure surface shading (middle) and a mixture. I would like to achieve this using the GPU. A compiled program with C++ source code and sample image is available at<br />
http://www.real-time-volume-graphics.org/?page_id=5<br />
To see the effect, download the 3D Texture Slicer and launch the SimpleSlicer.exe. At first the program displays a volume rendering, but press the 'm' key to switch the mode to surface shading. The book associated with this C++ code describes the implementation: Listing 5.6 for computing on-the-fly-gradients and Listing 5.1 for the Blinn-Phong shading. See Figure 5.5 for example output...<br />
[http://books.google.com/books?id=lDWOu3_KGvoC&pg=PA119&lpg=PA119&dq=%22cg+function+implementing+the+blinn-phong%22&source=bl&ots=TcX6X0Kxgc&sig=XukQa8E2_nlcM7qMFZV1ujam0Z4&hl=en&ei=yFctSrjsNJ6ltgeJrN2-CA&sa=X&oi=book_result&ct=result&resnum=1 Click to see Blinn-Phong shading Figure 5.5]<br />
Bounty will be paid to the first person who can send me GPU-accelerated shading for the Texture3D demo, or my open source MRIcroGL (http://www.mricro.com/mricrogl). Contact rorden_AT_gwm(dot)sc(dot)edu<br />
$300<br />
<br />
=== SQL Database Administration Components $500 US ===<br />
<br />
FPC/Lazarus needs a cross platform TSQLConnector based component for Create & Drop Databases, Add Table Drop Table and Alter Table. The solution to this bounty will be complete when a base TSQLAdministration component is developed to manage fields, tables, and database. Fields and their types must be enforced. TSQLAdministration extensions for native MySQL, PostgreSQL, and OracleSQL<br />
must also be supported. <br />
<br />
The Base class and Three extended classes must be packaged and included in Lazarus distribution for optional installation in the IDE pallet.<br />
<br />
The individual or point of contact for a group will receive $500.00 ($US). Contact Andrew Brunner (andrew.t.brunner@gmail.com) to register. A work in progress should be submitted to appropriate FPC/Lazarus SVN.<br />
<br />
==Windows bounties==<br />
<br />
===Fixing bug #7182 - $100===<br />
$100 for fixing bug #7182 (http://bugs.freepascal.org/view.php?id=7182). Contact oleg_3630 at mail.ru.<br />
<br />
===Reparent Forms===<br />
Related to the bounty above, I'd like to spend another 50€ for anyone who manages to reparent a form with a specified owner (data module) to a given parent window handle (HWnd). In Delphi this is pretty simple (ParentWindow := NewParentWindowHandle), but it is not working properly in Lazarus. The form should be reparented completely (incl. accepting keyboard/mouse input and such).<br />
The code will be used for my open source project "Delphi ASIO & VST Packages" to make them usable with Lazarus (planned for version 1.5). Please contact me prior to fixing this (Christian at savioursofsoul.de)<br />
<br />
<br />
<br />
==Gtk bounties==<br />
<br />
===Fix bug - $10===<br />
<br />
http://mantis.freepascal.org/view.php?id=11906<br />
Contact http://www.wordwebsoftware.com/contact.html<br />
<br />
<br />
<br />
===Fix bugs on Gtk 2 IDE and Interface - $200===<br />
<br />
* $200.00 US to anyone or group that gets the IDE to use gtk2 and to compile programs for GTK2 without major GUI bugs - both should work. The award of the bounty will be determined by votes from the mailing list. The list will first vote if the IDE and programs work and then on which person or group should receive the bounty.<br />
<br />
* I didn't post the bounty, but [[User:Sekelsenmat|I]] would like to suggest at least the following bug fixes:<br />
**<s>Right-click bug: http://www.freepascal.org/mantis/view.php?id=7714</s><br />
**<s>SynEdit performance issue: http://www.freepascal.org/mantis/view.php?id=7717</s><br />
**<s>Main menu shortcuts: http://www.freepascal.org/mantis/view.php?id=7765</s><br />
**<s>If you minimize the IDE it only minimizes the main window, not the other ones. This is the most annoying for me: http://www.freepascal.org/mantis/view.php?id=8834</s><br />
<br />
===Fix GLScene volume rendering on Linux===<br />
<br />
* $100.00 US for anyone who can get GLScene's volume rendering working on Linux. I have adapted Jürgen Abel's Texture3D glscene demo (http://glscene.sourceforge.net/wikka/UserDemos/) to compile under either Delphi or Lazarus. My new code is here www.mricro.com/texture3d.zip. The Lazarus code (0.9.26.2, using SVN snapshot of GLScene) works fine under Windows and OSX, but when I compile it with Linux the volume is always rendered as an opaque white cube. I get the same results with Fedora10 using ATI 4850 and Ubuntu 9.04 using a NVidia GTX9800. Both computers are set up with the recommended proprietary. Contact rorden@mailbox.sc.edu<br />
<br />
==Windows CE bounties==<br />
<br />
None<br />
<br />
==Symbian bounties==<br />
<br />
===RTL for Symbian phones - $1000===<br />
Create a RTL for Symbian phones (FPC for ARM already exists).<br />
* Include a very simple GUI app (like [http://ccrdu.de/files/fpc/NoFrameworkAppDemo.lpr this one] for PocketPC).<br />
* Needed for Symbian UIQ 2 and 3 at least. <br />
* Bounty $1000, open for negotiation if Series 60/80/90 supported. <br />
* Contact ''bounty (at) ccrdu.de''.<br />
** Volunteers found and in contact!<br />
<br />
==Carbon bounties==<br />
<br />
==Qt bounties==<br />
<br />
* None<br />
<br />
==fpGUI bounties==<br />
<br />
None<br />
<br />
==Closed bounties==<br />
<br />
These are examples of successfully concluded bounties. <br />
<br />
===GTK2 clipping rect error===<br />
Paul Ishenin earned $50 for fixing a bug with GTK2 (Clipping rect of newly created bitmap was invalid). He then donated these funds to the Lazarus PayPal account.<br />
http://bugs.freepascal.org/view.php?id=12026<br />
<br />
===Small Fix for Linux x86_64 IDE===<br />
<br />
*Vincent earned $50 US for discovering why Linux x86_64 caused the IDE to report an Access Violation when opening the MRIcron project. This bug was also reported on Mantis (http://www.freepascal.org/mantis/view.php?id=9216).<br />
<br />
===Carbon Components===<br />
<br />
*Tombo earned $600 US for developing new Carbon components including TSpinEdit, TFloatSpinEdit, TSpeedButton<br />
<br />
*Tombo earned $50.00 US for extending [[LazRGBGraphics]] to support the QT widgetset - offered by rorden at gwm.sc.edu<br />
<br />
===Small Windows Bugs===<br />
<br />
*Jesús earned $40 US for fixing a bug where copying images with the edit/copy caused all pixels with the color shown in the bottom-left corner to appear black (http://www.sph.sc.edu/comd/rorden/mricron/bounty/)<br />
<br />
===Apache modules - €300===<br />
<br />
*Apache modules header translation and basic example. '''Awarded to [[User:Sekelsenmat|Sekelsenmat]]'''.<br />
: [[FPC and Apache Modules]]<br />
<br />
=== Making paszlib zipper Mac/Unix compatible ===<br />
Tom G. earned 100 EUR for making the paszlib zipper Mac/Unix compatible. The [http://svn.freepascal.org/svn/fpc/trunk/packages/paszlib/src/zipper.pp zipper] (TUnZipper.UnzipAllFiles) had no support for symbolic links, did not set executable bits of unzipped executable files, did not support directories, and raised a CRC exception. Thanks Tom for fixing this! - offered by Grau GbR (www.grauonline.de)<br />
<br />
===Make TListView "Virtual"===<br />
Dmitry B. earned 200 EUR for making the Win32 and Carbon TListView implementations "virtual" - before that, the TListView was not 100% Delphi compatible - the ability to set OwnerData=true together with an OnData Event-Handler was missing (http://bugs.freepascal.org/view.php?id=7749). Thanks Dmitry for fixing this! - offered by Grau GbR (www.grauonline.de)</div>Nero76https://wiki.freepascal.org/index.php?title=Bounties&diff=37475Bounties2009-08-26T08:02:14Z<p>Nero76: /* Make TListView "Virtual" */</p>
<hr />
<div>{{Bounties}}<br />
<br />
==Introduction==<br />
<br />
Need a particular feature? Set a price here, giving a short description, your name and email address. Hopefully, one or more people will contact you and you can arrange the terms of this development work.<br />
<br />
Currently, Lazarus depends on volunteers to implement everything on it. Recently Lazarus popularity has increased a lot, and many commercial projects are being developed with it. The idea behind the Bounties is '''not''' to substitute the current Mantis bug system, where work will continue normally. The idea is to provide a new development mechanism where commercial application developers can receive professional support and at the same time be able to contribute back to the community. <br />
<br />
If there is noone interrested in your bounty, it's probably because the price is too low. Also, try to keep all bounties above 50 dolars. Bellow that it usually won't be worth the time investigating the problem. Please also date your bounties. This way at some point we can weed out really old ones.<br />
<br />
Examples:<br />
<br />
* Make Lazarus hello world work on PamOS 5 Garnet. $1000 Contact myemail@domain.com<br />
* Implement a new feature. Please make a budget Contact myemail@domain.com<br />
<br />
==Multi-platform bounties==<br />
<br />
=== FPC grammar ===<br />
Creation and support of grammar FPC in notation EBNF in meta-language GOLD Meta-Language ( http://www.devincook.com/goldparser/grammars/index.htm ). The grammar should include all opportunities of language: interfaces, comments, instructions of the compiler, all announcements, keywords, etc. >1000$. Contact xayam@yandex.ru<br />
<br />
=== Optimizations for FPC/Lazarus ===<br />
Two bounties, totally $100 for speed optimizations for FPC/Lazarus are described on my web page http://www.sph.sc.edu/comd/rorden/mricron/bounty/. Martin Friebe won one of these (for changing the code, not the compiler) and donated the $50 to the Lazarus paypal account.<br />
<br />
=== IDE Enhancements ===<br />
<br />
1.) If a path is added in the Compiler-Options of a project then add the path as a relative path instead of an absolute path. $20<br />
<br />
2.) If in the MessageView the sentence "Can't find unit XYZ" is displayed, it should be possible to doubleclick onto the<br />
word "XYZ" and this would open the "FindInFiles" dialog. $20<br />
<br />
Contact: sam_solver_AT_yahoo(dot)com<br />
<br />
=== GLScene improvements ===<br />
<br />
The GLScene Texture3D demo (Lazarus version at http://www.mricro.com/texture3d.zip) currently generates volume rendering. I want to encourage someone to add the ability to add surface shading. The picture at http://www.mricro.com/rendert.jpg shows a sample image with pure volume rendering (left), pure surface shading (middle) and a mixture. I would like to achieve this using the GPU. A compiled program with C++ source code and sample image is available at<br />
http://www.real-time-volume-graphics.org/?page_id=5<br />
To see the effect, download the 3D Texture Slicer and launch the SimpleSlicer.exe. At first the program displays a volume rendering, but press the 'm' key to switch the mode to surface shading. The book associated with this C++ code describes the implementation: Listing 5.6 for computing on-the-fly-gradients and Listing 5.1 for the Blinn-Phong shading. See Figure 5.5 for example output...<br />
[http://books.google.com/books?id=lDWOu3_KGvoC&pg=PA119&lpg=PA119&dq=%22cg+function+implementing+the+blinn-phong%22&source=bl&ots=TcX6X0Kxgc&sig=XukQa8E2_nlcM7qMFZV1ujam0Z4&hl=en&ei=yFctSrjsNJ6ltgeJrN2-CA&sa=X&oi=book_result&ct=result&resnum=1 Click to see Blinn-Phong shading Figure 5.5]<br />
Bounty will be paid to the first person who can send me GPU-accelerated shading for the Texture3D demo, or my open source MRIcroGL (http://www.mricro.com/mricrogl). Contact rorden_AT_gwm(dot)sc(dot)edu<br />
$300<br />
<br />
=== SQL Database Administration Components $500 US ===<br />
<br />
FPC/Lazarus needs a cross platform TSQLConnector based component for Create & Drop Databases, Add Table Drop Table and Alter Table. The solution to this bounty will be complete when a base TSQLAdministration component is developed to manage fields, tables, and database. Fields and their types must be enforced. TSQLAdministration extensions for native MySQL, PostgreSQL, and OracleSQL<br />
must also be supported. <br />
<br />
The Base class and Three extended classes must be packaged and included in Lazarus distribution for optional installation in the IDE pallet.<br />
<br />
The individual or point of contact for a group will receive $500.00 ($US). Contact Andrew Brunner (andrew.t.brunner@gmail.com) to register. A work in progress should be submitted to appropriate FPC/Lazarus SVN.<br />
<br />
==Windows bounties==<br />
<br />
===Fixing bug #7182 - $100===<br />
$100 for fixing bug #7182 (http://bugs.freepascal.org/view.php?id=7182). Contact oleg_3630 at mail.ru.<br />
<br />
===Reparent Forms===<br />
Related to the bounty above, I'd like to spend another 50€ for anyone who manages to reparent a form with a specified owner (data module) to a given parent window handle (HWnd). In Delphi this is pretty simple (ParentWindow := NewParentWindowHandle), but it is not working properly in Lazarus. The form should be reparented completely (incl. accepting keyboard/mouse input and such).<br />
The code will be used for my open source project "Delphi ASIO & VST Packages" to make them usable with Lazarus (planned for version 1.5). Please contact me prior to fixing this (Christian at savioursofsoul.de)<br />
<br />
<br />
<br />
==Gtk bounties==<br />
<br />
===Fix bug - $10===<br />
<br />
http://mantis.freepascal.org/view.php?id=11906<br />
Contact http://www.wordwebsoftware.com/contact.html<br />
<br />
<br />
<br />
===Fix bugs on Gtk 2 IDE and Interface - $200===<br />
<br />
* $200.00 US to anyone or group that gets the IDE to use gtk2 and to compile programs for GTK2 without major GUI bugs - both should work. The award of the bounty will be determined by votes from the mailing list. The list will first vote if the IDE and programs work and then on which person or group should receive the bounty.<br />
<br />
* I didn't post the bounty, but [[User:Sekelsenmat|I]] would like to suggest at least the following bug fixes:<br />
**<s>Right-click bug: http://www.freepascal.org/mantis/view.php?id=7714</s><br />
**<s>SynEdit performance issue: http://www.freepascal.org/mantis/view.php?id=7717</s><br />
**<s>Main menu shortcuts: http://www.freepascal.org/mantis/view.php?id=7765</s><br />
**<s>If you minimize the IDE it only minimizes the main window, not the other ones. This is the most annoying for me: http://www.freepascal.org/mantis/view.php?id=8834</s><br />
<br />
===Fix GLScene volume rendering on Linux===<br />
<br />
* $100.00 US for anyone who can get GLScene's volume rendering working on Linux. I have adapted Jürgen Abel's Texture3D glscene demo (http://glscene.sourceforge.net/wikka/UserDemos/) to compile under either Delphi or Lazarus. My new code is here www.mricro.com/texture3d.zip. The Lazarus code (0.9.26.2, using SVN snapshot of GLScene) works fine under Windows and OSX, but when I compile it with Linux the volume is always rendered as an opaque white cube. I get the same results with Fedora10 using ATI 4850 and Ubuntu 9.04 using a NVidia GTX9800. Both computers are set up with the recommended proprietary. Contact rorden@mailbox.sc.edu<br />
<br />
==Windows CE bounties==<br />
<br />
None<br />
<br />
==Symbian bounties==<br />
<br />
===RTL for Symbian phones - $1000===<br />
Create a RTL for Symbian phones (FPC for ARM already exists).<br />
* Include a very simple GUI app (like [http://ccrdu.de/files/fpc/NoFrameworkAppDemo.lpr this one] for PocketPC).<br />
* Needed for Symbian UIQ 2 and 3 at least. <br />
* Bounty $1000, open for negotiation if Series 60/80/90 supported. <br />
* Contact ''bounty (at) ccrdu.de''.<br />
** Volunteers found and in contact!<br />
<br />
==Carbon bounties==<br />
<br />
==Qt bounties==<br />
<br />
* None<br />
<br />
==fpGUI bounties==<br />
<br />
None<br />
<br />
==Closed bounties==<br />
<br />
These are examples of successfully concluded bounties. <br />
<br />
===GTK2 clipping rect error===<br />
Paul Ishenin earned $50 for fixing a bug with GTK2 (Clipping rect of newly created bitmap was invalid). He then donated these funds to the Lazarus PayPal account.<br />
http://bugs.freepascal.org/view.php?id=12026<br />
<br />
===Small Fix for Linux x86_64 IDE===<br />
<br />
*Vincent earned $50 US for discovering why Linux x86_64 caused the IDE to report an Access Violation when opening the MRIcron project. This bug was also reported on Mantis (http://www.freepascal.org/mantis/view.php?id=9216).<br />
<br />
===Carbon Components===<br />
<br />
*Tombo earned $600 US for developing new Carbon components including TSpinEdit, TFloatSpinEdit, TSpeedButton<br />
<br />
*Tombo earned $50.00 US for extending [[LazRGBGraphics]] to support the QT widgetset - offered by rorden at gwm.sc.edu<br />
<br />
===Small Windows Bugs===<br />
<br />
*Jesús earned $40 US for fixing a bug where copying images with the edit/copy caused all pixels with the color shown in the bottom-left corner to appear black (http://www.sph.sc.edu/comd/rorden/mricron/bounty/)<br />
<br />
===Apache modules - €300===<br />
<br />
*Apache modules header translation and basic example. '''Awarded to [[User:Sekelsenmat|Sekelsenmat]]'''.<br />
: [[FPC and Apache Modules]]<br />
<br />
=== Making paszlib zipper Mac/Unix compatible ===<br />
Tom G. earned 100 EUR for making the paszlib zipper Mac/Unix compatible. The [http://svn.freepascal.org/svn/fpc/trunk/packages/paszlib/src/zipper.pp zipper] (TUnZipper.UnzipAllFiles) had no support for symbolic links, did not set executable bits of unzipped executable files, did not support directories, and raised a CRC exception. Thanks Tom for fixing this! - offered by Grau GbR (www.grauonline.de)</div>Nero76https://wiki.freepascal.org/index.php?title=Bounties&diff=37474Bounties2009-08-26T08:01:50Z<p>Nero76: /* Carbon bounties */</p>
<hr />
<div>{{Bounties}}<br />
<br />
==Introduction==<br />
<br />
Need a particular feature? Set a price here, giving a short description, your name and email address. Hopefully, one or more people will contact you and you can arrange the terms of this development work.<br />
<br />
Currently, Lazarus depends on volunteers to implement everything on it. Recently Lazarus popularity has increased a lot, and many commercial projects are being developed with it. The idea behind the Bounties is '''not''' to substitute the current Mantis bug system, where work will continue normally. The idea is to provide a new development mechanism where commercial application developers can receive professional support and at the same time be able to contribute back to the community. <br />
<br />
If there is noone interrested in your bounty, it's probably because the price is too low. Also, try to keep all bounties above 50 dolars. Bellow that it usually won't be worth the time investigating the problem. Please also date your bounties. This way at some point we can weed out really old ones.<br />
<br />
Examples:<br />
<br />
* Make Lazarus hello world work on PamOS 5 Garnet. $1000 Contact myemail@domain.com<br />
* Implement a new feature. Please make a budget Contact myemail@domain.com<br />
<br />
==Multi-platform bounties==<br />
<br />
=== FPC grammar ===<br />
Creation and support of grammar FPC in notation EBNF in meta-language GOLD Meta-Language ( http://www.devincook.com/goldparser/grammars/index.htm ). The grammar should include all opportunities of language: interfaces, comments, instructions of the compiler, all announcements, keywords, etc. >1000$. Contact xayam@yandex.ru<br />
<br />
=== Optimizations for FPC/Lazarus ===<br />
Two bounties, totally $100 for speed optimizations for FPC/Lazarus are described on my web page http://www.sph.sc.edu/comd/rorden/mricron/bounty/. Martin Friebe won one of these (for changing the code, not the compiler) and donated the $50 to the Lazarus paypal account.<br />
<br />
=== IDE Enhancements ===<br />
<br />
1.) If a path is added in the Compiler-Options of a project then add the path as a relative path instead of an absolute path. $20<br />
<br />
2.) If in the MessageView the sentence "Can't find unit XYZ" is displayed, it should be possible to doubleclick onto the<br />
word "XYZ" and this would open the "FindInFiles" dialog. $20<br />
<br />
Contact: sam_solver_AT_yahoo(dot)com<br />
<br />
=== GLScene improvements ===<br />
<br />
The GLScene Texture3D demo (Lazarus version at http://www.mricro.com/texture3d.zip) currently generates volume rendering. I want to encourage someone to add the ability to add surface shading. The picture at http://www.mricro.com/rendert.jpg shows a sample image with pure volume rendering (left), pure surface shading (middle) and a mixture. I would like to achieve this using the GPU. A compiled program with C++ source code and sample image is available at<br />
http://www.real-time-volume-graphics.org/?page_id=5<br />
To see the effect, download the 3D Texture Slicer and launch the SimpleSlicer.exe. At first the program displays a volume rendering, but press the 'm' key to switch the mode to surface shading. The book associated with this C++ code describes the implementation: Listing 5.6 for computing on-the-fly-gradients and Listing 5.1 for the Blinn-Phong shading. See Figure 5.5 for example output...<br />
[http://books.google.com/books?id=lDWOu3_KGvoC&pg=PA119&lpg=PA119&dq=%22cg+function+implementing+the+blinn-phong%22&source=bl&ots=TcX6X0Kxgc&sig=XukQa8E2_nlcM7qMFZV1ujam0Z4&hl=en&ei=yFctSrjsNJ6ltgeJrN2-CA&sa=X&oi=book_result&ct=result&resnum=1 Click to see Blinn-Phong shading Figure 5.5]<br />
Bounty will be paid to the first person who can send me GPU-accelerated shading for the Texture3D demo, or my open source MRIcroGL (http://www.mricro.com/mricrogl). Contact rorden_AT_gwm(dot)sc(dot)edu<br />
$300<br />
<br />
=== SQL Database Administration Components $500 US ===<br />
<br />
FPC/Lazarus needs a cross platform TSQLConnector based component for Create & Drop Databases, Add Table Drop Table and Alter Table. The solution to this bounty will be complete when a base TSQLAdministration component is developed to manage fields, tables, and database. Fields and their types must be enforced. TSQLAdministration extensions for native MySQL, PostgreSQL, and OracleSQL<br />
must also be supported. <br />
<br />
The Base class and Three extended classes must be packaged and included in Lazarus distribution for optional installation in the IDE pallet.<br />
<br />
The individual or point of contact for a group will receive $500.00 ($US). Contact Andrew Brunner (andrew.t.brunner@gmail.com) to register. A work in progress should be submitted to appropriate FPC/Lazarus SVN.<br />
<br />
==Windows bounties==<br />
<br />
===Fixing bug #7182 - $100===<br />
$100 for fixing bug #7182 (http://bugs.freepascal.org/view.php?id=7182). Contact oleg_3630 at mail.ru.<br />
<br />
===Reparent Forms===<br />
Related to the bounty above, I'd like to spend another 50€ for anyone who manages to reparent a form with a specified owner (data module) to a given parent window handle (HWnd). In Delphi this is pretty simple (ParentWindow := NewParentWindowHandle), but it is not working properly in Lazarus. The form should be reparented completely (incl. accepting keyboard/mouse input and such).<br />
The code will be used for my open source project "Delphi ASIO & VST Packages" to make them usable with Lazarus (planned for version 1.5). Please contact me prior to fixing this (Christian at savioursofsoul.de)<br />
<br />
===Make TListView "Virtual"===<br />
In current Win32, Carbon and GTK implementations, the TListView is not 100% Delphi compatible - the ability to set OwnerData=true together with an OnData Event-Handler is missing (http://bugs.freepascal.org/view.php?id=7749) - 100 EUR for adding this to the Windows port - [http://grauonline.de/cmsimple2_6/en/?About Contact us] - UPDATE: skalogryz has agreed to start working on this.<br />
<br />
==Gtk bounties==<br />
<br />
===Fix bug - $10===<br />
<br />
http://mantis.freepascal.org/view.php?id=11906<br />
Contact http://www.wordwebsoftware.com/contact.html<br />
<br />
<br />
<br />
===Fix bugs on Gtk 2 IDE and Interface - $200===<br />
<br />
* $200.00 US to anyone or group that gets the IDE to use gtk2 and to compile programs for GTK2 without major GUI bugs - both should work. The award of the bounty will be determined by votes from the mailing list. The list will first vote if the IDE and programs work and then on which person or group should receive the bounty.<br />
<br />
* I didn't post the bounty, but [[User:Sekelsenmat|I]] would like to suggest at least the following bug fixes:<br />
**<s>Right-click bug: http://www.freepascal.org/mantis/view.php?id=7714</s><br />
**<s>SynEdit performance issue: http://www.freepascal.org/mantis/view.php?id=7717</s><br />
**<s>Main menu shortcuts: http://www.freepascal.org/mantis/view.php?id=7765</s><br />
**<s>If you minimize the IDE it only minimizes the main window, not the other ones. This is the most annoying for me: http://www.freepascal.org/mantis/view.php?id=8834</s><br />
<br />
===Fix GLScene volume rendering on Linux===<br />
<br />
* $100.00 US for anyone who can get GLScene's volume rendering working on Linux. I have adapted Jürgen Abel's Texture3D glscene demo (http://glscene.sourceforge.net/wikka/UserDemos/) to compile under either Delphi or Lazarus. My new code is here www.mricro.com/texture3d.zip. The Lazarus code (0.9.26.2, using SVN snapshot of GLScene) works fine under Windows and OSX, but when I compile it with Linux the volume is always rendered as an opaque white cube. I get the same results with Fedora10 using ATI 4850 and Ubuntu 9.04 using a NVidia GTX9800. Both computers are set up with the recommended proprietary. Contact rorden@mailbox.sc.edu<br />
<br />
==Windows CE bounties==<br />
<br />
None<br />
<br />
==Symbian bounties==<br />
<br />
===RTL for Symbian phones - $1000===<br />
Create a RTL for Symbian phones (FPC for ARM already exists).<br />
* Include a very simple GUI app (like [http://ccrdu.de/files/fpc/NoFrameworkAppDemo.lpr this one] for PocketPC).<br />
* Needed for Symbian UIQ 2 and 3 at least. <br />
* Bounty $1000, open for negotiation if Series 60/80/90 supported. <br />
* Contact ''bounty (at) ccrdu.de''.<br />
** Volunteers found and in contact!<br />
<br />
==Carbon bounties==<br />
<br />
==Qt bounties==<br />
<br />
* None<br />
<br />
==fpGUI bounties==<br />
<br />
None<br />
<br />
==Closed bounties==<br />
<br />
These are examples of successfully concluded bounties. <br />
<br />
===GTK2 clipping rect error===<br />
Paul Ishenin earned $50 for fixing a bug with GTK2 (Clipping rect of newly created bitmap was invalid). He then donated these funds to the Lazarus PayPal account.<br />
http://bugs.freepascal.org/view.php?id=12026<br />
<br />
===Small Fix for Linux x86_64 IDE===<br />
<br />
*Vincent earned $50 US for discovering why Linux x86_64 caused the IDE to report an Access Violation when opening the MRIcron project. This bug was also reported on Mantis (http://www.freepascal.org/mantis/view.php?id=9216).<br />
<br />
===Carbon Components===<br />
<br />
*Tombo earned $600 US for developing new Carbon components including TSpinEdit, TFloatSpinEdit, TSpeedButton<br />
<br />
*Tombo earned $50.00 US for extending [[LazRGBGraphics]] to support the QT widgetset - offered by rorden at gwm.sc.edu<br />
<br />
===Small Windows Bugs===<br />
<br />
*Jesús earned $40 US for fixing a bug where copying images with the edit/copy caused all pixels with the color shown in the bottom-left corner to appear black (http://www.sph.sc.edu/comd/rorden/mricron/bounty/)<br />
<br />
===Apache modules - €300===<br />
<br />
*Apache modules header translation and basic example. '''Awarded to [[User:Sekelsenmat|Sekelsenmat]]'''.<br />
: [[FPC and Apache Modules]]<br />
<br />
=== Making paszlib zipper Mac/Unix compatible ===<br />
Tom G. earned 100 EUR for making the paszlib zipper Mac/Unix compatible. The [http://svn.freepascal.org/svn/fpc/trunk/packages/paszlib/src/zipper.pp zipper] (TUnZipper.UnzipAllFiles) had no support for symbolic links, did not set executable bits of unzipped executable files, did not support directories, and raised a CRC exception. Thanks Tom for fixing this! - offered by Grau GbR (www.grauonline.de)</div>Nero76https://wiki.freepascal.org/index.php?title=Bounties&diff=36413Bounties2009-07-06T15:08:55Z<p>Nero76: /* Making paszlib zipper Mac/Unix compatible */</p>
<hr />
<div>{{Bounties}}<br />
<br />
==Introduction==<br />
<br />
Need a particular feature? Set a price here, giving a short description, your name and email address. Hopefully, one or more people will contact you and you can arrange the terms of this development work.<br />
<br />
Currently, Lazarus depends on volunteers to implement everything on it. Recently Lazarus popularity has increased a lot, and many commercial projects are being developed with it. The idea behind the Bounties is '''not''' to substitute the current Mantis bug system, where work will continue normally. The idea is to provide a new development mechanism where commercial application developers can receive professional support and at the same time be able to contribute back to the community. <br />
<br />
If there is noone interrested in your bounty, it's probably because the price is too low. Also, try to keep all bounties above 50 dolars. Bellow that it usually won't be worth the time investigating the problem. Please also date your bounties. This way at some point we can weed out really old ones.<br />
<br />
Examples:<br />
<br />
* Make Lazarus hello world work on PamOS 5 Garnet. $1000 Contact myemail@domain.com<br />
* Implement a new feature. Please make a budget Contact myemail@domain.com<br />
<br />
==Multi-platform bounties==<br />
<br />
=== FPC grammar ===<br />
Creation and support of grammar FPC in notation EBNF in meta-language GOLD Meta-Language ( http://www.devincook.com/goldparser/grammars/index.htm ). The grammar should include all opportunities of language: interfaces, comments, instructions of the compiler, all announcements, keywords, etc. >1000$. Contact xayam@yandex.ru<br />
<br />
=== Optimizations for FPC/Lazarus ===<br />
Two bounties, totally $100 for speed optimizations for FPC/Lazarus are described on my web page http://www.sph.sc.edu/comd/rorden/mricron/bounty/. Martin Friebe won one of these (for changing the code, not the compiler) and donated the $50 to the Lazarus paypal account.<br />
<br />
=== IDE Enhancements ===<br />
<br />
1.) If a path is added in the Compiler-Options of a project then add the path as a relative path instead of an absolute path. $20<br />
<br />
2.) If in the MessageView the sentence "Can't find unit XYZ" is displayed, it should be possible to doubleclick onto the<br />
word "XYZ" and this would open the "FindInFiles" dialog. $20<br />
<br />
Contact: sam_solver_AT_yahoo(dot)com<br />
<br />
=== GLScene improvements ===<br />
<br />
The GLScene Texture3D demo (Lazarus version at http://www.mricro.com/texture3d.zip) currently generates volume rendering. I want to encourage someone to add the ability to add surface shading. The picture at http://www.mricro.com/rendert.jpg shows a sample image with pure volume rendering (left), pure surface shading (middle) and a mixture. I would like to achieve this using the GPU. A compiled program with C++ source code and sample image is available at<br />
http://www.real-time-volume-graphics.org/?page_id=5<br />
To see the effect, download the 3D Texture Slicer and launch the SimpleSlicer.exe. At first the program displays a volume rendering, but press the 'm' key to switch the mode to surface shading. The book associated with this C++ code describes the implementation: Listing 5.6 for computing on-the-fly-gradients and Listing 5.1 for the Blinn-Phong shading. See Figure 5.5 for example output...<br />
http://books.google.com/books?id=lDWOu3_KGvoC&pg=PA119&lpg=PA119&dq=%22cg+function+implementing+the+blinn-phong%22&source=bl&ots=TcX6X0Kxgc&sig=XukQa8E2_nlcM7qMFZV1ujam0Z4&hl=en&ei=yFctSrjsNJ6ltgeJrN2-CA&sa=X&oi=book_result&ct=result&resnum=1<br />
Bounty will be paid to the first person who can send me GPU-accelerated shading for the Texture3D demo, or my open source MRIcroGL (http://www.mricro.com/mricrogl). Contact rorden_AT_gwm(dot)sc(dot)edu<br />
$300<br />
<br />
==Windows bounties==<br />
<br />
===Fixing bug #7182 - $100===<br />
$100 for fixing bug #7182 (http://bugs.freepascal.org/view.php?id=7182). Contact oleg_3630 at mail.ru.<br />
<br />
===Reparent Forms===<br />
Related to the bounty above, I'd like to spend another 50€ for anyone who manages to reparent a form with a specified owner (data module) to a given parent window handle (HWnd). In Delphi this is pretty simple (ParentWindow := NewParentWindowHandle), but it is not working properly in Lazarus. The form should be reparented completely (incl. accepting keyboard/mouse input and such).<br />
The code will be used for my open source project "Delphi ASIO & VST Packages" to make them usable with Lazarus (planned for version 1.5). Please contact me prior to fixing this (Christian at savioursofsoul.de)<br />
<br />
===Make TListView "Virtual"===<br />
In current Win32, Carbon and GTK implementations, the TListView is not 100% Delphi compatible - the ability to set OwnerData=true together with an OnData Event-Handler is missing (http://bugs.freepascal.org/view.php?id=7749) - 100 EUR for adding this to the Windows port - [http://grauonline.de/cmsimple2_6/en/?About Contact us] - UPDATE: skalogryz has agreed to start working on this.<br />
<br />
==Gtk bounties==<br />
<br />
===Fix bug - $10===<br />
<br />
http://mantis.freepascal.org/view.php?id=11906<br />
Contact http://www.wordwebsoftware.com/contact.html<br />
<br />
<br />
<br />
===Fix bugs on Gtk 2 IDE and Interface - $200===<br />
<br />
* $200.00 US to anyone or group that gets the IDE to use gtk2 and to compile programs for GTK2 without major GUI bugs - both should work. The award of the bounty will be determined by votes from the mailing list. The list will first vote if the IDE and programs work and then on which person or group should receive the bounty.<br />
<br />
* I didn't post the bounty, but [[User:Sekelsenmat|I]] would like to suggest at least the following bug fixes:<br />
**<s>Right-click bug: http://www.freepascal.org/mantis/view.php?id=7714</s><br />
**<s>SynEdit performance issue: http://www.freepascal.org/mantis/view.php?id=7717</s><br />
**<s>Main menu shortcuts: http://www.freepascal.org/mantis/view.php?id=7765</s><br />
**<s>If you minimize the IDE it only minimizes the main window, not the other ones. This is the most annoying for me: http://www.freepascal.org/mantis/view.php?id=8834</s><br />
<br />
===Fix GLScene volume rendering on Linux===<br />
<br />
* $100.00 US for anyone who can get GLScene's volume rendering working on Linux. I have adapted Jürgen Abel's Texture3D glscene demo (http://glscene.sourceforge.net/wikka/UserDemos/) to compile under either Delphi or Lazarus. My new code is here www.mricro.com/texture3d.zip. The Lazarus code (0.9.26.2, using SVN snapshot of GLScene) works fine under Windows and OSX, but when I compile it with Linux the volume is always rendered as an opaque white cube. I get the same results with Fedora10 using ATI 4850 and Ubuntu 9.04 using a NVidia GTX9800. Both computers are set up with the recommended proprietary. Contact rorden@mailbox.sc.edu<br />
<br />
==Windows CE bounties==<br />
<br />
None<br />
<br />
==Symbian bounties==<br />
<br />
===RTL for Symbian phones - $1000===<br />
Create a RTL for Symbian phones (FPC for ARM already exists).<br />
* Include a very simple GUI app (like [http://ccrdu.de/files/fpc/NoFrameworkAppDemo.lpr this one] for PocketPC).<br />
* Needed for Symbian UIQ 2 and 3 at least. <br />
* Bounty $1000, open for negotiation if Series 60/80/90 supported. <br />
* Contact ''bounty (at) ccrdu.de''.<br />
** Volunteers found and in contact!<br />
<br />
==Carbon bounties==<br />
* Make TListView "Virtual": In current Win32, Carbon and GTK implementations, the TListView is not 100% Delphi compatible - the ability to set OwnerData=true together with an OnData Event-Handler is missing (http://bugs.freepascal.org/view.php?id=7749) - 100 EUR for adding this to the Carbon port - [http://grauonline.de/cmsimple2_6/en/?About Contact us] - UPDATE: skalogryz has agreed to start working on this.<br />
<br />
==Qt bounties==<br />
<br />
* None<br />
<br />
==fpGUI bounties==<br />
<br />
None<br />
<br />
==Closed bounties==<br />
<br />
These are examples of successfully concluded bounties. <br />
<br />
===GTK2 clipping rect error===<br />
Paul Ishenin earned $50 for fixing a bug with GTK2 (Clipping rect of newly created bitmap was invalid). He then donated these funds to the Lazarus PayPal account.<br />
http://bugs.freepascal.org/view.php?id=12026<br />
<br />
===Small Fix for Linux x86_64 IDE===<br />
<br />
*Vincent earned $50 US for discovering why Linux x86_64 caused the IDE to report an Access Violation when opening the MRIcron project. This bug was also reported on Mantis (http://www.freepascal.org/mantis/view.php?id=9216).<br />
<br />
===Carbon Components===<br />
<br />
*Tombo earned $600 US for developing new Carbon components including TSpinEdit, TFloatSpinEdit, TSpeedButton<br />
<br />
*Tombo earned $50.00 US for extending [[LazRGBGraphics]] to support the QT widgetset - offered by rorden at gwm.sc.edu<br />
<br />
===Small Windows Bugs===<br />
<br />
*Jesús earned $40 US for fixing a bug where copying images with the edit/copy caused all pixels with the color shown in the bottom-left corner to appear black (http://www.sph.sc.edu/comd/rorden/mricron/bounty/)<br />
<br />
===Apache modules - €300===<br />
<br />
*Apache modules header translation and basic example. '''Awarded to [[User:Sekelsenmat|Sekelsenmat]]'''.<br />
: [[FPC and Apache Modules]]<br />
<br />
=== Making paszlib zipper Mac/Unix compatible ===<br />
Tom G. earned 100 EUR for making the paszlib zipper Mac/Unix compatible. The [http://svn.freepascal.org/svn/fpc/trunk/packages/paszlib/src/zipper.pp zipper] (TUnZipper.UnzipAllFiles) had no support for symbolic links, did not set executable bits of unzipped executable files, did not support directories, and raised a CRC exception. Thanks Tom for fixing this! - offered by Grau GbR (www.grauonline.de)</div>Nero76https://wiki.freepascal.org/index.php?title=Bounties&diff=36411Bounties2009-07-06T14:56:56Z<p>Nero76: /* Making paszlib zipper Mac/Unix compatible */</p>
<hr />
<div>{{Bounties}}<br />
<br />
==Introduction==<br />
<br />
Need a particular feature? Set a price here, giving a short description, your name and email address. Hopefully, one or more people will contact you and you can arrange the terms of this development work.<br />
<br />
Currently, Lazarus depends on volunteers to implement everything on it. Recently Lazarus popularity has increased a lot, and many commercial projects are being developed with it. The idea behind the Bounties is '''not''' to substitute the current Mantis bug system, where work will continue normally. The idea is to provide a new development mechanism where commercial application developers can receive professional support and at the same time be able to contribute back to the community. <br />
<br />
If there is noone interrested in your bounty, it's probably because the price is too low. Also, try to keep all bounties above 50 dolars. Bellow that it usually won't be worth the time investigating the problem. Please also date your bounties. This way at some point we can weed out really old ones.<br />
<br />
Examples:<br />
<br />
* Make Lazarus hello world work on PamOS 5 Garnet. $1000 Contact myemail@domain.com<br />
* Implement a new feature. Please make a budget Contact myemail@domain.com<br />
<br />
==Multi-platform bounties==<br />
<br />
=== FPC grammar ===<br />
Creation and support of grammar FPC in notation EBNF in meta-language GOLD Meta-Language ( http://www.devincook.com/goldparser/grammars/index.htm ). The grammar should include all opportunities of language: interfaces, comments, instructions of the compiler, all announcements, keywords, etc. >1000$. Contact xayam@yandex.ru<br />
<br />
=== Optimizations for FPC/Lazarus ===<br />
Two bounties, totally $100 for speed optimizations for FPC/Lazarus are described on my web page http://www.sph.sc.edu/comd/rorden/mricron/bounty/. Martin Friebe won one of these (for changing the code, not the compiler) and donated the $50 to the Lazarus paypal account.<br />
<br />
=== IDE Enhancements ===<br />
<br />
1.) If a path is added in the Compiler-Options of a project then add the path as a relative path instead of an absolute path. $20<br />
<br />
2.) If in the MessageView the sentence "Can't find unit XYZ" is displayed, it should be possible to doubleclick onto the<br />
word "XYZ" and this would open the "FindInFiles" dialog. $20<br />
<br />
Contact: sam_solver_AT_yahoo(dot)com<br />
<br />
=== GLScene improvements ===<br />
<br />
The GLScene Texture3D demo (Lazarus version at http://www.mricro.com/texture3d.zip) currently generates volume rendering. I want to encourage someone to add the ability to add surface shading. The picture at http://www.mricro.com/rendert.jpg shows a sample image with pure volume rendering (left), pure surface shading (middle) and a mixture. I would like to achieve this using the GPU. A compiled program with C++ source code and sample image is available at<br />
http://www.real-time-volume-graphics.org/?page_id=5<br />
To see the effect, download the 3D Texture Slicer and launch the SimpleSlicer.exe. At first the program displays a volume rendering, but press the 'm' key to switch the mode to surface shading. The book associated with this C++ code describes the implementation: Listing 5.6 for computing on-the-fly-gradients and Listing 5.1 for the Blinn-Phong shading. See Figure 5.5 for example output...<br />
http://books.google.com/books?id=lDWOu3_KGvoC&pg=PA119&lpg=PA119&dq=%22cg+function+implementing+the+blinn-phong%22&source=bl&ots=TcX6X0Kxgc&sig=XukQa8E2_nlcM7qMFZV1ujam0Z4&hl=en&ei=yFctSrjsNJ6ltgeJrN2-CA&sa=X&oi=book_result&ct=result&resnum=1<br />
Bounty will be paid to the first person who can send me GPU-accelerated shading for the Texture3D demo, or my open source MRIcroGL (http://www.mricro.com/mricrogl). Contact rorden_AT_gwm(dot)sc(dot)edu<br />
$300<br />
<br />
==Windows bounties==<br />
<br />
===Fixing bug #7182 - $100===<br />
$100 for fixing bug #7182 (http://bugs.freepascal.org/view.php?id=7182). Contact oleg_3630 at mail.ru.<br />
<br />
===Reparent Forms===<br />
Related to the bounty above, I'd like to spend another 50€ for anyone who manages to reparent a form with a specified owner (data module) to a given parent window handle (HWnd). In Delphi this is pretty simple (ParentWindow := NewParentWindowHandle), but it is not working properly in Lazarus. The form should be reparented completely (incl. accepting keyboard/mouse input and such).<br />
The code will be used for my open source project "Delphi ASIO & VST Packages" to make them usable with Lazarus (planned for version 1.5). Please contact me prior to fixing this (Christian at savioursofsoul.de)<br />
<br />
===Make TListView "Virtual"===<br />
In current Win32, Carbon and GTK implementations, the TListView is not 100% Delphi compatible - the ability to set OwnerData=true together with an OnData Event-Handler is missing (http://bugs.freepascal.org/view.php?id=7749) - 100 EUR for adding this to the Windows port - [http://grauonline.de/cmsimple2_6/en/?About Contact us] - UPDATE: skalogryz has agreed to start working on this.<br />
<br />
==Gtk bounties==<br />
<br />
===Fix bug - $10===<br />
<br />
http://mantis.freepascal.org/view.php?id=11906<br />
Contact http://www.wordwebsoftware.com/contact.html<br />
<br />
<br />
<br />
===Fix bugs on Gtk 2 IDE and Interface - $200===<br />
<br />
* $200.00 US to anyone or group that gets the IDE to use gtk2 and to compile programs for GTK2 without major GUI bugs - both should work. The award of the bounty will be determined by votes from the mailing list. The list will first vote if the IDE and programs work and then on which person or group should receive the bounty.<br />
<br />
* I didn't post the bounty, but [[User:Sekelsenmat|I]] would like to suggest at least the following bug fixes:<br />
**<s>Right-click bug: http://www.freepascal.org/mantis/view.php?id=7714</s><br />
**<s>SynEdit performance issue: http://www.freepascal.org/mantis/view.php?id=7717</s><br />
**<s>Main menu shortcuts: http://www.freepascal.org/mantis/view.php?id=7765</s><br />
**<s>If you minimize the IDE it only minimizes the main window, not the other ones. This is the most annoying for me: http://www.freepascal.org/mantis/view.php?id=8834</s><br />
<br />
===Fix GLScene volume rendering on Linux===<br />
<br />
* $100.00 US for anyone who can get GLScene's volume rendering working on Linux. I have adapted Jürgen Abel's Texture3D glscene demo (http://glscene.sourceforge.net/wikka/UserDemos/) to compile under either Delphi or Lazarus. My new code is here www.mricro.com/texture3d.zip. The Lazarus code (0.9.26.2, using SVN snapshot of GLScene) works fine under Windows and OSX, but when I compile it with Linux the volume is always rendered as an opaque white cube. I get the same results with Fedora10 using ATI 4850 and Ubuntu 9.04 using a NVidia GTX9800. Both computers are set up with the recommended proprietary. Contact rorden@mailbox.sc.edu<br />
<br />
==Windows CE bounties==<br />
<br />
None<br />
<br />
==Symbian bounties==<br />
<br />
===RTL for Symbian phones - $1000===<br />
Create a RTL for Symbian phones (FPC for ARM already exists).<br />
* Include a very simple GUI app (like [http://ccrdu.de/files/fpc/NoFrameworkAppDemo.lpr this one] for PocketPC).<br />
* Needed for Symbian UIQ 2 and 3 at least. <br />
* Bounty $1000, open for negotiation if Series 60/80/90 supported. <br />
* Contact ''bounty (at) ccrdu.de''.<br />
** Volunteers found and in contact!<br />
<br />
==Carbon bounties==<br />
* Make TListView "Virtual": In current Win32, Carbon and GTK implementations, the TListView is not 100% Delphi compatible - the ability to set OwnerData=true together with an OnData Event-Handler is missing (http://bugs.freepascal.org/view.php?id=7749) - 100 EUR for adding this to the Carbon port - [http://grauonline.de/cmsimple2_6/en/?About Contact us] - UPDATE: skalogryz has agreed to start working on this.<br />
<br />
==Qt bounties==<br />
<br />
* None<br />
<br />
==fpGUI bounties==<br />
<br />
None<br />
<br />
==Closed bounties==<br />
<br />
These are examples of successfully concluded bounties. <br />
<br />
===GTK2 clipping rect error===<br />
Paul Ishenin earned $50 for fixing a bug with GTK2 (Clipping rect of newly created bitmap was invalid). He then donated these funds to the Lazarus PayPal account.<br />
http://bugs.freepascal.org/view.php?id=12026<br />
<br />
===Small Fix for Linux x86_64 IDE===<br />
<br />
*Vincent earned $50 US for discovering why Linux x86_64 caused the IDE to report an Access Violation when opening the MRIcron project. This bug was also reported on Mantis (http://www.freepascal.org/mantis/view.php?id=9216).<br />
<br />
===Carbon Components===<br />
<br />
*Tombo earned $600 US for developing new Carbon components including TSpinEdit, TFloatSpinEdit, TSpeedButton<br />
<br />
*Tombo earned $50.00 US for extending [[LazRGBGraphics]] to support the QT widgetset - offered by rorden at gwm.sc.edu<br />
<br />
===Small Windows Bugs===<br />
<br />
*Jesús earned $40 US for fixing a bug where copying images with the edit/copy caused all pixels with the color shown in the bottom-left corner to appear black (http://www.sph.sc.edu/comd/rorden/mricron/bounty/)<br />
<br />
===Apache modules - €300===<br />
<br />
*Apache modules header translation and basic example. '''Awarded to [[User:Sekelsenmat|Sekelsenmat]]'''.<br />
: [[FPC and Apache Modules]]<br />
<br />
=== Making paszlib zipper Mac/Unix compatible ===<br />
Tom G. earned 100 EUR for making the paszlib zipper Mac/Unix compatible. The [http://svn.freepascal.org/svn/fpc/trunk/packages/paszlib/src/zipper.pp zipper] (TUnZipper.UnzipAllFiles) had no support for symbolic links, did not set executable bits of unzipped executable files, did not support directories, and raised a CRC exception. Thanks Tom for fixing this!</div>Nero76https://wiki.freepascal.org/index.php?title=Bounties&diff=36410Bounties2009-07-06T14:52:54Z<p>Nero76: /* Making paszlib zipper Mac/Unix compatible */</p>
<hr />
<div>{{Bounties}}<br />
<br />
==Introduction==<br />
<br />
Need a particular feature? Set a price here, giving a short description, your name and email address. Hopefully, one or more people will contact you and you can arrange the terms of this development work.<br />
<br />
Currently, Lazarus depends on volunteers to implement everything on it. Recently Lazarus popularity has increased a lot, and many commercial projects are being developed with it. The idea behind the Bounties is '''not''' to substitute the current Mantis bug system, where work will continue normally. The idea is to provide a new development mechanism where commercial application developers can receive professional support and at the same time be able to contribute back to the community. <br />
<br />
If there is noone interrested in your bounty, it's probably because the price is too low. Also, try to keep all bounties above 50 dolars. Bellow that it usually won't be worth the time investigating the problem. Please also date your bounties. This way at some point we can weed out really old ones.<br />
<br />
Examples:<br />
<br />
* Make Lazarus hello world work on PamOS 5 Garnet. $1000 Contact myemail@domain.com<br />
* Implement a new feature. Please make a budget Contact myemail@domain.com<br />
<br />
==Multi-platform bounties==<br />
<br />
=== FPC grammar ===<br />
Creation and support of grammar FPC in notation EBNF in meta-language GOLD Meta-Language ( http://www.devincook.com/goldparser/grammars/index.htm ). The grammar should include all opportunities of language: interfaces, comments, instructions of the compiler, all announcements, keywords, etc. >1000$. Contact xayam@yandex.ru<br />
<br />
=== Optimizations for FPC/Lazarus ===<br />
Two bounties, totally $100 for speed optimizations for FPC/Lazarus are described on my web page http://www.sph.sc.edu/comd/rorden/mricron/bounty/. Martin Friebe won one of these (for changing the code, not the compiler) and donated the $50 to the Lazarus paypal account.<br />
<br />
=== IDE Enhancements ===<br />
<br />
1.) If a path is added in the Compiler-Options of a project then add the path as a relative path instead of an absolute path. $20<br />
<br />
2.) If in the MessageView the sentence "Can't find unit XYZ" is displayed, it should be possible to doubleclick onto the<br />
word "XYZ" and this would open the "FindInFiles" dialog. $20<br />
<br />
Contact: sam_solver_AT_yahoo(dot)com<br />
<br />
=== GLScene improvements ===<br />
<br />
The GLScene Texture3D demo (Lazarus version at http://www.mricro.com/texture3d.zip) currently generates volume rendering. I want to encourage someone to add the ability to add surface shading. The picture at http://www.mricro.com/rendert.jpg shows a sample image with pure volume rendering (left), pure surface shading (middle) and a mixture. I would like to achieve this using the GPU. A compiled program with C++ source code and sample image is available at<br />
http://www.real-time-volume-graphics.org/?page_id=5<br />
To see the effect, download the 3D Texture Slicer and launch the SimpleSlicer.exe. At first the program displays a volume rendering, but press the 'm' key to switch the mode to surface shading. The book associated with this C++ code describes the implementation: Listing 5.6 for computing on-the-fly-gradients and Listing 5.1 for the Blinn-Phong shading. See Figure 5.5 for example output...<br />
http://books.google.com/books?id=lDWOu3_KGvoC&pg=PA119&lpg=PA119&dq=%22cg+function+implementing+the+blinn-phong%22&source=bl&ots=TcX6X0Kxgc&sig=XukQa8E2_nlcM7qMFZV1ujam0Z4&hl=en&ei=yFctSrjsNJ6ltgeJrN2-CA&sa=X&oi=book_result&ct=result&resnum=1<br />
Bounty will be paid to the first person who can send me GPU-accelerated shading for the Texture3D demo, or my open source MRIcroGL (http://www.mricro.com/mricrogl). Contact rorden_AT_gwm(dot)sc(dot)edu<br />
$300<br />
<br />
==Windows bounties==<br />
<br />
===Fixing bug #7182 - $100===<br />
$100 for fixing bug #7182 (http://bugs.freepascal.org/view.php?id=7182). Contact oleg_3630 at mail.ru.<br />
<br />
===Reparent Forms===<br />
Related to the bounty above, I'd like to spend another 50€ for anyone who manages to reparent a form with a specified owner (data module) to a given parent window handle (HWnd). In Delphi this is pretty simple (ParentWindow := NewParentWindowHandle), but it is not working properly in Lazarus. The form should be reparented completely (incl. accepting keyboard/mouse input and such).<br />
The code will be used for my open source project "Delphi ASIO & VST Packages" to make them usable with Lazarus (planned for version 1.5). Please contact me prior to fixing this (Christian at savioursofsoul.de)<br />
<br />
===Make TListView "Virtual"===<br />
In current Win32, Carbon and GTK implementations, the TListView is not 100% Delphi compatible - the ability to set OwnerData=true together with an OnData Event-Handler is missing (http://bugs.freepascal.org/view.php?id=7749) - 100 EUR for adding this to the Windows port - [http://grauonline.de/cmsimple2_6/en/?About Contact us] - UPDATE: skalogryz has agreed to start working on this.<br />
<br />
==Gtk bounties==<br />
<br />
===Fix bug - $10===<br />
<br />
http://mantis.freepascal.org/view.php?id=11906<br />
Contact http://www.wordwebsoftware.com/contact.html<br />
<br />
<br />
<br />
===Fix bugs on Gtk 2 IDE and Interface - $200===<br />
<br />
* $200.00 US to anyone or group that gets the IDE to use gtk2 and to compile programs for GTK2 without major GUI bugs - both should work. The award of the bounty will be determined by votes from the mailing list. The list will first vote if the IDE and programs work and then on which person or group should receive the bounty.<br />
<br />
* I didn't post the bounty, but [[User:Sekelsenmat|I]] would like to suggest at least the following bug fixes:<br />
**<s>Right-click bug: http://www.freepascal.org/mantis/view.php?id=7714</s><br />
**<s>SynEdit performance issue: http://www.freepascal.org/mantis/view.php?id=7717</s><br />
**<s>Main menu shortcuts: http://www.freepascal.org/mantis/view.php?id=7765</s><br />
**<s>If you minimize the IDE it only minimizes the main window, not the other ones. This is the most annoying for me: http://www.freepascal.org/mantis/view.php?id=8834</s><br />
<br />
===Fix GLScene volume rendering on Linux===<br />
<br />
* $100.00 US for anyone who can get GLScene's volume rendering working on Linux. I have adapted Jürgen Abel's Texture3D glscene demo (http://glscene.sourceforge.net/wikka/UserDemos/) to compile under either Delphi or Lazarus. My new code is here www.mricro.com/texture3d.zip. The Lazarus code (0.9.26.2, using SVN snapshot of GLScene) works fine under Windows and OSX, but when I compile it with Linux the volume is always rendered as an opaque white cube. I get the same results with Fedora10 using ATI 4850 and Ubuntu 9.04 using a NVidia GTX9800. Both computers are set up with the recommended proprietary. Contact rorden@mailbox.sc.edu<br />
<br />
==Windows CE bounties==<br />
<br />
None<br />
<br />
==Symbian bounties==<br />
<br />
===RTL for Symbian phones - $1000===<br />
Create a RTL for Symbian phones (FPC for ARM already exists).<br />
* Include a very simple GUI app (like [http://ccrdu.de/files/fpc/NoFrameworkAppDemo.lpr this one] for PocketPC).<br />
* Needed for Symbian UIQ 2 and 3 at least. <br />
* Bounty $1000, open for negotiation if Series 60/80/90 supported. <br />
* Contact ''bounty (at) ccrdu.de''.<br />
** Volunteers found and in contact!<br />
<br />
==Carbon bounties==<br />
* Make TListView "Virtual": In current Win32, Carbon and GTK implementations, the TListView is not 100% Delphi compatible - the ability to set OwnerData=true together with an OnData Event-Handler is missing (http://bugs.freepascal.org/view.php?id=7749) - 100 EUR for adding this to the Carbon port - [http://grauonline.de/cmsimple2_6/en/?About Contact us] - UPDATE: skalogryz has agreed to start working on this.<br />
<br />
==Qt bounties==<br />
<br />
* None<br />
<br />
==fpGUI bounties==<br />
<br />
None<br />
<br />
==Closed bounties==<br />
<br />
These are examples of successfully concluded bounties. <br />
<br />
===GTK2 clipping rect error===<br />
Paul Ishenin earned $50 for fixing a bug with GTK2 (Clipping rect of newly created bitmap was invalid). He then donated these funds to the Lazarus PayPal account.<br />
http://bugs.freepascal.org/view.php?id=12026<br />
<br />
===Small Fix for Linux x86_64 IDE===<br />
<br />
*Vincent earned $50 US for discovering why Linux x86_64 caused the IDE to report an Access Violation when opening the MRIcron project. This bug was also reported on Mantis (http://www.freepascal.org/mantis/view.php?id=9216).<br />
<br />
===Carbon Components===<br />
<br />
*Tombo earned $600 US for developing new Carbon components including TSpinEdit, TFloatSpinEdit, TSpeedButton<br />
<br />
*Tombo earned $50.00 US for extending [[LazRGBGraphics]] to support the QT widgetset - offered by rorden at gwm.sc.edu<br />
<br />
===Small Windows Bugs===<br />
<br />
*Jesús earned $40 US for fixing a bug where copying images with the edit/copy caused all pixels with the color shown in the bottom-left corner to appear black (http://www.sph.sc.edu/comd/rorden/mricron/bounty/)<br />
<br />
===Apache modules - €300===<br />
<br />
*Apache modules header translation and basic example. '''Awarded to [[User:Sekelsenmat|Sekelsenmat]]'''.<br />
: [[FPC and Apache Modules]]<br />
<br />
=== Making paszlib zipper Mac/Unix compatible ===<br />
Tom Gregorovic earned 100 EUR for making the paszlib zipper Mac/Unix compatible. The [http://svn.freepascal.org/svn/fpc/trunk/packages/paszlib/src/zipper.pp zipper] (TUnZipper.UnzipAllFiles) had no support for symbolic links, did not set executable bits of unzipped executable files, did not support directories, and raised a CRC exception. Thanks Tom for fixing this!</div>Nero76https://wiki.freepascal.org/index.php?title=Bounties&diff=36409Bounties2009-07-06T14:52:18Z<p>Nero76: /* Making paszlib zipper Mac compatible */</p>
<hr />
<div>{{Bounties}}<br />
<br />
==Introduction==<br />
<br />
Need a particular feature? Set a price here, giving a short description, your name and email address. Hopefully, one or more people will contact you and you can arrange the terms of this development work.<br />
<br />
Currently, Lazarus depends on volunteers to implement everything on it. Recently Lazarus popularity has increased a lot, and many commercial projects are being developed with it. The idea behind the Bounties is '''not''' to substitute the current Mantis bug system, where work will continue normally. The idea is to provide a new development mechanism where commercial application developers can receive professional support and at the same time be able to contribute back to the community. <br />
<br />
If there is noone interrested in your bounty, it's probably because the price is too low. Also, try to keep all bounties above 50 dolars. Bellow that it usually won't be worth the time investigating the problem. Please also date your bounties. This way at some point we can weed out really old ones.<br />
<br />
Examples:<br />
<br />
* Make Lazarus hello world work on PamOS 5 Garnet. $1000 Contact myemail@domain.com<br />
* Implement a new feature. Please make a budget Contact myemail@domain.com<br />
<br />
==Multi-platform bounties==<br />
<br />
=== FPC grammar ===<br />
Creation and support of grammar FPC in notation EBNF in meta-language GOLD Meta-Language ( http://www.devincook.com/goldparser/grammars/index.htm ). The grammar should include all opportunities of language: interfaces, comments, instructions of the compiler, all announcements, keywords, etc. >1000$. Contact xayam@yandex.ru<br />
<br />
=== Optimizations for FPC/Lazarus ===<br />
Two bounties, totally $100 for speed optimizations for FPC/Lazarus are described on my web page http://www.sph.sc.edu/comd/rorden/mricron/bounty/. Martin Friebe won one of these (for changing the code, not the compiler) and donated the $50 to the Lazarus paypal account.<br />
<br />
=== IDE Enhancements ===<br />
<br />
1.) If a path is added in the Compiler-Options of a project then add the path as a relative path instead of an absolute path. $20<br />
<br />
2.) If in the MessageView the sentence "Can't find unit XYZ" is displayed, it should be possible to doubleclick onto the<br />
word "XYZ" and this would open the "FindInFiles" dialog. $20<br />
<br />
Contact: sam_solver_AT_yahoo(dot)com<br />
<br />
=== GLScene improvements ===<br />
<br />
The GLScene Texture3D demo (Lazarus version at http://www.mricro.com/texture3d.zip) currently generates volume rendering. I want to encourage someone to add the ability to add surface shading. The picture at http://www.mricro.com/rendert.jpg shows a sample image with pure volume rendering (left), pure surface shading (middle) and a mixture. I would like to achieve this using the GPU. A compiled program with C++ source code and sample image is available at<br />
http://www.real-time-volume-graphics.org/?page_id=5<br />
To see the effect, download the 3D Texture Slicer and launch the SimpleSlicer.exe. At first the program displays a volume rendering, but press the 'm' key to switch the mode to surface shading. The book associated with this C++ code describes the implementation: Listing 5.6 for computing on-the-fly-gradients and Listing 5.1 for the Blinn-Phong shading. See Figure 5.5 for example output...<br />
http://books.google.com/books?id=lDWOu3_KGvoC&pg=PA119&lpg=PA119&dq=%22cg+function+implementing+the+blinn-phong%22&source=bl&ots=TcX6X0Kxgc&sig=XukQa8E2_nlcM7qMFZV1ujam0Z4&hl=en&ei=yFctSrjsNJ6ltgeJrN2-CA&sa=X&oi=book_result&ct=result&resnum=1<br />
Bounty will be paid to the first person who can send me GPU-accelerated shading for the Texture3D demo, or my open source MRIcroGL (http://www.mricro.com/mricrogl). Contact rorden_AT_gwm(dot)sc(dot)edu<br />
$300<br />
<br />
==Windows bounties==<br />
<br />
===Fixing bug #7182 - $100===<br />
$100 for fixing bug #7182 (http://bugs.freepascal.org/view.php?id=7182). Contact oleg_3630 at mail.ru.<br />
<br />
===Reparent Forms===<br />
Related to the bounty above, I'd like to spend another 50€ for anyone who manages to reparent a form with a specified owner (data module) to a given parent window handle (HWnd). In Delphi this is pretty simple (ParentWindow := NewParentWindowHandle), but it is not working properly in Lazarus. The form should be reparented completely (incl. accepting keyboard/mouse input and such).<br />
The code will be used for my open source project "Delphi ASIO & VST Packages" to make them usable with Lazarus (planned for version 1.5). Please contact me prior to fixing this (Christian at savioursofsoul.de)<br />
<br />
===Make TListView "Virtual"===<br />
In current Win32, Carbon and GTK implementations, the TListView is not 100% Delphi compatible - the ability to set OwnerData=true together with an OnData Event-Handler is missing (http://bugs.freepascal.org/view.php?id=7749) - 100 EUR for adding this to the Windows port - [http://grauonline.de/cmsimple2_6/en/?About Contact us] - UPDATE: skalogryz has agreed to start working on this.<br />
<br />
==Gtk bounties==<br />
<br />
===Fix bug - $10===<br />
<br />
http://mantis.freepascal.org/view.php?id=11906<br />
Contact http://www.wordwebsoftware.com/contact.html<br />
<br />
<br />
<br />
===Fix bugs on Gtk 2 IDE and Interface - $200===<br />
<br />
* $200.00 US to anyone or group that gets the IDE to use gtk2 and to compile programs for GTK2 without major GUI bugs - both should work. The award of the bounty will be determined by votes from the mailing list. The list will first vote if the IDE and programs work and then on which person or group should receive the bounty.<br />
<br />
* I didn't post the bounty, but [[User:Sekelsenmat|I]] would like to suggest at least the following bug fixes:<br />
**<s>Right-click bug: http://www.freepascal.org/mantis/view.php?id=7714</s><br />
**<s>SynEdit performance issue: http://www.freepascal.org/mantis/view.php?id=7717</s><br />
**<s>Main menu shortcuts: http://www.freepascal.org/mantis/view.php?id=7765</s><br />
**<s>If you minimize the IDE it only minimizes the main window, not the other ones. This is the most annoying for me: http://www.freepascal.org/mantis/view.php?id=8834</s><br />
<br />
===Fix GLScene volume rendering on Linux===<br />
<br />
* $100.00 US for anyone who can get GLScene's volume rendering working on Linux. I have adapted Jürgen Abel's Texture3D glscene demo (http://glscene.sourceforge.net/wikka/UserDemos/) to compile under either Delphi or Lazarus. My new code is here www.mricro.com/texture3d.zip. The Lazarus code (0.9.26.2, using SVN snapshot of GLScene) works fine under Windows and OSX, but when I compile it with Linux the volume is always rendered as an opaque white cube. I get the same results with Fedora10 using ATI 4850 and Ubuntu 9.04 using a NVidia GTX9800. Both computers are set up with the recommended proprietary. Contact rorden@mailbox.sc.edu<br />
<br />
==Windows CE bounties==<br />
<br />
None<br />
<br />
==Symbian bounties==<br />
<br />
===RTL for Symbian phones - $1000===<br />
Create a RTL for Symbian phones (FPC for ARM already exists).<br />
* Include a very simple GUI app (like [http://ccrdu.de/files/fpc/NoFrameworkAppDemo.lpr this one] for PocketPC).<br />
* Needed for Symbian UIQ 2 and 3 at least. <br />
* Bounty $1000, open for negotiation if Series 60/80/90 supported. <br />
* Contact ''bounty (at) ccrdu.de''.<br />
** Volunteers found and in contact!<br />
<br />
==Carbon bounties==<br />
* Make TListView "Virtual": In current Win32, Carbon and GTK implementations, the TListView is not 100% Delphi compatible - the ability to set OwnerData=true together with an OnData Event-Handler is missing (http://bugs.freepascal.org/view.php?id=7749) - 100 EUR for adding this to the Carbon port - [http://grauonline.de/cmsimple2_6/en/?About Contact us] - UPDATE: skalogryz has agreed to start working on this.<br />
<br />
==Qt bounties==<br />
<br />
* None<br />
<br />
==fpGUI bounties==<br />
<br />
None<br />
<br />
==Closed bounties==<br />
<br />
These are examples of successfully concluded bounties. <br />
<br />
===GTK2 clipping rect error===<br />
Paul Ishenin earned $50 for fixing a bug with GTK2 (Clipping rect of newly created bitmap was invalid). He then donated these funds to the Lazarus PayPal account.<br />
http://bugs.freepascal.org/view.php?id=12026<br />
<br />
===Small Fix for Linux x86_64 IDE===<br />
<br />
*Vincent earned $50 US for discovering why Linux x86_64 caused the IDE to report an Access Violation when opening the MRIcron project. This bug was also reported on Mantis (http://www.freepascal.org/mantis/view.php?id=9216).<br />
<br />
===Carbon Components===<br />
<br />
*Tombo earned $600 US for developing new Carbon components including TSpinEdit, TFloatSpinEdit, TSpeedButton<br />
<br />
*Tombo earned $50.00 US for extending [[LazRGBGraphics]] to support the QT widgetset - offered by rorden at gwm.sc.edu<br />
<br />
===Small Windows Bugs===<br />
<br />
*Jesús earned $40 US for fixing a bug where copying images with the edit/copy caused all pixels with the color shown in the bottom-left corner to appear black (http://www.sph.sc.edu/comd/rorden/mricron/bounty/)<br />
<br />
===Apache modules - €300===<br />
<br />
*Apache modules header translation and basic example. '''Awarded to [[User:Sekelsenmat|Sekelsenmat]]'''.<br />
: [[FPC and Apache Modules]]<br />
<br />
=== Making paszlib zipper Mac/Unix compatible ===<br />
Tom Gregorovic earned 100 EUR for making the paszlib zipper Mac/Unix compatible. The [http://svn.freepascal.org/svn/fpc/trunk/packages/paszlib/src/zipper.pp zipper] (TUnZipper.UnzipAllFiles) had no support for symbolic links, did not set executable bits of unzipped executable files, did not support directories, and raised a CRC exception. Thanks Tom!</div>Nero76https://wiki.freepascal.org/index.php?title=Bounties&diff=36408Bounties2009-07-06T14:51:54Z<p>Nero76: /* Closed bounties */</p>
<hr />
<div>{{Bounties}}<br />
<br />
==Introduction==<br />
<br />
Need a particular feature? Set a price here, giving a short description, your name and email address. Hopefully, one or more people will contact you and you can arrange the terms of this development work.<br />
<br />
Currently, Lazarus depends on volunteers to implement everything on it. Recently Lazarus popularity has increased a lot, and many commercial projects are being developed with it. The idea behind the Bounties is '''not''' to substitute the current Mantis bug system, where work will continue normally. The idea is to provide a new development mechanism where commercial application developers can receive professional support and at the same time be able to contribute back to the community. <br />
<br />
If there is noone interrested in your bounty, it's probably because the price is too low. Also, try to keep all bounties above 50 dolars. Bellow that it usually won't be worth the time investigating the problem. Please also date your bounties. This way at some point we can weed out really old ones.<br />
<br />
Examples:<br />
<br />
* Make Lazarus hello world work on PamOS 5 Garnet. $1000 Contact myemail@domain.com<br />
* Implement a new feature. Please make a budget Contact myemail@domain.com<br />
<br />
==Multi-platform bounties==<br />
<br />
=== FPC grammar ===<br />
Creation and support of grammar FPC in notation EBNF in meta-language GOLD Meta-Language ( http://www.devincook.com/goldparser/grammars/index.htm ). The grammar should include all opportunities of language: interfaces, comments, instructions of the compiler, all announcements, keywords, etc. >1000$. Contact xayam@yandex.ru<br />
<br />
=== Optimizations for FPC/Lazarus ===<br />
Two bounties, totally $100 for speed optimizations for FPC/Lazarus are described on my web page http://www.sph.sc.edu/comd/rorden/mricron/bounty/. Martin Friebe won one of these (for changing the code, not the compiler) and donated the $50 to the Lazarus paypal account.<br />
<br />
=== IDE Enhancements ===<br />
<br />
1.) If a path is added in the Compiler-Options of a project then add the path as a relative path instead of an absolute path. $20<br />
<br />
2.) If in the MessageView the sentence "Can't find unit XYZ" is displayed, it should be possible to doubleclick onto the<br />
word "XYZ" and this would open the "FindInFiles" dialog. $20<br />
<br />
Contact: sam_solver_AT_yahoo(dot)com<br />
<br />
=== GLScene improvements ===<br />
<br />
The GLScene Texture3D demo (Lazarus version at http://www.mricro.com/texture3d.zip) currently generates volume rendering. I want to encourage someone to add the ability to add surface shading. The picture at http://www.mricro.com/rendert.jpg shows a sample image with pure volume rendering (left), pure surface shading (middle) and a mixture. I would like to achieve this using the GPU. A compiled program with C++ source code and sample image is available at<br />
http://www.real-time-volume-graphics.org/?page_id=5<br />
To see the effect, download the 3D Texture Slicer and launch the SimpleSlicer.exe. At first the program displays a volume rendering, but press the 'm' key to switch the mode to surface shading. The book associated with this C++ code describes the implementation: Listing 5.6 for computing on-the-fly-gradients and Listing 5.1 for the Blinn-Phong shading. See Figure 5.5 for example output...<br />
http://books.google.com/books?id=lDWOu3_KGvoC&pg=PA119&lpg=PA119&dq=%22cg+function+implementing+the+blinn-phong%22&source=bl&ots=TcX6X0Kxgc&sig=XukQa8E2_nlcM7qMFZV1ujam0Z4&hl=en&ei=yFctSrjsNJ6ltgeJrN2-CA&sa=X&oi=book_result&ct=result&resnum=1<br />
Bounty will be paid to the first person who can send me GPU-accelerated shading for the Texture3D demo, or my open source MRIcroGL (http://www.mricro.com/mricrogl). Contact rorden_AT_gwm(dot)sc(dot)edu<br />
$300<br />
<br />
==Windows bounties==<br />
<br />
===Fixing bug #7182 - $100===<br />
$100 for fixing bug #7182 (http://bugs.freepascal.org/view.php?id=7182). Contact oleg_3630 at mail.ru.<br />
<br />
===Reparent Forms===<br />
Related to the bounty above, I'd like to spend another 50€ for anyone who manages to reparent a form with a specified owner (data module) to a given parent window handle (HWnd). In Delphi this is pretty simple (ParentWindow := NewParentWindowHandle), but it is not working properly in Lazarus. The form should be reparented completely (incl. accepting keyboard/mouse input and such).<br />
The code will be used for my open source project "Delphi ASIO & VST Packages" to make them usable with Lazarus (planned for version 1.5). Please contact me prior to fixing this (Christian at savioursofsoul.de)<br />
<br />
===Make TListView "Virtual"===<br />
In current Win32, Carbon and GTK implementations, the TListView is not 100% Delphi compatible - the ability to set OwnerData=true together with an OnData Event-Handler is missing (http://bugs.freepascal.org/view.php?id=7749) - 100 EUR for adding this to the Windows port - [http://grauonline.de/cmsimple2_6/en/?About Contact us] - UPDATE: skalogryz has agreed to start working on this.<br />
<br />
==Gtk bounties==<br />
<br />
===Fix bug - $10===<br />
<br />
http://mantis.freepascal.org/view.php?id=11906<br />
Contact http://www.wordwebsoftware.com/contact.html<br />
<br />
<br />
<br />
===Fix bugs on Gtk 2 IDE and Interface - $200===<br />
<br />
* $200.00 US to anyone or group that gets the IDE to use gtk2 and to compile programs for GTK2 without major GUI bugs - both should work. The award of the bounty will be determined by votes from the mailing list. The list will first vote if the IDE and programs work and then on which person or group should receive the bounty.<br />
<br />
* I didn't post the bounty, but [[User:Sekelsenmat|I]] would like to suggest at least the following bug fixes:<br />
**<s>Right-click bug: http://www.freepascal.org/mantis/view.php?id=7714</s><br />
**<s>SynEdit performance issue: http://www.freepascal.org/mantis/view.php?id=7717</s><br />
**<s>Main menu shortcuts: http://www.freepascal.org/mantis/view.php?id=7765</s><br />
**<s>If you minimize the IDE it only minimizes the main window, not the other ones. This is the most annoying for me: http://www.freepascal.org/mantis/view.php?id=8834</s><br />
<br />
===Fix GLScene volume rendering on Linux===<br />
<br />
* $100.00 US for anyone who can get GLScene's volume rendering working on Linux. I have adapted Jürgen Abel's Texture3D glscene demo (http://glscene.sourceforge.net/wikka/UserDemos/) to compile under either Delphi or Lazarus. My new code is here www.mricro.com/texture3d.zip. The Lazarus code (0.9.26.2, using SVN snapshot of GLScene) works fine under Windows and OSX, but when I compile it with Linux the volume is always rendered as an opaque white cube. I get the same results with Fedora10 using ATI 4850 and Ubuntu 9.04 using a NVidia GTX9800. Both computers are set up with the recommended proprietary. Contact rorden@mailbox.sc.edu<br />
<br />
==Windows CE bounties==<br />
<br />
None<br />
<br />
==Symbian bounties==<br />
<br />
===RTL for Symbian phones - $1000===<br />
Create a RTL for Symbian phones (FPC for ARM already exists).<br />
* Include a very simple GUI app (like [http://ccrdu.de/files/fpc/NoFrameworkAppDemo.lpr this one] for PocketPC).<br />
* Needed for Symbian UIQ 2 and 3 at least. <br />
* Bounty $1000, open for negotiation if Series 60/80/90 supported. <br />
* Contact ''bounty (at) ccrdu.de''.<br />
** Volunteers found and in contact!<br />
<br />
==Carbon bounties==<br />
* Make TListView "Virtual": In current Win32, Carbon and GTK implementations, the TListView is not 100% Delphi compatible - the ability to set OwnerData=true together with an OnData Event-Handler is missing (http://bugs.freepascal.org/view.php?id=7749) - 100 EUR for adding this to the Carbon port - [http://grauonline.de/cmsimple2_6/en/?About Contact us] - UPDATE: skalogryz has agreed to start working on this.<br />
<br />
==Qt bounties==<br />
<br />
* None<br />
<br />
==fpGUI bounties==<br />
<br />
None<br />
<br />
==Closed bounties==<br />
<br />
These are examples of successfully concluded bounties. <br />
<br />
===GTK2 clipping rect error===<br />
Paul Ishenin earned $50 for fixing a bug with GTK2 (Clipping rect of newly created bitmap was invalid). He then donated these funds to the Lazarus PayPal account.<br />
http://bugs.freepascal.org/view.php?id=12026<br />
<br />
===Small Fix for Linux x86_64 IDE===<br />
<br />
*Vincent earned $50 US for discovering why Linux x86_64 caused the IDE to report an Access Violation when opening the MRIcron project. This bug was also reported on Mantis (http://www.freepascal.org/mantis/view.php?id=9216).<br />
<br />
===Carbon Components===<br />
<br />
*Tombo earned $600 US for developing new Carbon components including TSpinEdit, TFloatSpinEdit, TSpeedButton<br />
<br />
*Tombo earned $50.00 US for extending [[LazRGBGraphics]] to support the QT widgetset - offered by rorden at gwm.sc.edu<br />
<br />
===Small Windows Bugs===<br />
<br />
*Jesús earned $40 US for fixing a bug where copying images with the edit/copy caused all pixels with the color shown in the bottom-left corner to appear black (http://www.sph.sc.edu/comd/rorden/mricron/bounty/)<br />
<br />
===Apache modules - €300===<br />
<br />
*Apache modules header translation and basic example. '''Awarded to [[User:Sekelsenmat|Sekelsenmat]]'''.<br />
: [[FPC and Apache Modules]]<br />
<br />
=== Making paszlib zipper Mac compatible ===<br />
Tom Gregorovic earned 100 EUR for making the paszlib zipper Mac/Unix compatible. The [http://svn.freepascal.org/svn/fpc/trunk/packages/paszlib/src/zipper.pp zipper] (TUnZipper.UnzipAllFiles) had no support for symbolic links, did not set executable bits of unzipped executable files, did not support directories, and raised a CRC exception. Thanks Tom!</div>Nero76https://wiki.freepascal.org/index.php?title=Bounties&diff=36407Bounties2009-07-06T14:49:56Z<p>Nero76: /* Multi-platform bounties */</p>
<hr />
<div>{{Bounties}}<br />
<br />
==Introduction==<br />
<br />
Need a particular feature? Set a price here, giving a short description, your name and email address. Hopefully, one or more people will contact you and you can arrange the terms of this development work.<br />
<br />
Currently, Lazarus depends on volunteers to implement everything on it. Recently Lazarus popularity has increased a lot, and many commercial projects are being developed with it. The idea behind the Bounties is '''not''' to substitute the current Mantis bug system, where work will continue normally. The idea is to provide a new development mechanism where commercial application developers can receive professional support and at the same time be able to contribute back to the community. <br />
<br />
If there is noone interrested in your bounty, it's probably because the price is too low. Also, try to keep all bounties above 50 dolars. Bellow that it usually won't be worth the time investigating the problem. Please also date your bounties. This way at some point we can weed out really old ones.<br />
<br />
Examples:<br />
<br />
* Make Lazarus hello world work on PamOS 5 Garnet. $1000 Contact myemail@domain.com<br />
* Implement a new feature. Please make a budget Contact myemail@domain.com<br />
<br />
==Multi-platform bounties==<br />
<br />
=== FPC grammar ===<br />
Creation and support of grammar FPC in notation EBNF in meta-language GOLD Meta-Language ( http://www.devincook.com/goldparser/grammars/index.htm ). The grammar should include all opportunities of language: interfaces, comments, instructions of the compiler, all announcements, keywords, etc. >1000$. Contact xayam@yandex.ru<br />
<br />
=== Optimizations for FPC/Lazarus ===<br />
Two bounties, totally $100 for speed optimizations for FPC/Lazarus are described on my web page http://www.sph.sc.edu/comd/rorden/mricron/bounty/. Martin Friebe won one of these (for changing the code, not the compiler) and donated the $50 to the Lazarus paypal account.<br />
<br />
=== IDE Enhancements ===<br />
<br />
1.) If a path is added in the Compiler-Options of a project then add the path as a relative path instead of an absolute path. $20<br />
<br />
2.) If in the MessageView the sentence "Can't find unit XYZ" is displayed, it should be possible to doubleclick onto the<br />
word "XYZ" and this would open the "FindInFiles" dialog. $20<br />
<br />
Contact: sam_solver_AT_yahoo(dot)com<br />
<br />
=== GLScene improvements ===<br />
<br />
The GLScene Texture3D demo (Lazarus version at http://www.mricro.com/texture3d.zip) currently generates volume rendering. I want to encourage someone to add the ability to add surface shading. The picture at http://www.mricro.com/rendert.jpg shows a sample image with pure volume rendering (left), pure surface shading (middle) and a mixture. I would like to achieve this using the GPU. A compiled program with C++ source code and sample image is available at<br />
http://www.real-time-volume-graphics.org/?page_id=5<br />
To see the effect, download the 3D Texture Slicer and launch the SimpleSlicer.exe. At first the program displays a volume rendering, but press the 'm' key to switch the mode to surface shading. The book associated with this C++ code describes the implementation: Listing 5.6 for computing on-the-fly-gradients and Listing 5.1 for the Blinn-Phong shading. See Figure 5.5 for example output...<br />
http://books.google.com/books?id=lDWOu3_KGvoC&pg=PA119&lpg=PA119&dq=%22cg+function+implementing+the+blinn-phong%22&source=bl&ots=TcX6X0Kxgc&sig=XukQa8E2_nlcM7qMFZV1ujam0Z4&hl=en&ei=yFctSrjsNJ6ltgeJrN2-CA&sa=X&oi=book_result&ct=result&resnum=1<br />
Bounty will be paid to the first person who can send me GPU-accelerated shading for the Texture3D demo, or my open source MRIcroGL (http://www.mricro.com/mricrogl). Contact rorden_AT_gwm(dot)sc(dot)edu<br />
$300<br />
<br />
==Windows bounties==<br />
<br />
===Fixing bug #7182 - $100===<br />
$100 for fixing bug #7182 (http://bugs.freepascal.org/view.php?id=7182). Contact oleg_3630 at mail.ru.<br />
<br />
===Reparent Forms===<br />
Related to the bounty above, I'd like to spend another 50€ for anyone who manages to reparent a form with a specified owner (data module) to a given parent window handle (HWnd). In Delphi this is pretty simple (ParentWindow := NewParentWindowHandle), but it is not working properly in Lazarus. The form should be reparented completely (incl. accepting keyboard/mouse input and such).<br />
The code will be used for my open source project "Delphi ASIO & VST Packages" to make them usable with Lazarus (planned for version 1.5). Please contact me prior to fixing this (Christian at savioursofsoul.de)<br />
<br />
===Make TListView "Virtual"===<br />
In current Win32, Carbon and GTK implementations, the TListView is not 100% Delphi compatible - the ability to set OwnerData=true together with an OnData Event-Handler is missing (http://bugs.freepascal.org/view.php?id=7749) - 100 EUR for adding this to the Windows port - [http://grauonline.de/cmsimple2_6/en/?About Contact us] - UPDATE: skalogryz has agreed to start working on this.<br />
<br />
==Gtk bounties==<br />
<br />
===Fix bug - $10===<br />
<br />
http://mantis.freepascal.org/view.php?id=11906<br />
Contact http://www.wordwebsoftware.com/contact.html<br />
<br />
<br />
<br />
===Fix bugs on Gtk 2 IDE and Interface - $200===<br />
<br />
* $200.00 US to anyone or group that gets the IDE to use gtk2 and to compile programs for GTK2 without major GUI bugs - both should work. The award of the bounty will be determined by votes from the mailing list. The list will first vote if the IDE and programs work and then on which person or group should receive the bounty.<br />
<br />
* I didn't post the bounty, but [[User:Sekelsenmat|I]] would like to suggest at least the following bug fixes:<br />
**<s>Right-click bug: http://www.freepascal.org/mantis/view.php?id=7714</s><br />
**<s>SynEdit performance issue: http://www.freepascal.org/mantis/view.php?id=7717</s><br />
**<s>Main menu shortcuts: http://www.freepascal.org/mantis/view.php?id=7765</s><br />
**<s>If you minimize the IDE it only minimizes the main window, not the other ones. This is the most annoying for me: http://www.freepascal.org/mantis/view.php?id=8834</s><br />
<br />
===Fix GLScene volume rendering on Linux===<br />
<br />
* $100.00 US for anyone who can get GLScene's volume rendering working on Linux. I have adapted Jürgen Abel's Texture3D glscene demo (http://glscene.sourceforge.net/wikka/UserDemos/) to compile under either Delphi or Lazarus. My new code is here www.mricro.com/texture3d.zip. The Lazarus code (0.9.26.2, using SVN snapshot of GLScene) works fine under Windows and OSX, but when I compile it with Linux the volume is always rendered as an opaque white cube. I get the same results with Fedora10 using ATI 4850 and Ubuntu 9.04 using a NVidia GTX9800. Both computers are set up with the recommended proprietary. Contact rorden@mailbox.sc.edu<br />
<br />
==Windows CE bounties==<br />
<br />
None<br />
<br />
==Symbian bounties==<br />
<br />
===RTL for Symbian phones - $1000===<br />
Create a RTL for Symbian phones (FPC for ARM already exists).<br />
* Include a very simple GUI app (like [http://ccrdu.de/files/fpc/NoFrameworkAppDemo.lpr this one] for PocketPC).<br />
* Needed for Symbian UIQ 2 and 3 at least. <br />
* Bounty $1000, open for negotiation if Series 60/80/90 supported. <br />
* Contact ''bounty (at) ccrdu.de''.<br />
** Volunteers found and in contact!<br />
<br />
==Carbon bounties==<br />
* Make TListView "Virtual": In current Win32, Carbon and GTK implementations, the TListView is not 100% Delphi compatible - the ability to set OwnerData=true together with an OnData Event-Handler is missing (http://bugs.freepascal.org/view.php?id=7749) - 100 EUR for adding this to the Carbon port - [http://grauonline.de/cmsimple2_6/en/?About Contact us] - UPDATE: skalogryz has agreed to start working on this.<br />
<br />
==Qt bounties==<br />
<br />
* None<br />
<br />
==fpGUI bounties==<br />
<br />
None<br />
<br />
==Closed bounties==<br />
<br />
These are examples of successfully concluded bounties. <br />
<br />
===GTK2 clipping rect error===<br />
Paul Ishenin earned $50 for fixing a bug with GTK2 (Clipping rect of newly created bitmap was invalid). He then donated these funds to the Lazarus PayPal account.<br />
http://bugs.freepascal.org/view.php?id=12026<br />
<br />
===Small Fix for Linux x86_64 IDE===<br />
<br />
*Vincent earned $50 US for discovering why Linux x86_64 caused the IDE to report an Access Violation when opening the MRIcron project. This bug was also reported on Mantis (http://www.freepascal.org/mantis/view.php?id=9216).<br />
<br />
===Carbon Components===<br />
<br />
*Tombo earned $600 US for developing new Carbon components including TSpinEdit, TFloatSpinEdit, TSpeedButton<br />
<br />
*Tombo earned $50.00 US for extending [[LazRGBGraphics]] to support the QT widgetset - offered by rorden at gwm.sc.edu<br />
<br />
===Small Windows Bugs===<br />
<br />
*Jesús earned $40 US for fixing a bug where copying images with the edit/copy caused all pixels with the color shown in the bottom-left corner to appear black (http://www.sph.sc.edu/comd/rorden/mricron/bounty/)<br />
<br />
===Apache modules - €300===<br />
<br />
*Apache modules header translation and basic example. '''Awarded to [[User:Sekelsenmat|Sekelsenmat]]'''.<br />
: [[FPC and Apache Modules]]</div>Nero76https://wiki.freepascal.org/index.php?title=Bounties&diff=36397Bounties2009-07-03T17:31:47Z<p>Nero76: /* Making paszlib zipper Mac compatible */</p>
<hr />
<div>{{Bounties}}<br />
<br />
==Introduction==<br />
<br />
Need a particular feature? Set a price here, giving a short description, your name and email address. Hopefully, one or more people will contact you and you can arrange the terms of this development work.<br />
<br />
Currently, Lazarus depends on volunteers to implement everything on it. Recently Lazarus popularity has increased a lot, and many commercial projects are being developed with it. The idea behind the Bounties is '''not''' to substitute the current Mantis bug system, where work will continue normally. The idea is to provide a new development mechanism where commercial application developers can receive professional support and at the same time be able to contribute back to the community. <br />
<br />
If there is noone interrested in your bounty, it's probably because the price is too low. Also, try to keep all bounties above 50 dolars. Bellow that it usually won't be worth the time investigating the problem. Please also date your bounties. This way at some point we can weed out really old ones.<br />
<br />
Examples:<br />
<br />
* Make Lazarus hello world work on PamOS 5 Garnet. $1000 Contact myemail@domain.com<br />
* Implement a new feature. Please make a budget Contact myemail@domain.com<br />
<br />
==Multi-platform bounties==<br />
<br />
=== Making paszlib zipper Mac compatible ===<br />
The [http://svn.freepascal.org/svn/fpc/trunk/packages/paszlib/src/zipper.pp zipper] (TUnZipper.UnzipAllFiles) currently has no support for Mac symbolic links, does not set executable bits of unzipped executable files, does not support directories, and raises a CRC exception (I assume these attributes are stored in the [http://www.pkware.com/documents/casestudies/APPNOTE.TXT local file header extra field] - OS X uses the [http://www.info-zip.org/ InfoZIP] implementation for zip files). 100 EUR for fixing this - [http://grauonline.de/cmsimple2_6/en/?About Contact us].<br />
<br />
=== FPC grammar ===<br />
Creation and support of grammar FPC in notation EBNF in meta-language GOLD Meta-Language ( http://www.devincook.com/goldparser/grammars/index.htm ). The grammar should include all opportunities of language: interfaces, comments, instructions of the compiler, all announcements, keywords, etc. >1000$. Contact xayam@yandex.ru<br />
<br />
=== Optimizations for FPC/Lazarus ===<br />
Two bounties, totally $100 for speed optimizations for FPC/Lazarus are described on my web page http://www.sph.sc.edu/comd/rorden/mricron/bounty/. Martin Friebe won one of these (for changing the code, not the compiler) and donated the $50 to the Lazarus paypal account.<br />
<br />
=== IDE Enhancements ===<br />
<br />
1.) If a path is added in the Compiler-Options of a project then add the path as a relative path instead of an absolute path. $20<br />
<br />
2.) If in the MessageView the sentence "Can't find unit XYZ" is displayed, it should be possible to doubleclick onto the<br />
word "XYZ" and this would open the "FindInFiles" dialog. $20<br />
<br />
Contact: sam_solver_AT_yahoo(dot)com<br />
<br />
=== GLScene improvements ===<br />
<br />
The GLScene Texture3D demo (Lazarus version at http://www.mricro.com/texture3d.zip) currently generates volume rendering. I want to encourage someone to add the ability to add surface shading. The picture at http://www.mricro.com/rendert.jpg shows a sample image with pure volume rendering (left), pure surface shading (middle) and a mixture. I would like to achieve this using the GPU. A compiled program with C++ source code and sample image is available at<br />
http://www.real-time-volume-graphics.org/?page_id=5<br />
To see the effect, download the 3D Texture Slicer and launch the SimpleSlicer.exe. At first the program displays a volume rendering, but press the 'm' key to switch the mode to surface shading. The book associated with this C++ code describes the implementation: Listing 5.6 for computing on-the-fly-gradients and Listing 5.1 for the Blinn-Phong shading. See Figure 5.5 for example output...<br />
http://books.google.com/books?id=lDWOu3_KGvoC&pg=PA119&lpg=PA119&dq=%22cg+function+implementing+the+blinn-phong%22&source=bl&ots=TcX6X0Kxgc&sig=XukQa8E2_nlcM7qMFZV1ujam0Z4&hl=en&ei=yFctSrjsNJ6ltgeJrN2-CA&sa=X&oi=book_result&ct=result&resnum=1<br />
Bounty will be paid to the first person who can send me GPU-accelerated shading for the Texture3D demo, or my open source MRIcroGL (http://www.mricro.com/mricrogl). Contact rorden_AT_gwm(dot)sc(dot)edu<br />
$300<br />
<br />
==Windows bounties==<br />
<br />
===Fixing bug #7182 - $100===<br />
$100 for fixing bug #7182 (http://bugs.freepascal.org/view.php?id=7182). Contact oleg_3630 at mail.ru.<br />
<br />
===Reparent Forms===<br />
Related to the bounty above, I'd like to spend another 50€ for anyone who manages to reparent a form with a specified owner (data module) to a given parent window handle (HWnd). In Delphi this is pretty simple (ParentWindow := NewParentWindowHandle), but it is not working properly in Lazarus. The form should be reparented completely (incl. accepting keyboard/mouse input and such).<br />
The code will be used for my open source project "Delphi ASIO & VST Packages" to make them usable with Lazarus (planned for version 1.5). Please contact me prior to fixing this (Christian at savioursofsoul.de<br />
<br />
<br />
===Make TListView "Virtual"===<br />
In current Win32, Carbon and GTK implementations, the TListView is not 100% Delphi compatible - the ability to set OwnerData=true together with an OnData Event-Handler is missing (http://bugs.freepascal.org/view.php?id=7749) - 100 EUR for adding this to the Windows port - [http://grauonline.de/cmsimple2_6/en/?About Contact us] - UPDATE: skalogryz has agreed to start working on this.<br />
<br />
==Gtk bounties==<br />
<br />
===Fix bug - $10===<br />
<br />
http://mantis.freepascal.org/view.php?id=11906<br />
Contact http://www.wordwebsoftware.com/contact.html<br />
<br />
<br />
<br />
===Fix bugs on Gtk 2 IDE and Interface - $200===<br />
<br />
* $200.00 US to anyone or group that gets the IDE to use gtk2 and to compile programs for GTK2 without major GUI bugs - both should work. The award of the bounty will be determined by votes from the mailing list. The list will first vote if the IDE and programs work and then on which person or group should receive the bounty.<br />
<br />
* I didn't post the bounty, but [[User:Sekelsenmat|I]] would like to suggest at least the following bug fixes:<br />
**<s>Right-click bug: http://www.freepascal.org/mantis/view.php?id=7714</s><br />
**<s>SynEdit performance issue: http://www.freepascal.org/mantis/view.php?id=7717</s><br />
**<s>Main menu shortcuts: http://www.freepascal.org/mantis/view.php?id=7765</s><br />
**<s>If you minimize the IDE it only minimizes the main window, not the other ones. This is the most annoying for me: http://www.freepascal.org/mantis/view.php?id=8834</s><br />
<br />
===Fix GLScene volume rendering on Linux===<br />
<br />
* $100.00 US for anyone who can get GLScene's volume rendering working on Linux. I have adapted Jürgen Abel's Texture3D glscene demo (http://glscene.sourceforge.net/wikka/UserDemos/) to compile under either Delphi or Lazarus. My new code is here www.mricro.com/texture3d.zip. The Lazarus code (0.9.26.2, using SVN snapshot of GLScene) works fine under Windows and OSX, but when I compile it with Linux the volume is always rendered as an opaque white cube. I get the same results with Fedora10 using ATI 4850 and Ubuntu 9.04 using a NVidia GTX9800. Both computers are set up with the recommended proprietary. Contact rorden@mailbox.sc.edu<br />
<br />
==Windows CE bounties==<br />
<br />
None<br />
<br />
==Symbian bounties==<br />
<br />
===RTL for Symbian phones - $1000===<br />
Create a RTL for Symbian phones (FPC for ARM already exists).<br />
* Include a very simple GUI app (like [http://ccrdu.de/files/fpc/NoFrameworkAppDemo.lpr this one] for PocketPC).<br />
* Needed for Symbian UIQ 2 and 3 at least. <br />
* Bounty $1000, open for negotiation if Series 60/80/90 supported. <br />
* Contact ''bounty (at) ccrdu.de''.<br />
** Volunteers found and in contact!<br />
<br />
==Carbon bounties==<br />
* Make TListView "Virtual": In current Win32, Carbon and GTK implementations, the TListView is not 100% Delphi compatible - the ability to set OwnerData=true together with an OnData Event-Handler is missing (http://bugs.freepascal.org/view.php?id=7749) - 100 EUR for adding this to the Carbon port - [http://grauonline.de/cmsimple2_6/en/?About Contact us] - UPDATE: skalogryz has agreed to start working on this.<br />
<br />
==Qt bounties==<br />
<br />
* None<br />
<br />
==fpGUI bounties==<br />
<br />
None<br />
<br />
==Closed bounties==<br />
<br />
These are examples of successfully concluded bounties. <br />
<br />
===GTK2 clipping rect error===<br />
Paul Ishenin earned $50 for fixing a bug with GTK2 (Clipping rect of newly created bitmap was invalid). He then donated these funds to the Lazarus PayPal account.<br />
http://bugs.freepascal.org/view.php?id=12026<br />
<br />
===Small Fix for Linux x86_64 IDE===<br />
<br />
*Vincent earned $50 US for discovering why Linux x86_64 caused the IDE to report an Access Violation when opening the MRIcron project. This bug was also reported on Mantis (http://www.freepascal.org/mantis/view.php?id=9216).<br />
<br />
===Carbon Components===<br />
<br />
*Tombo earned $600 US for developing new Carbon components including TSpinEdit, TFloatSpinEdit, TSpeedButton<br />
<br />
*Tombo earned $50.00 US for extending [[LazRGBGraphics]] to support the QT widgetset - offered by rorden at gwm.sc.edu<br />
<br />
===Small Windows Bugs===<br />
<br />
*Jesús earned $40 US for fixing a bug where copying images with the edit/copy caused all pixels with the color shown in the bottom-left corner to appear black (http://www.sph.sc.edu/comd/rorden/mricron/bounty/)<br />
<br />
===Apache modules - €300===<br />
<br />
*Apache modules header translation and basic example. '''Awarded to [[User:Sekelsenmat|Sekelsenmat]]'''.<br />
: [[FPC and Apache Modules]]</div>Nero76https://wiki.freepascal.org/index.php?title=Bounties&diff=36396Bounties2009-07-03T17:31:05Z<p>Nero76: /* Making paszlib zipper Mac compatible */</p>
<hr />
<div>{{Bounties}}<br />
<br />
==Introduction==<br />
<br />
Need a particular feature? Set a price here, giving a short description, your name and email address. Hopefully, one or more people will contact you and you can arrange the terms of this development work.<br />
<br />
Currently, Lazarus depends on volunteers to implement everything on it. Recently Lazarus popularity has increased a lot, and many commercial projects are being developed with it. The idea behind the Bounties is '''not''' to substitute the current Mantis bug system, where work will continue normally. The idea is to provide a new development mechanism where commercial application developers can receive professional support and at the same time be able to contribute back to the community. <br />
<br />
If there is noone interrested in your bounty, it's probably because the price is too low. Also, try to keep all bounties above 50 dolars. Bellow that it usually won't be worth the time investigating the problem. Please also date your bounties. This way at some point we can weed out really old ones.<br />
<br />
Examples:<br />
<br />
* Make Lazarus hello world work on PamOS 5 Garnet. $1000 Contact myemail@domain.com<br />
* Implement a new feature. Please make a budget Contact myemail@domain.com<br />
<br />
==Multi-platform bounties==<br />
<br />
=== Making paszlib zipper Mac compatible ===<br />
The [http://svn.freepascal.org/svn/fpc/trunk/packages/paszlib/src/zipper.pp zipper] (TUnZipper.UnzipAllFiles) currently has no support for Mac symbolic links, does not set executable bits of unzipped executable files, does not support directories, and raises a CRC exception (I assume these attributes are stored in the [http://www.pkware.com/documents/casestudies/APPNOTE.TXT local file header extra field - OS X uses the [http://www.info-zip.org/ InfoZIP] implementation for zip files] ). 100 EUR for fixing this - [http://grauonline.de/cmsimple2_6/en/?About Contact us].<br />
<br />
=== FPC grammar ===<br />
Creation and support of grammar FPC in notation EBNF in meta-language GOLD Meta-Language ( http://www.devincook.com/goldparser/grammars/index.htm ). The grammar should include all opportunities of language: interfaces, comments, instructions of the compiler, all announcements, keywords, etc. >1000$. Contact xayam@yandex.ru<br />
<br />
=== Optimizations for FPC/Lazarus ===<br />
Two bounties, totally $100 for speed optimizations for FPC/Lazarus are described on my web page http://www.sph.sc.edu/comd/rorden/mricron/bounty/. Martin Friebe won one of these (for changing the code, not the compiler) and donated the $50 to the Lazarus paypal account.<br />
<br />
=== IDE Enhancements ===<br />
<br />
1.) If a path is added in the Compiler-Options of a project then add the path as a relative path instead of an absolute path. $20<br />
<br />
2.) If in the MessageView the sentence "Can't find unit XYZ" is displayed, it should be possible to doubleclick onto the<br />
word "XYZ" and this would open the "FindInFiles" dialog. $20<br />
<br />
Contact: sam_solver_AT_yahoo(dot)com<br />
<br />
=== GLScene improvements ===<br />
<br />
The GLScene Texture3D demo (Lazarus version at http://www.mricro.com/texture3d.zip) currently generates volume rendering. I want to encourage someone to add the ability to add surface shading. The picture at http://www.mricro.com/rendert.jpg shows a sample image with pure volume rendering (left), pure surface shading (middle) and a mixture. I would like to achieve this using the GPU. A compiled program with C++ source code and sample image is available at<br />
http://www.real-time-volume-graphics.org/?page_id=5<br />
To see the effect, download the 3D Texture Slicer and launch the SimpleSlicer.exe. At first the program displays a volume rendering, but press the 'm' key to switch the mode to surface shading. The book associated with this C++ code describes the implementation: Listing 5.6 for computing on-the-fly-gradients and Listing 5.1 for the Blinn-Phong shading. See Figure 5.5 for example output...<br />
http://books.google.com/books?id=lDWOu3_KGvoC&pg=PA119&lpg=PA119&dq=%22cg+function+implementing+the+blinn-phong%22&source=bl&ots=TcX6X0Kxgc&sig=XukQa8E2_nlcM7qMFZV1ujam0Z4&hl=en&ei=yFctSrjsNJ6ltgeJrN2-CA&sa=X&oi=book_result&ct=result&resnum=1<br />
Bounty will be paid to the first person who can send me GPU-accelerated shading for the Texture3D demo, or my open source MRIcroGL (http://www.mricro.com/mricrogl). Contact rorden_AT_gwm(dot)sc(dot)edu<br />
$300<br />
<br />
==Windows bounties==<br />
<br />
===Fixing bug #7182 - $100===<br />
$100 for fixing bug #7182 (http://bugs.freepascal.org/view.php?id=7182). Contact oleg_3630 at mail.ru.<br />
<br />
===Reparent Forms===<br />
Related to the bounty above, I'd like to spend another 50€ for anyone who manages to reparent a form with a specified owner (data module) to a given parent window handle (HWnd). In Delphi this is pretty simple (ParentWindow := NewParentWindowHandle), but it is not working properly in Lazarus. The form should be reparented completely (incl. accepting keyboard/mouse input and such).<br />
The code will be used for my open source project "Delphi ASIO & VST Packages" to make them usable with Lazarus (planned for version 1.5). Please contact me prior to fixing this (Christian at savioursofsoul.de<br />
<br />
<br />
===Make TListView "Virtual"===<br />
In current Win32, Carbon and GTK implementations, the TListView is not 100% Delphi compatible - the ability to set OwnerData=true together with an OnData Event-Handler is missing (http://bugs.freepascal.org/view.php?id=7749) - 100 EUR for adding this to the Windows port - [http://grauonline.de/cmsimple2_6/en/?About Contact us] - UPDATE: skalogryz has agreed to start working on this.<br />
<br />
==Gtk bounties==<br />
<br />
===Fix bug - $10===<br />
<br />
http://mantis.freepascal.org/view.php?id=11906<br />
Contact http://www.wordwebsoftware.com/contact.html<br />
<br />
<br />
<br />
===Fix bugs on Gtk 2 IDE and Interface - $200===<br />
<br />
* $200.00 US to anyone or group that gets the IDE to use gtk2 and to compile programs for GTK2 without major GUI bugs - both should work. The award of the bounty will be determined by votes from the mailing list. The list will first vote if the IDE and programs work and then on which person or group should receive the bounty.<br />
<br />
* I didn't post the bounty, but [[User:Sekelsenmat|I]] would like to suggest at least the following bug fixes:<br />
**<s>Right-click bug: http://www.freepascal.org/mantis/view.php?id=7714</s><br />
**<s>SynEdit performance issue: http://www.freepascal.org/mantis/view.php?id=7717</s><br />
**<s>Main menu shortcuts: http://www.freepascal.org/mantis/view.php?id=7765</s><br />
**<s>If you minimize the IDE it only minimizes the main window, not the other ones. This is the most annoying for me: http://www.freepascal.org/mantis/view.php?id=8834</s><br />
<br />
===Fix GLScene volume rendering on Linux===<br />
<br />
* $100.00 US for anyone who can get GLScene's volume rendering working on Linux. I have adapted Jürgen Abel's Texture3D glscene demo (http://glscene.sourceforge.net/wikka/UserDemos/) to compile under either Delphi or Lazarus. My new code is here www.mricro.com/texture3d.zip. The Lazarus code (0.9.26.2, using SVN snapshot of GLScene) works fine under Windows and OSX, but when I compile it with Linux the volume is always rendered as an opaque white cube. I get the same results with Fedora10 using ATI 4850 and Ubuntu 9.04 using a NVidia GTX9800. Both computers are set up with the recommended proprietary. Contact rorden@mailbox.sc.edu<br />
<br />
==Windows CE bounties==<br />
<br />
None<br />
<br />
==Symbian bounties==<br />
<br />
===RTL for Symbian phones - $1000===<br />
Create a RTL for Symbian phones (FPC for ARM already exists).<br />
* Include a very simple GUI app (like [http://ccrdu.de/files/fpc/NoFrameworkAppDemo.lpr this one] for PocketPC).<br />
* Needed for Symbian UIQ 2 and 3 at least. <br />
* Bounty $1000, open for negotiation if Series 60/80/90 supported. <br />
* Contact ''bounty (at) ccrdu.de''.<br />
** Volunteers found and in contact!<br />
<br />
==Carbon bounties==<br />
* Make TListView "Virtual": In current Win32, Carbon and GTK implementations, the TListView is not 100% Delphi compatible - the ability to set OwnerData=true together with an OnData Event-Handler is missing (http://bugs.freepascal.org/view.php?id=7749) - 100 EUR for adding this to the Carbon port - [http://grauonline.de/cmsimple2_6/en/?About Contact us] - UPDATE: skalogryz has agreed to start working on this.<br />
<br />
==Qt bounties==<br />
<br />
* None<br />
<br />
==fpGUI bounties==<br />
<br />
None<br />
<br />
==Closed bounties==<br />
<br />
These are examples of successfully concluded bounties. <br />
<br />
===GTK2 clipping rect error===<br />
Paul Ishenin earned $50 for fixing a bug with GTK2 (Clipping rect of newly created bitmap was invalid). He then donated these funds to the Lazarus PayPal account.<br />
http://bugs.freepascal.org/view.php?id=12026<br />
<br />
===Small Fix for Linux x86_64 IDE===<br />
<br />
*Vincent earned $50 US for discovering why Linux x86_64 caused the IDE to report an Access Violation when opening the MRIcron project. This bug was also reported on Mantis (http://www.freepascal.org/mantis/view.php?id=9216).<br />
<br />
===Carbon Components===<br />
<br />
*Tombo earned $600 US for developing new Carbon components including TSpinEdit, TFloatSpinEdit, TSpeedButton<br />
<br />
*Tombo earned $50.00 US for extending [[LazRGBGraphics]] to support the QT widgetset - offered by rorden at gwm.sc.edu<br />
<br />
===Small Windows Bugs===<br />
<br />
*Jesús earned $40 US for fixing a bug where copying images with the edit/copy caused all pixels with the color shown in the bottom-left corner to appear black (http://www.sph.sc.edu/comd/rorden/mricron/bounty/)<br />
<br />
===Apache modules - €300===<br />
<br />
*Apache modules header translation and basic example. '''Awarded to [[User:Sekelsenmat|Sekelsenmat]]'''.<br />
: [[FPC and Apache Modules]]</div>Nero76https://wiki.freepascal.org/index.php?title=Bounties&diff=36394Bounties2009-07-03T16:18:02Z<p>Nero76: /* Making paszlib zipper Mac compatible */</p>
<hr />
<div>{{Bounties}}<br />
<br />
==Introduction==<br />
<br />
Need a particular feature? Set a price here, giving a short description, your name and email address. Hopefully, one or more people will contact you and you can arrange the terms of this development work.<br />
<br />
Currently, Lazarus depends on volunteers to implement everything on it. Recently Lazarus popularity has increased a lot, and many commercial projects are being developed with it. The idea behind the Bounties is '''not''' to substitute the current Mantis bug system, where work will continue normally. The idea is to provide a new development mechanism where commercial application developers can receive professional support and at the same time be able to contribute back to the community. <br />
<br />
If there is noone interrested in your bounty, it's probably because the price is too low. Also, try to keep all bounties above 50 dolars. Bellow that it usually won't be worth the time investigating the problem. Please also date your bounties. This way at some point we can weed out really old ones.<br />
<br />
Examples:<br />
<br />
* Make Lazarus hello world work on PamOS 5 Garnet. $1000 Contact myemail@domain.com<br />
* Implement a new feature. Please make a budget Contact myemail@domain.com<br />
<br />
==Multi-platform bounties==<br />
<br />
=== Making paszlib zipper Mac compatible ===<br />
The [http://svn.freepascal.org/svn/fpc/trunk/packages/paszlib/src/zipper.pp zipper] (TUnZipper.UnzipAllFiles) currently has no support for Mac symbolic links, does not set executable bits of unzipped executable files, does not support directories, and raises a CRC exception (I assume these attributes are stored in the [http://www.pkware.com/documents/casestudies/APPNOTE.TXT local file header extra field] ). 100 EUR for fixing this - [http://grauonline.de/cmsimple2_6/en/?About Contact us].<br />
<br />
=== FPC grammar ===<br />
Creation and support of grammar FPC in notation EBNF in meta-language GOLD Meta-Language ( http://www.devincook.com/goldparser/grammars/index.htm ). The grammar should include all opportunities of language: interfaces, comments, instructions of the compiler, all announcements, keywords, etc. >1000$. Contact xayam@yandex.ru<br />
<br />
=== Optimizations for FPC/Lazarus ===<br />
Two bounties, totally $100 for speed optimizations for FPC/Lazarus are described on my web page http://www.sph.sc.edu/comd/rorden/mricron/bounty/. Martin Friebe won one of these (for changing the code, not the compiler) and donated the $50 to the Lazarus paypal account.<br />
<br />
=== IDE Enhancements ===<br />
<br />
1.) If a path is added in the Compiler-Options of a project then add the path as a relative path instead of an absolute path. $20<br />
<br />
2.) If in the MessageView the sentence "Can't find unit XYZ" is displayed, it should be possible to doubleclick onto the<br />
word "XYZ" and this would open the "FindInFiles" dialog. $20<br />
<br />
Contact: sam_solver_AT_yahoo(dot)com<br />
<br />
=== GLScene improvements ===<br />
<br />
The GLScene Texture3D demo (Lazarus version at http://www.mricro.com/texture3d.zip) currently generates volume rendering. I want to encourage someone to add the ability to add surface shading. The picture at http://www.mricro.com/rendert.jpg shows a sample image with pure volume rendering (left), pure surface shading (middle) and a mixture. I would like to achieve this using the GPU. A compiled program with C++ source code and sample image is available at<br />
http://www.real-time-volume-graphics.org/?page_id=5<br />
To see the effect, download the 3D Texture Slicer and launch the SimpleSlicer.exe. At first the program displays a volume rendering, but press the 'm' key to switch the mode to surface shading. The book associated with this C++ code describes the implementation: Listing 5.6 for computing on-the-fly-gradients and Listing 5.1 for the Blinn-Phong shading. See Figure 5.5 for example output...<br />
http://books.google.com/books?id=lDWOu3_KGvoC&pg=PA119&lpg=PA119&dq=%22cg+function+implementing+the+blinn-phong%22&source=bl&ots=TcX6X0Kxgc&sig=XukQa8E2_nlcM7qMFZV1ujam0Z4&hl=en&ei=yFctSrjsNJ6ltgeJrN2-CA&sa=X&oi=book_result&ct=result&resnum=1<br />
Bounty will be paid to the first person who can send me GPU-accelerated shading for the Texture3D demo, or my open source MRIcroGL (http://www.mricro.com/mricrogl). Contact rorden_AT_gwm(dot)sc(dot)edu<br />
$300<br />
<br />
==Windows bounties==<br />
<br />
===Fixing bug #7182 - $100===<br />
$100 for fixing bug #7182 (http://bugs.freepascal.org/view.php?id=7182). Contact oleg_3630 at mail.ru.<br />
<br />
===Make TListView "Virtual"===<br />
In current Win32, Carbon and GTK implementations, the TListView is not 100% Delphi compatible - the ability to set OwnerData=true together with an OnData Event-Handler is missing (http://bugs.freepascal.org/view.php?id=7749) - 100 EUR for adding this to the Windows port - [http://grauonline.de/cmsimple2_6/en/?About Contact us] - UPDATE: skalogryz has agreed to start working on this.<br />
<br />
==Gtk bounties==<br />
<br />
===Fix bug - $10===<br />
<br />
http://mantis.freepascal.org/view.php?id=11906<br />
Contact http://www.wordwebsoftware.com/contact.html<br />
<br />
<br />
<br />
===Fix bugs on Gtk 2 IDE and Interface - $200===<br />
<br />
* $200.00 US to anyone or group that gets the IDE to use gtk2 and to compile programs for GTK2 without major GUI bugs - both should work. The award of the bounty will be determined by votes from the mailing list. The list will first vote if the IDE and programs work and then on which person or group should receive the bounty.<br />
<br />
* I didn't post the bounty, but [[User:Sekelsenmat|I]] would like to suggest at least the following bug fixes:<br />
**<s>Right-click bug: http://www.freepascal.org/mantis/view.php?id=7714</s><br />
**<s>SynEdit performance issue: http://www.freepascal.org/mantis/view.php?id=7717</s><br />
**<s>Main menu shortcuts: http://www.freepascal.org/mantis/view.php?id=7765</s><br />
**<s>If you minimize the IDE it only minimizes the main window, not the other ones. This is the most annoying for me: http://www.freepascal.org/mantis/view.php?id=8834</s><br />
<br />
===Fix GLScene volume rendering on Linux===<br />
<br />
* $100.00 US for anyone who can get GLScene's volume rendering working on Linux. I have adapted Jürgen Abel's Texture3D glscene demo (http://glscene.sourceforge.net/wikka/UserDemos/) to compile under either Delphi or Lazarus. My new code is here www.mricro.com/texture3d.zip. The Lazarus code (0.9.26.2, using SVN snapshot of GLScene) works fine under Windows and OSX, but when I compile it with Linux the volume is always rendered as an opaque white cube. I get the same results with Fedora10 using ATI 4850 and Ubuntu 9.04 using a NVidia GTX9800. Both computers are set up with the recommended proprietary. Contact rorden@mailbox.sc.edu<br />
<br />
==Windows CE bounties==<br />
<br />
None<br />
<br />
==Symbian bounties==<br />
<br />
===RTL for Symbian phones - $1000===<br />
Create a RTL for Symbian phones (FPC for ARM already exists).<br />
* Include a very simple GUI app (like [http://ccrdu.de/files/fpc/NoFrameworkAppDemo.lpr this one] for PocketPC).<br />
* Needed for Symbian UIQ 2 and 3 at least. <br />
* Bounty $1000, open for negotiation if Series 60/80/90 supported. <br />
* Contact ''bounty (at) ccrdu.de''.<br />
** Volunteers found and in contact!<br />
<br />
==Carbon bounties==<br />
* Make TListView "Virtual": In current Win32, Carbon and GTK implementations, the TListView is not 100% Delphi compatible - the ability to set OwnerData=true together with an OnData Event-Handler is missing (http://bugs.freepascal.org/view.php?id=7749) - 100 EUR for adding this to the Carbon port - [http://grauonline.de/cmsimple2_6/en/?About Contact us] - UPDATE: skalogryz has agreed to start working on this.<br />
<br />
==Qt bounties==<br />
<br />
* None<br />
<br />
==fpGUI bounties==<br />
<br />
None<br />
<br />
==Closed bounties==<br />
<br />
These are examples of successfully concluded bounties. <br />
<br />
===GTK2 clipping rect error===<br />
Paul Ishenin earned $50 for fixing a bug with GTK2 (Clipping rect of newly created bitmap was invalid). He then donated these funds to the Lazarus PayPal account.<br />
http://bugs.freepascal.org/view.php?id=12026<br />
<br />
===Small Fix for Linux x86_64 IDE===<br />
<br />
*Vincent earned $50 US for discovering why Linux x86_64 caused the IDE to report an Access Violation when opening the MRIcron project. This bug was also reported on Mantis (http://www.freepascal.org/mantis/view.php?id=9216).<br />
<br />
===Carbon Components===<br />
<br />
*Tombo earned $600 US for developing new Carbon components including TSpinEdit, TFloatSpinEdit, TSpeedButton<br />
<br />
*Tombo earned $50.00 US for extending [[LazRGBGraphics]] to support the QT widgetset - offered by rorden at gwm.sc.edu<br />
<br />
===Small Windows Bugs===<br />
<br />
*Jesús earned $40 US for fixing a bug where copying images with the edit/copy caused all pixels with the color shown in the bottom-left corner to appear black (http://www.sph.sc.edu/comd/rorden/mricron/bounty/)<br />
<br />
===Apache modules - €300===<br />
<br />
*Apache modules header translation and basic example. '''Awarded to [[User:Sekelsenmat|Sekelsenmat]]'''.<br />
: [[FPC and Apache Modules]]</div>Nero76https://wiki.freepascal.org/index.php?title=Bounties&diff=36393Bounties2009-07-03T16:10:58Z<p>Nero76: /* Making paszlib zipper Mac compatible */</p>
<hr />
<div>{{Bounties}}<br />
<br />
==Introduction==<br />
<br />
Need a particular feature? Set a price here, giving a short description, your name and email address. Hopefully, one or more people will contact you and you can arrange the terms of this development work.<br />
<br />
Currently, Lazarus depends on volunteers to implement everything on it. Recently Lazarus popularity has increased a lot, and many commercial projects are being developed with it. The idea behind the Bounties is '''not''' to substitute the current Mantis bug system, where work will continue normally. The idea is to provide a new development mechanism where commercial application developers can receive professional support and at the same time be able to contribute back to the community. <br />
<br />
If there is noone interrested in your bounty, it's probably because the price is too low. Also, try to keep all bounties above 50 dolars. Bellow that it usually won't be worth the time investigating the problem. Please also date your bounties. This way at some point we can weed out really old ones.<br />
<br />
Examples:<br />
<br />
* Make Lazarus hello world work on PamOS 5 Garnet. $1000 Contact myemail@domain.com<br />
* Implement a new feature. Please make a budget Contact myemail@domain.com<br />
<br />
==Multi-platform bounties==<br />
<br />
=== Making paszlib zipper Mac compatible ===<br />
The [http://svn.freepascal.org/svn/fpc/trunk/packages/paszlib/src/zipper.pp zipper] (TUnZipper.UnzipAllFiles) currently has no support for Mac symbolic links, does not set executable bits of unzipped executable files, does not support directories, and raises a CRC exception. 100 EUR for fixing this - [http://grauonline.de/cmsimple2_6/en/?About Contact us].<br />
<br />
=== FPC grammar ===<br />
Creation and support of grammar FPC in notation EBNF in meta-language GOLD Meta-Language ( http://www.devincook.com/goldparser/grammars/index.htm ). The grammar should include all opportunities of language: interfaces, comments, instructions of the compiler, all announcements, keywords, etc. >1000$. Contact xayam@yandex.ru<br />
<br />
=== Optimizations for FPC/Lazarus ===<br />
Two bounties, totally $100 for speed optimizations for FPC/Lazarus are described on my web page http://www.sph.sc.edu/comd/rorden/mricron/bounty/. Martin Friebe won one of these (for changing the code, not the compiler) and donated the $50 to the Lazarus paypal account.<br />
<br />
=== IDE Enhancements ===<br />
<br />
1.) If a path is added in the Compiler-Options of a project then add the path as a relative path instead of an absolute path. $20<br />
<br />
2.) If in the MessageView the sentence "Can't find unit XYZ" is displayed, it should be possible to doubleclick onto the<br />
word "XYZ" and this would open the "FindInFiles" dialog. $20<br />
<br />
Contact: sam_solver_AT_yahoo(dot)com<br />
<br />
=== GLScene improvements ===<br />
<br />
The GLScene Texture3D demo (Lazarus version at http://www.mricro.com/texture3d.zip) currently generates volume rendering. I want to encourage someone to add the ability to add surface shading. The picture at http://www.mricro.com/rendert.jpg shows a sample image with pure volume rendering (left), pure surface shading (middle) and a mixture. I would like to achieve this using the GPU. A compiled program with C++ source code and sample image is available at<br />
http://www.real-time-volume-graphics.org/?page_id=5<br />
To see the effect, download the 3D Texture Slicer and launch the SimpleSlicer.exe. At first the program displays a volume rendering, but press the 'm' key to switch the mode to surface shading. The book associated with this C++ code describes the implementation: Listing 5.6 for computing on-the-fly-gradients and Listing 5.1 for the Blinn-Phong shading. See Figure 5.5 for example output...<br />
http://books.google.com/books?id=lDWOu3_KGvoC&pg=PA119&lpg=PA119&dq=%22cg+function+implementing+the+blinn-phong%22&source=bl&ots=TcX6X0Kxgc&sig=XukQa8E2_nlcM7qMFZV1ujam0Z4&hl=en&ei=yFctSrjsNJ6ltgeJrN2-CA&sa=X&oi=book_result&ct=result&resnum=1<br />
Bounty will be paid to the first person who can send me GPU-accelerated shading for the Texture3D demo, or my open source MRIcroGL (http://www.mricro.com/mricrogl). Contact rorden_AT_gwm(dot)sc(dot)edu<br />
$300<br />
<br />
==Windows bounties==<br />
<br />
===Fixing bug #7182 - $100===<br />
$100 for fixing bug #7182 (http://bugs.freepascal.org/view.php?id=7182). Contact oleg_3630 at mail.ru.<br />
<br />
===Make TListView "Virtual"===<br />
In current Win32, Carbon and GTK implementations, the TListView is not 100% Delphi compatible - the ability to set OwnerData=true together with an OnData Event-Handler is missing (http://bugs.freepascal.org/view.php?id=7749) - 100 EUR for adding this to the Windows port - [http://grauonline.de/cmsimple2_6/en/?About Contact us] - UPDATE: skalogryz has agreed to start working on this.<br />
<br />
==Gtk bounties==<br />
<br />
===Fix bug - $10===<br />
<br />
http://mantis.freepascal.org/view.php?id=11906<br />
Contact http://www.wordwebsoftware.com/contact.html<br />
<br />
<br />
<br />
===Fix bugs on Gtk 2 IDE and Interface - $200===<br />
<br />
* $200.00 US to anyone or group that gets the IDE to use gtk2 and to compile programs for GTK2 without major GUI bugs - both should work. The award of the bounty will be determined by votes from the mailing list. The list will first vote if the IDE and programs work and then on which person or group should receive the bounty.<br />
<br />
* I didn't post the bounty, but [[User:Sekelsenmat|I]] would like to suggest at least the following bug fixes:<br />
**<s>Right-click bug: http://www.freepascal.org/mantis/view.php?id=7714</s><br />
**<s>SynEdit performance issue: http://www.freepascal.org/mantis/view.php?id=7717</s><br />
**<s>Main menu shortcuts: http://www.freepascal.org/mantis/view.php?id=7765</s><br />
**<s>If you minimize the IDE it only minimizes the main window, not the other ones. This is the most annoying for me: http://www.freepascal.org/mantis/view.php?id=8834</s><br />
<br />
===Fix GLScene volume rendering on Linux===<br />
<br />
* $100.00 US for anyone who can get GLScene's volume rendering working on Linux. I have adapted Jürgen Abel's Texture3D glscene demo (http://glscene.sourceforge.net/wikka/UserDemos/) to compile under either Delphi or Lazarus. My new code is here www.mricro.com/texture3d.zip. The Lazarus code (0.9.26.2, using SVN snapshot of GLScene) works fine under Windows and OSX, but when I compile it with Linux the volume is always rendered as an opaque white cube. I get the same results with Fedora10 using ATI 4850 and Ubuntu 9.04 using a NVidia GTX9800. Both computers are set up with the recommended proprietary. Contact rorden@mailbox.sc.edu<br />
<br />
==Windows CE bounties==<br />
<br />
None<br />
<br />
==Symbian bounties==<br />
<br />
===RTL for Symbian phones - $1000===<br />
Create a RTL for Symbian phones (FPC for ARM already exists).<br />
* Include a very simple GUI app (like [http://ccrdu.de/files/fpc/NoFrameworkAppDemo.lpr this one] for PocketPC).<br />
* Needed for Symbian UIQ 2 and 3 at least. <br />
* Bounty $1000, open for negotiation if Series 60/80/90 supported. <br />
* Contact ''bounty (at) ccrdu.de''.<br />
** Volunteers found and in contact!<br />
<br />
==Carbon bounties==<br />
* Make TListView "Virtual": In current Win32, Carbon and GTK implementations, the TListView is not 100% Delphi compatible - the ability to set OwnerData=true together with an OnData Event-Handler is missing (http://bugs.freepascal.org/view.php?id=7749) - 100 EUR for adding this to the Carbon port - [http://grauonline.de/cmsimple2_6/en/?About Contact us] - UPDATE: skalogryz has agreed to start working on this.<br />
<br />
==Qt bounties==<br />
<br />
* None<br />
<br />
==fpGUI bounties==<br />
<br />
None<br />
<br />
==Closed bounties==<br />
<br />
These are examples of successfully concluded bounties. <br />
<br />
===GTK2 clipping rect error===<br />
Paul Ishenin earned $50 for fixing a bug with GTK2 (Clipping rect of newly created bitmap was invalid). He then donated these funds to the Lazarus PayPal account.<br />
http://bugs.freepascal.org/view.php?id=12026<br />
<br />
===Small Fix for Linux x86_64 IDE===<br />
<br />
*Vincent earned $50 US for discovering why Linux x86_64 caused the IDE to report an Access Violation when opening the MRIcron project. This bug was also reported on Mantis (http://www.freepascal.org/mantis/view.php?id=9216).<br />
<br />
===Carbon Components===<br />
<br />
*Tombo earned $600 US for developing new Carbon components including TSpinEdit, TFloatSpinEdit, TSpeedButton<br />
<br />
*Tombo earned $50.00 US for extending [[LazRGBGraphics]] to support the QT widgetset - offered by rorden at gwm.sc.edu<br />
<br />
===Small Windows Bugs===<br />
<br />
*Jesús earned $40 US for fixing a bug where copying images with the edit/copy caused all pixels with the color shown in the bottom-left corner to appear black (http://www.sph.sc.edu/comd/rorden/mricron/bounty/)<br />
<br />
===Apache modules - €300===<br />
<br />
*Apache modules header translation and basic example. '''Awarded to [[User:Sekelsenmat|Sekelsenmat]]'''.<br />
: [[FPC and Apache Modules]]</div>Nero76https://wiki.freepascal.org/index.php?title=Bounties&diff=36392Bounties2009-07-03T16:10:28Z<p>Nero76: /* Multi-platform bounties */</p>
<hr />
<div>{{Bounties}}<br />
<br />
==Introduction==<br />
<br />
Need a particular feature? Set a price here, giving a short description, your name and email address. Hopefully, one or more people will contact you and you can arrange the terms of this development work.<br />
<br />
Currently, Lazarus depends on volunteers to implement everything on it. Recently Lazarus popularity has increased a lot, and many commercial projects are being developed with it. The idea behind the Bounties is '''not''' to substitute the current Mantis bug system, where work will continue normally. The idea is to provide a new development mechanism where commercial application developers can receive professional support and at the same time be able to contribute back to the community. <br />
<br />
If there is noone interrested in your bounty, it's probably because the price is too low. Also, try to keep all bounties above 50 dolars. Bellow that it usually won't be worth the time investigating the problem. Please also date your bounties. This way at some point we can weed out really old ones.<br />
<br />
Examples:<br />
<br />
* Make Lazarus hello world work on PamOS 5 Garnet. $1000 Contact myemail@domain.com<br />
* Implement a new feature. Please make a budget Contact myemail@domain.com<br />
<br />
==Multi-platform bounties==<br />
<br />
=== Making paszlib zipper Mac compatible ===<br />
The [http://svn.freepascal.org/svn/fpc/trunk/packages/paszlib/src/zipper.pp zipper] (ZUnZipper.UnzipAllFiles) currently has no support for Mac symbolic links, does not set executable bits of unzipped executable files, does not support directories, and raises a CRC exception. 100 EUR for fixing this - [http://grauonline.de/cmsimple2_6/en/?About Contact us].<br />
<br />
=== FPC grammar ===<br />
Creation and support of grammar FPC in notation EBNF in meta-language GOLD Meta-Language ( http://www.devincook.com/goldparser/grammars/index.htm ). The grammar should include all opportunities of language: interfaces, comments, instructions of the compiler, all announcements, keywords, etc. >1000$. Contact xayam@yandex.ru<br />
<br />
=== Optimizations for FPC/Lazarus ===<br />
Two bounties, totally $100 for speed optimizations for FPC/Lazarus are described on my web page http://www.sph.sc.edu/comd/rorden/mricron/bounty/. Martin Friebe won one of these (for changing the code, not the compiler) and donated the $50 to the Lazarus paypal account.<br />
<br />
=== IDE Enhancements ===<br />
<br />
1.) If a path is added in the Compiler-Options of a project then add the path as a relative path instead of an absolute path. $20<br />
<br />
2.) If in the MessageView the sentence "Can't find unit XYZ" is displayed, it should be possible to doubleclick onto the<br />
word "XYZ" and this would open the "FindInFiles" dialog. $20<br />
<br />
Contact: sam_solver_AT_yahoo(dot)com<br />
<br />
=== GLScene improvements ===<br />
<br />
The GLScene Texture3D demo (Lazarus version at http://www.mricro.com/texture3d.zip) currently generates volume rendering. I want to encourage someone to add the ability to add surface shading. The picture at http://www.mricro.com/rendert.jpg shows a sample image with pure volume rendering (left), pure surface shading (middle) and a mixture. I would like to achieve this using the GPU. A compiled program with C++ source code and sample image is available at<br />
http://www.real-time-volume-graphics.org/?page_id=5<br />
To see the effect, download the 3D Texture Slicer and launch the SimpleSlicer.exe. At first the program displays a volume rendering, but press the 'm' key to switch the mode to surface shading. The book associated with this C++ code describes the implementation: Listing 5.6 for computing on-the-fly-gradients and Listing 5.1 for the Blinn-Phong shading. See Figure 5.5 for example output...<br />
http://books.google.com/books?id=lDWOu3_KGvoC&pg=PA119&lpg=PA119&dq=%22cg+function+implementing+the+blinn-phong%22&source=bl&ots=TcX6X0Kxgc&sig=XukQa8E2_nlcM7qMFZV1ujam0Z4&hl=en&ei=yFctSrjsNJ6ltgeJrN2-CA&sa=X&oi=book_result&ct=result&resnum=1<br />
Bounty will be paid to the first person who can send me GPU-accelerated shading for the Texture3D demo, or my open source MRIcroGL (http://www.mricro.com/mricrogl). Contact rorden_AT_gwm(dot)sc(dot)edu<br />
$300<br />
<br />
==Windows bounties==<br />
<br />
===Fixing bug #7182 - $100===<br />
$100 for fixing bug #7182 (http://bugs.freepascal.org/view.php?id=7182). Contact oleg_3630 at mail.ru.<br />
<br />
===Make TListView "Virtual"===<br />
In current Win32, Carbon and GTK implementations, the TListView is not 100% Delphi compatible - the ability to set OwnerData=true together with an OnData Event-Handler is missing (http://bugs.freepascal.org/view.php?id=7749) - 100 EUR for adding this to the Windows port - [http://grauonline.de/cmsimple2_6/en/?About Contact us] - UPDATE: skalogryz has agreed to start working on this.<br />
<br />
==Gtk bounties==<br />
<br />
===Fix bug - $10===<br />
<br />
http://mantis.freepascal.org/view.php?id=11906<br />
Contact http://www.wordwebsoftware.com/contact.html<br />
<br />
<br />
<br />
===Fix bugs on Gtk 2 IDE and Interface - $200===<br />
<br />
* $200.00 US to anyone or group that gets the IDE to use gtk2 and to compile programs for GTK2 without major GUI bugs - both should work. The award of the bounty will be determined by votes from the mailing list. The list will first vote if the IDE and programs work and then on which person or group should receive the bounty.<br />
<br />
* I didn't post the bounty, but [[User:Sekelsenmat|I]] would like to suggest at least the following bug fixes:<br />
**<s>Right-click bug: http://www.freepascal.org/mantis/view.php?id=7714</s><br />
**<s>SynEdit performance issue: http://www.freepascal.org/mantis/view.php?id=7717</s><br />
**<s>Main menu shortcuts: http://www.freepascal.org/mantis/view.php?id=7765</s><br />
**<s>If you minimize the IDE it only minimizes the main window, not the other ones. This is the most annoying for me: http://www.freepascal.org/mantis/view.php?id=8834</s><br />
<br />
===Fix GLScene volume rendering on Linux===<br />
<br />
* $100.00 US for anyone who can get GLScene's volume rendering working on Linux. I have adapted Jürgen Abel's Texture3D glscene demo (http://glscene.sourceforge.net/wikka/UserDemos/) to compile under either Delphi or Lazarus. My new code is here www.mricro.com/texture3d.zip. The Lazarus code (0.9.26.2, using SVN snapshot of GLScene) works fine under Windows and OSX, but when I compile it with Linux the volume is always rendered as an opaque white cube. I get the same results with Fedora10 using ATI 4850 and Ubuntu 9.04 using a NVidia GTX9800. Both computers are set up with the recommended proprietary. Contact rorden@mailbox.sc.edu<br />
<br />
==Windows CE bounties==<br />
<br />
None<br />
<br />
==Symbian bounties==<br />
<br />
===RTL for Symbian phones - $1000===<br />
Create a RTL for Symbian phones (FPC for ARM already exists).<br />
* Include a very simple GUI app (like [http://ccrdu.de/files/fpc/NoFrameworkAppDemo.lpr this one] for PocketPC).<br />
* Needed for Symbian UIQ 2 and 3 at least. <br />
* Bounty $1000, open for negotiation if Series 60/80/90 supported. <br />
* Contact ''bounty (at) ccrdu.de''.<br />
** Volunteers found and in contact!<br />
<br />
==Carbon bounties==<br />
* Make TListView "Virtual": In current Win32, Carbon and GTK implementations, the TListView is not 100% Delphi compatible - the ability to set OwnerData=true together with an OnData Event-Handler is missing (http://bugs.freepascal.org/view.php?id=7749) - 100 EUR for adding this to the Carbon port - [http://grauonline.de/cmsimple2_6/en/?About Contact us] - UPDATE: skalogryz has agreed to start working on this.<br />
<br />
==Qt bounties==<br />
<br />
* None<br />
<br />
==fpGUI bounties==<br />
<br />
None<br />
<br />
==Closed bounties==<br />
<br />
These are examples of successfully concluded bounties. <br />
<br />
===GTK2 clipping rect error===<br />
Paul Ishenin earned $50 for fixing a bug with GTK2 (Clipping rect of newly created bitmap was invalid). He then donated these funds to the Lazarus PayPal account.<br />
http://bugs.freepascal.org/view.php?id=12026<br />
<br />
===Small Fix for Linux x86_64 IDE===<br />
<br />
*Vincent earned $50 US for discovering why Linux x86_64 caused the IDE to report an Access Violation when opening the MRIcron project. This bug was also reported on Mantis (http://www.freepascal.org/mantis/view.php?id=9216).<br />
<br />
===Carbon Components===<br />
<br />
*Tombo earned $600 US for developing new Carbon components including TSpinEdit, TFloatSpinEdit, TSpeedButton<br />
<br />
*Tombo earned $50.00 US for extending [[LazRGBGraphics]] to support the QT widgetset - offered by rorden at gwm.sc.edu<br />
<br />
===Small Windows Bugs===<br />
<br />
*Jesús earned $40 US for fixing a bug where copying images with the edit/copy caused all pixels with the color shown in the bottom-left corner to appear black (http://www.sph.sc.edu/comd/rorden/mricron/bounty/)<br />
<br />
===Apache modules - €300===<br />
<br />
*Apache modules header translation and basic example. '''Awarded to [[User:Sekelsenmat|Sekelsenmat]]'''.<br />
: [[FPC and Apache Modules]]</div>Nero76https://wiki.freepascal.org/index.php?title=Bounties&diff=36391Bounties2009-07-03T16:03:02Z<p>Nero76: /* Multi-platform bounties */</p>
<hr />
<div>{{Bounties}}<br />
<br />
==Introduction==<br />
<br />
Need a particular feature? Set a price here, giving a short description, your name and email address. Hopefully, one or more people will contact you and you can arrange the terms of this development work.<br />
<br />
Currently, Lazarus depends on volunteers to implement everything on it. Recently Lazarus popularity has increased a lot, and many commercial projects are being developed with it. The idea behind the Bounties is '''not''' to substitute the current Mantis bug system, where work will continue normally. The idea is to provide a new development mechanism where commercial application developers can receive professional support and at the same time be able to contribute back to the community. <br />
<br />
If there is noone interrested in your bounty, it's probably because the price is too low. Also, try to keep all bounties above 50 dolars. Bellow that it usually won't be worth the time investigating the problem. Please also date your bounties. This way at some point we can weed out really old ones.<br />
<br />
Examples:<br />
<br />
* Make Lazarus hello world work on PamOS 5 Garnet. $1000 Contact myemail@domain.com<br />
* Implement a new feature. Please make a budget Contact myemail@domain.com<br />
<br />
==Multi-platform bounties==<br />
<br />
=== Making paszlib zipper Mac compatible ===<br />
The [http://svn.freepascal.org/svn/fpc/trunk/packages/paszlib/src/zipper.pp zipper] currently has no support for Mac symbolic links, does not set executable bits of unzipped executable files, does not support directories, and raises a CRC exception. 100 EUR for fixing this - [http://grauonline.de/cmsimple2_6/en/?About Contact us].<br />
<br />
=== FPC grammar ===<br />
Creation and support of grammar FPC in notation EBNF in meta-language GOLD Meta-Language ( http://www.devincook.com/goldparser/grammars/index.htm ). The grammar should include all opportunities of language: interfaces, comments, instructions of the compiler, all announcements, keywords, etc. >1000$. Contact xayam@yandex.ru<br />
<br />
=== Optimizations for FPC/Lazarus ===<br />
Two bounties, totally $100 for speed optimizations for FPC/Lazarus are described on my web page http://www.sph.sc.edu/comd/rorden/mricron/bounty/. Martin Friebe won one of these (for changing the code, not the compiler) and donated the $50 to the Lazarus paypal account.<br />
<br />
=== IDE Enhancements ===<br />
<br />
1.) If a path is added in the Compiler-Options of a project then add the path as a relative path instead of an absolute path. $20<br />
<br />
2.) If in the MessageView the sentence "Can't find unit XYZ" is displayed, it should be possible to doubleclick onto the<br />
word "XYZ" and this would open the "FindInFiles" dialog. $20<br />
<br />
Contact: sam_solver_AT_yahoo(dot)com<br />
<br />
=== GLScene improvements ===<br />
<br />
The GLScene Texture3D demo (Lazarus version at http://www.mricro.com/texture3d.zip) currently generates volume rendering. I want to encourage someone to add the ability to add surface shading. The picture at http://www.mricro.com/rendert.jpg shows a sample image with pure volume rendering (left), pure surface shading (middle) and a mixture. I would like to achieve this using the GPU. A compiled program with C++ source code and sample image is available at<br />
http://www.real-time-volume-graphics.org/?page_id=5<br />
To see the effect, download the 3D Texture Slicer and launch the SimpleSlicer.exe. At first the program displays a volume rendering, but press the 'm' key to switch the mode to surface shading. The book associated with this C++ code describes the implementation: Listing 5.6 for computing on-the-fly-gradients and Listing 5.1 for the Blinn-Phong shading. See Figure 5.5 for example output...<br />
http://books.google.com/books?id=lDWOu3_KGvoC&pg=PA119&lpg=PA119&dq=%22cg+function+implementing+the+blinn-phong%22&source=bl&ots=TcX6X0Kxgc&sig=XukQa8E2_nlcM7qMFZV1ujam0Z4&hl=en&ei=yFctSrjsNJ6ltgeJrN2-CA&sa=X&oi=book_result&ct=result&resnum=1<br />
Bounty will be paid to the first person who can send me GPU-accelerated shading for the Texture3D demo, or my open source MRIcroGL (http://www.mricro.com/mricrogl). Contact rorden_AT_gwm(dot)sc(dot)edu<br />
$300<br />
<br />
==Windows bounties==<br />
<br />
===Fixing bug #7182 - $100===<br />
$100 for fixing bug #7182 (http://bugs.freepascal.org/view.php?id=7182). Contact oleg_3630 at mail.ru.<br />
<br />
===Make TListView "Virtual"===<br />
In current Win32, Carbon and GTK implementations, the TListView is not 100% Delphi compatible - the ability to set OwnerData=true together with an OnData Event-Handler is missing (http://bugs.freepascal.org/view.php?id=7749) - 100 EUR for adding this to the Windows port - [http://grauonline.de/cmsimple2_6/en/?About Contact us] - UPDATE: skalogryz has agreed to start working on this.<br />
<br />
==Gtk bounties==<br />
<br />
===Fix bug - $10===<br />
<br />
http://mantis.freepascal.org/view.php?id=11906<br />
Contact http://www.wordwebsoftware.com/contact.html<br />
<br />
<br />
<br />
===Fix bugs on Gtk 2 IDE and Interface - $200===<br />
<br />
* $200.00 US to anyone or group that gets the IDE to use gtk2 and to compile programs for GTK2 without major GUI bugs - both should work. The award of the bounty will be determined by votes from the mailing list. The list will first vote if the IDE and programs work and then on which person or group should receive the bounty.<br />
<br />
* I didn't post the bounty, but [[User:Sekelsenmat|I]] would like to suggest at least the following bug fixes:<br />
**<s>Right-click bug: http://www.freepascal.org/mantis/view.php?id=7714</s><br />
**<s>SynEdit performance issue: http://www.freepascal.org/mantis/view.php?id=7717</s><br />
**<s>Main menu shortcuts: http://www.freepascal.org/mantis/view.php?id=7765</s><br />
**<s>If you minimize the IDE it only minimizes the main window, not the other ones. This is the most annoying for me: http://www.freepascal.org/mantis/view.php?id=8834</s><br />
<br />
===Fix GLScene volume rendering on Linux===<br />
<br />
* $100.00 US for anyone who can get GLScene's volume rendering working on Linux. I have adapted Jürgen Abel's Texture3D glscene demo (http://glscene.sourceforge.net/wikka/UserDemos/) to compile under either Delphi or Lazarus. My new code is here www.mricro.com/texture3d.zip. The Lazarus code (0.9.26.2, using SVN snapshot of GLScene) works fine under Windows and OSX, but when I compile it with Linux the volume is always rendered as an opaque white cube. I get the same results with Fedora10 using ATI 4850 and Ubuntu 9.04 using a NVidia GTX9800. Both computers are set up with the recommended proprietary. Contact rorden@mailbox.sc.edu<br />
<br />
==Windows CE bounties==<br />
<br />
None<br />
<br />
==Symbian bounties==<br />
<br />
===RTL for Symbian phones - $1000===<br />
Create a RTL for Symbian phones (FPC for ARM already exists).<br />
* Include a very simple GUI app (like [http://ccrdu.de/files/fpc/NoFrameworkAppDemo.lpr this one] for PocketPC).<br />
* Needed for Symbian UIQ 2 and 3 at least. <br />
* Bounty $1000, open for negotiation if Series 60/80/90 supported. <br />
* Contact ''bounty (at) ccrdu.de''.<br />
** Volunteers found and in contact!<br />
<br />
==Carbon bounties==<br />
* Make TListView "Virtual": In current Win32, Carbon and GTK implementations, the TListView is not 100% Delphi compatible - the ability to set OwnerData=true together with an OnData Event-Handler is missing (http://bugs.freepascal.org/view.php?id=7749) - 100 EUR for adding this to the Carbon port - [http://grauonline.de/cmsimple2_6/en/?About Contact us] - UPDATE: skalogryz has agreed to start working on this.<br />
<br />
==Qt bounties==<br />
<br />
* None<br />
<br />
==fpGUI bounties==<br />
<br />
None<br />
<br />
==Closed bounties==<br />
<br />
These are examples of successfully concluded bounties. <br />
<br />
===GTK2 clipping rect error===<br />
Paul Ishenin earned $50 for fixing a bug with GTK2 (Clipping rect of newly created bitmap was invalid). He then donated these funds to the Lazarus PayPal account.<br />
http://bugs.freepascal.org/view.php?id=12026<br />
<br />
===Small Fix for Linux x86_64 IDE===<br />
<br />
*Vincent earned $50 US for discovering why Linux x86_64 caused the IDE to report an Access Violation when opening the MRIcron project. This bug was also reported on Mantis (http://www.freepascal.org/mantis/view.php?id=9216).<br />
<br />
===Carbon Components===<br />
<br />
*Tombo earned $600 US for developing new Carbon components including TSpinEdit, TFloatSpinEdit, TSpeedButton<br />
<br />
*Tombo earned $50.00 US for extending [[LazRGBGraphics]] to support the QT widgetset - offered by rorden at gwm.sc.edu<br />
<br />
===Small Windows Bugs===<br />
<br />
*Jesús earned $40 US for fixing a bug where copying images with the edit/copy caused all pixels with the color shown in the bottom-left corner to appear black (http://www.sph.sc.edu/comd/rorden/mricron/bounty/)<br />
<br />
===Apache modules - €300===<br />
<br />
*Apache modules header translation and basic example. '''Awarded to [[User:Sekelsenmat|Sekelsenmat]]'''.<br />
: [[FPC and Apache Modules]]</div>Nero76https://wiki.freepascal.org/index.php?title=Bounties&diff=36116Bounties2009-06-17T14:43:42Z<p>Nero76: /* Make TListView "Virtual" */</p>
<hr />
<div>{{Bounties}}<br />
<br />
==Introduction==<br />
<br />
Need a particular feature? Set a price here, giving a short description, your name and email address. Hopefully, one or more people will contact you and you can arrange the terms of this development work.<br />
<br />
Currently, Lazarus depends on volunteers to implement everything on it. Recently Lazarus popularity has increased a lot, and many commercial projects are being developed with it. The idea behind the Bounties is '''not''' to substitute the current Mantis bug system, where work will continue normally. The idea is to provide a new development mechanism where commercial application developers can receive professional support and at the same time be able to contribute back to the community. <br />
<br />
If there is noone interrested in your bounty, it's probably because the price is too low. Also, try to keep all bounties above 50 dolars. Bellow that it usually won't be worth the time investigating the problem. Please also date your bounties. This way at some point we can weed out really old ones.<br />
<br />
Examples:<br />
<br />
* Make Lazarus hello world work on PamOS 5 Garnet. $1000 Contact myemail@domain.com<br />
* Implement a new feature. Please make a budget Contact myemail@domain.com<br />
<br />
==Multi-platform bounties==<br />
<br />
=== FPC grammar ===<br />
Creation and support of grammar FPC in notation EBNF in meta-language GOLD Meta-Language ( http://www.devincook.com/goldparser/grammars/index.htm ). The grammar should include all opportunities of language: interfaces, comments, instructions of the compiler, all announcements, keywords, etc. >1000$. Contact xayam@yandex.ru<br />
<br />
=== Optimizations for FPC/Lazarus ===<br />
Two bounties, totally $100 for speed optimizations for FPC/Lazarus are described on my web page http://www.sph.sc.edu/comd/rorden/mricron/bounty/. Martin Friebe won one of these (for changing the code, not the compiler) and donated the $50 to the Lazarus paypal account.<br />
<br />
=== IDE Enhancements ===<br />
<br />
1.) If a path is added in the Compiler-Options of a project then add the path as a relative path instead of an absolute path. $20<br />
<br />
2.) If in the MessageView the sentence "Can't find unit XYZ" is displayed, it should be possible to doubleclick onto the<br />
word "XYZ" and this would open the "FindInFiles" dialog. $20<br />
<br />
Contact: sam_solver_AT_yahoo(dot)com<br />
<br />
=== GLScene improvements ===<br />
<br />
The GLScene Texture3D demo (Lazarus version at http://www.mricro.com/texture3d.zip) currently generates volume rendering. I want to encourage someone to add the ability to add surface shading. The picture at http://www.mricro.com/rendert.jpg shows a sample image with pure volume rendering (left), pure surface shading (middle) and a mixture. I would like to achieve this using the GPU. A compiled program with C++ source code and sample image is available at<br />
http://www.real-time-volume-graphics.org/?page_id=5<br />
To see the effect, download the 3D Texture Slicer and launch the SimpleSlicer.exe. At first the program displays a volume rendering, but press the 'm' key to switch the mode to surface shading. The book associated with this C++ code describes the implementation: Listing 5.6 for computing on-the-fly-gradients and Listing 5.1 for the Blinn-Phong shading. See Figure 5.5 for example output...<br />
http://books.google.com/books?id=lDWOu3_KGvoC&pg=PA119&lpg=PA119&dq=%22cg+function+implementing+the+blinn-phong%22&source=bl&ots=TcX6X0Kxgc&sig=XukQa8E2_nlcM7qMFZV1ujam0Z4&hl=en&ei=yFctSrjsNJ6ltgeJrN2-CA&sa=X&oi=book_result&ct=result&resnum=1<br />
Bounty will be paid to the first person who can send me GPU-accelerated shading for the Texture3D demo, or my open source MRIcroGL (http://www.mricro.com/mricrogl). Contact rorden_AT_gwm(dot)sc(dot)edu<br />
$300<br />
<br />
==Windows bounties==<br />
<br />
===Fixing bug #7182 - $100===<br />
$100 for fixing bug #7182 (http://bugs.freepascal.org/view.php?id=7182). Contact oleg_3630 at mail.ru.<br />
<br />
===Make TListView "Virtual"===<br />
In current Win32, Carbon and GTK implementations, the TListView is not 100% Delphi compatible - the ability to set OwnerData=true together with an OnData Event-Handler is missing (http://bugs.freepascal.org/view.php?id=7749) - 100 EUR for adding this to the Windows port - [http://grauonline.de/cmsimple2_6/en/?About Contact us] - UPDATE: skalogryz has agreed to start working on this.<br />
<br />
==Gtk bounties==<br />
<br />
===Fix bug - $10===<br />
<br />
http://mantis.freepascal.org/view.php?id=11906<br />
Contact http://www.wordwebsoftware.com/contact.html<br />
<br />
<br />
<br />
===Fix bugs on Gtk 2 IDE and Interface - $200===<br />
<br />
* $200.00 US to anyone or group that gets the IDE to use gtk2 and to compile programs for GTK2 without major GUI bugs - both should work. The award of the bounty will be determined by votes from the mailing list. The list will first vote if the IDE and programs work and then on which person or group should receive the bounty.<br />
<br />
* I didn't post the bounty, but [[User:Sekelsenmat|I]] would like to suggest at least the following bug fixes:<br />
**<s>Right-click bug: http://www.freepascal.org/mantis/view.php?id=7714</s><br />
**<s>SynEdit performance issue: http://www.freepascal.org/mantis/view.php?id=7717</s><br />
**<s>Main menu shortcuts: http://www.freepascal.org/mantis/view.php?id=7765</s><br />
**<s>If you minimize the IDE it only minimizes the main window, not the other ones. This is the most annoying for me: http://www.freepascal.org/mantis/view.php?id=8834</s><br />
<br />
===Fix GLScene volume rendering on Linux===<br />
<br />
* $100.00 US for anyone who can get GLScene's volume rendering working on Linux. I have adapted Jürgen Abel's Texture3D glscene demo (http://glscene.sourceforge.net/wikka/UserDemos/) to compile under either Delphi or Lazarus. My new code is here www.mricro.com/texture3d.zip. The Lazarus code (0.9.26.2, using SVN snapshot of GLScene) works fine under Windows and OSX, but when I compile it with Linux the volume is always rendered as an opaque white cube. I get the same results with Fedora10 using ATI 4850 and Ubuntu 9.04 using a NVidia GTX9800. Both computers are set up with the recommended proprietary. Contact rorden@mailbox.sc.edu<br />
<br />
==Windows CE bounties==<br />
<br />
None<br />
<br />
==Symbian bounties==<br />
<br />
===RTL for Symbian phones - $1000===<br />
Create a RTL for Symbian phones (FPC for ARM already exists).<br />
* Include a very simple GUI app (like [http://ccrdu.de/files/fpc/NoFrameworkAppDemo.lpr this one] for PocketPC).<br />
* Needed for Symbian UIQ 2 and 3 at least. <br />
* Bounty $1000, open for negotiation if Series 60/80/90 supported. <br />
* Contact ''bounty (at) ccrdu.de''.<br />
** Volunteers found and in contact!<br />
<br />
==Carbon bounties==<br />
* Make TListView "Virtual": In current Win32, Carbon and GTK implementations, the TListView is not 100% Delphi compatible - the ability to set OwnerData=true together with an OnData Event-Handler is missing (http://bugs.freepascal.org/view.php?id=7749) - 100 EUR for adding this to the Carbon port - [http://grauonline.de/cmsimple2_6/en/?About Contact us] - UPDATE: skalogryz has agreed to start working on this.<br />
<br />
==Qt bounties==<br />
<br />
* None<br />
<br />
==fpGUI bounties==<br />
<br />
None<br />
<br />
==Closed bounties==<br />
<br />
These are examples of successfully concluded bounties. <br />
<br />
===GTK2 clipping rect error===<br />
Paul Ishenin earned $50 for fixing a bug with GTK2 (Clipping rect of newly created bitmap was invalid). He then donated these funds to the Lazarus PayPal account.<br />
http://bugs.freepascal.org/view.php?id=12026<br />
<br />
===Small Fix for Linux x86_64 IDE===<br />
<br />
*Vincent earned $50 US for discovering why Linux x86_64 caused the IDE to report an Access Violation when opening the MRIcron project. This bug was also reported on Mantis (http://www.freepascal.org/mantis/view.php?id=9216).<br />
<br />
===Carbon Components===<br />
<br />
*Tombo earned $600 US for developing new Carbon components including TSpinEdit, TFloatSpinEdit, TSpeedButton<br />
<br />
*Tombo earned $50.00 US for extending [[LazRGBGraphics]] to support the QT widgetset - offered by rorden at gwm.sc.edu<br />
<br />
===Small Windows Bugs===<br />
<br />
*Jesús earned $40 US for fixing a bug where copying images with the edit/copy caused all pixels with the color shown in the bottom-left corner to appear black (http://www.sph.sc.edu/comd/rorden/mricron/bounty/)<br />
<br />
===Apache modules - €300===<br />
<br />
*Apache modules header translation and basic example. '''Awarded to [[User:Sekelsenmat|Sekelsenmat]]'''.<br />
: [[FPC and Apache Modules]]</div>Nero76https://wiki.freepascal.org/index.php?title=Bounties&diff=36115Bounties2009-06-17T14:43:18Z<p>Nero76: /* Carbon bounties */</p>
<hr />
<div>{{Bounties}}<br />
<br />
==Introduction==<br />
<br />
Need a particular feature? Set a price here, giving a short description, your name and email address. Hopefully, one or more people will contact you and you can arrange the terms of this development work.<br />
<br />
Currently, Lazarus depends on volunteers to implement everything on it. Recently Lazarus popularity has increased a lot, and many commercial projects are being developed with it. The idea behind the Bounties is '''not''' to substitute the current Mantis bug system, where work will continue normally. The idea is to provide a new development mechanism where commercial application developers can receive professional support and at the same time be able to contribute back to the community. <br />
<br />
If there is noone interrested in your bounty, it's probably because the price is too low. Also, try to keep all bounties above 50 dolars. Bellow that it usually won't be worth the time investigating the problem. Please also date your bounties. This way at some point we can weed out really old ones.<br />
<br />
Examples:<br />
<br />
* Make Lazarus hello world work on PamOS 5 Garnet. $1000 Contact myemail@domain.com<br />
* Implement a new feature. Please make a budget Contact myemail@domain.com<br />
<br />
==Multi-platform bounties==<br />
<br />
=== FPC grammar ===<br />
Creation and support of grammar FPC in notation EBNF in meta-language GOLD Meta-Language ( http://www.devincook.com/goldparser/grammars/index.htm ). The grammar should include all opportunities of language: interfaces, comments, instructions of the compiler, all announcements, keywords, etc. >1000$. Contact xayam@yandex.ru<br />
<br />
=== Optimizations for FPC/Lazarus ===<br />
Two bounties, totally $100 for speed optimizations for FPC/Lazarus are described on my web page http://www.sph.sc.edu/comd/rorden/mricron/bounty/. Martin Friebe won one of these (for changing the code, not the compiler) and donated the $50 to the Lazarus paypal account.<br />
<br />
=== IDE Enhancements ===<br />
<br />
1.) If a path is added in the Compiler-Options of a project then add the path as a relative path instead of an absolute path. $20<br />
<br />
2.) If in the MessageView the sentence "Can't find unit XYZ" is displayed, it should be possible to doubleclick onto the<br />
word "XYZ" and this would open the "FindInFiles" dialog. $20<br />
<br />
Contact: sam_solver_AT_yahoo(dot)com<br />
<br />
=== GLScene improvements ===<br />
<br />
The GLScene Texture3D demo (Lazarus version at http://www.mricro.com/texture3d.zip) currently generates volume rendering. I want to encourage someone to add the ability to add surface shading. The picture at http://www.mricro.com/rendert.jpg shows a sample image with pure volume rendering (left), pure surface shading (middle) and a mixture. I would like to achieve this using the GPU. A compiled program with C++ source code and sample image is available at<br />
http://www.real-time-volume-graphics.org/?page_id=5<br />
To see the effect, download the 3D Texture Slicer and launch the SimpleSlicer.exe. At first the program displays a volume rendering, but press the 'm' key to switch the mode to surface shading. The book associated with this C++ code describes the implementation: Listing 5.6 for computing on-the-fly-gradients and Listing 5.1 for the Blinn-Phong shading. See Figure 5.5 for example output...<br />
http://books.google.com/books?id=lDWOu3_KGvoC&pg=PA119&lpg=PA119&dq=%22cg+function+implementing+the+blinn-phong%22&source=bl&ots=TcX6X0Kxgc&sig=XukQa8E2_nlcM7qMFZV1ujam0Z4&hl=en&ei=yFctSrjsNJ6ltgeJrN2-CA&sa=X&oi=book_result&ct=result&resnum=1<br />
Bounty will be paid to the first person who can send me GPU-accelerated shading for the Texture3D demo, or my open source MRIcroGL (http://www.mricro.com/mricrogl). Contact rorden_AT_gwm(dot)sc(dot)edu<br />
$300<br />
<br />
==Windows bounties==<br />
<br />
===Fixing bug #7182 - $100===<br />
$100 for fixing bug #7182 (http://bugs.freepascal.org/view.php?id=7182). Contact oleg_3630 at mail.ru.<br />
<br />
===Make TListView "Virtual"===<br />
In current Win32, Carbon and GTK implementations, the TListView is not 100% Delphi compatible - the ability to set OwnerData=true together with an OnData Event-Handler is missing (http://bugs.freepascal.org/view.php?id=7749) - 100 EUR for adding this to the Windows port - [http://grauonline.de/cmsimple2_6/en/?About Contact us]<br />
<br />
==Gtk bounties==<br />
<br />
===Fix bug - $10===<br />
<br />
http://mantis.freepascal.org/view.php?id=11906<br />
Contact http://www.wordwebsoftware.com/contact.html<br />
<br />
<br />
<br />
===Fix bugs on Gtk 2 IDE and Interface - $200===<br />
<br />
* $200.00 US to anyone or group that gets the IDE to use gtk2 and to compile programs for GTK2 without major GUI bugs - both should work. The award of the bounty will be determined by votes from the mailing list. The list will first vote if the IDE and programs work and then on which person or group should receive the bounty.<br />
<br />
* I didn't post the bounty, but [[User:Sekelsenmat|I]] would like to suggest at least the following bug fixes:<br />
**<s>Right-click bug: http://www.freepascal.org/mantis/view.php?id=7714</s><br />
**<s>SynEdit performance issue: http://www.freepascal.org/mantis/view.php?id=7717</s><br />
**<s>Main menu shortcuts: http://www.freepascal.org/mantis/view.php?id=7765</s><br />
**<s>If you minimize the IDE it only minimizes the main window, not the other ones. This is the most annoying for me: http://www.freepascal.org/mantis/view.php?id=8834</s><br />
<br />
===Fix GLScene volume rendering on Linux===<br />
<br />
* $100.00 US for anyone who can get GLScene's volume rendering working on Linux. I have adapted Jürgen Abel's Texture3D glscene demo (http://glscene.sourceforge.net/wikka/UserDemos/) to compile under either Delphi or Lazarus. My new code is here www.mricro.com/texture3d.zip. The Lazarus code (0.9.26.2, using SVN snapshot of GLScene) works fine under Windows and OSX, but when I compile it with Linux the volume is always rendered as an opaque white cube. I get the same results with Fedora10 using ATI 4850 and Ubuntu 9.04 using a NVidia GTX9800. Both computers are set up with the recommended proprietary. Contact rorden@mailbox.sc.edu<br />
<br />
==Windows CE bounties==<br />
<br />
None<br />
<br />
==Symbian bounties==<br />
<br />
===RTL for Symbian phones - $1000===<br />
Create a RTL for Symbian phones (FPC for ARM already exists).<br />
* Include a very simple GUI app (like [http://ccrdu.de/files/fpc/NoFrameworkAppDemo.lpr this one] for PocketPC).<br />
* Needed for Symbian UIQ 2 and 3 at least. <br />
* Bounty $1000, open for negotiation if Series 60/80/90 supported. <br />
* Contact ''bounty (at) ccrdu.de''.<br />
** Volunteers found and in contact!<br />
<br />
==Carbon bounties==<br />
* Make TListView "Virtual": In current Win32, Carbon and GTK implementations, the TListView is not 100% Delphi compatible - the ability to set OwnerData=true together with an OnData Event-Handler is missing (http://bugs.freepascal.org/view.php?id=7749) - 100 EUR for adding this to the Carbon port - [http://grauonline.de/cmsimple2_6/en/?About Contact us] - UPDATE: skalogryz has agreed to start working on this.<br />
<br />
==Qt bounties==<br />
<br />
* None<br />
<br />
==fpGUI bounties==<br />
<br />
None<br />
<br />
==Closed bounties==<br />
<br />
These are examples of successfully concluded bounties. <br />
<br />
===GTK2 clipping rect error===<br />
Paul Ishenin earned $50 for fixing a bug with GTK2 (Clipping rect of newly created bitmap was invalid). He then donated these funds to the Lazarus PayPal account.<br />
http://bugs.freepascal.org/view.php?id=12026<br />
<br />
===Small Fix for Linux x86_64 IDE===<br />
<br />
*Vincent earned $50 US for discovering why Linux x86_64 caused the IDE to report an Access Violation when opening the MRIcron project. This bug was also reported on Mantis (http://www.freepascal.org/mantis/view.php?id=9216).<br />
<br />
===Carbon Components===<br />
<br />
*Tombo earned $600 US for developing new Carbon components including TSpinEdit, TFloatSpinEdit, TSpeedButton<br />
<br />
*Tombo earned $50.00 US for extending [[LazRGBGraphics]] to support the QT widgetset - offered by rorden at gwm.sc.edu<br />
<br />
===Small Windows Bugs===<br />
<br />
*Jesús earned $40 US for fixing a bug where copying images with the edit/copy caused all pixels with the color shown in the bottom-left corner to appear black (http://www.sph.sc.edu/comd/rorden/mricron/bounty/)<br />
<br />
===Apache modules - €300===<br />
<br />
*Apache modules header translation and basic example. '''Awarded to [[User:Sekelsenmat|Sekelsenmat]]'''.<br />
: [[FPC and Apache Modules]]</div>Nero76https://wiki.freepascal.org/index.php?title=Bounties&diff=36114Bounties2009-06-17T14:04:05Z<p>Nero76: /* Windows bounties */</p>
<hr />
<div>{{Bounties}}<br />
<br />
==Introduction==<br />
<br />
Need a particular feature? Set a price here, giving a short description, your name and email address. Hopefully, one or more people will contact you and you can arrange the terms of this development work.<br />
<br />
Currently, Lazarus depends on volunteers to implement everything on it. Recently Lazarus popularity has increased a lot, and many commercial projects are being developed with it. The idea behind the Bounties is '''not''' to substitute the current Mantis bug system, where work will continue normally. The idea is to provide a new development mechanism where commercial application developers can receive professional support and at the same time be able to contribute back to the community. <br />
<br />
If there is noone interrested in your bounty, it's probably because the price is too low. Also, try to keep all bounties above 50 dolars. Bellow that it usually won't be worth the time investigating the problem. Please also date your bounties. This way at some point we can weed out really old ones.<br />
<br />
Examples:<br />
<br />
* Make Lazarus hello world work on PamOS 5 Garnet. $1000 Contact myemail@domain.com<br />
* Implement a new feature. Please make a budget Contact myemail@domain.com<br />
<br />
==Multi-platform bounties==<br />
<br />
=== FPC grammar ===<br />
Creation and support of grammar FPC in notation EBNF in meta-language GOLD Meta-Language ( http://www.devincook.com/goldparser/grammars/index.htm ). The grammar should include all opportunities of language: interfaces, comments, instructions of the compiler, all announcements, keywords, etc. >1000$. Contact xayam@yandex.ru<br />
<br />
=== Optimizations for FPC/Lazarus ===<br />
Two bounties, totally $100 for speed optimizations for FPC/Lazarus are described on my web page http://www.sph.sc.edu/comd/rorden/mricron/bounty/. Martin Friebe won one of these (for changing the code, not the compiler) and donated the $50 to the Lazarus paypal account.<br />
<br />
=== IDE Enhancements ===<br />
<br />
1.) If a path is added in the Compiler-Options of a project then add the path as a relative path instead of an absolute path. $20<br />
<br />
2.) If in the MessageView the sentence "Can't find unit XYZ" is displayed, it should be possible to doubleclick onto the<br />
word "XYZ" and this would open the "FindInFiles" dialog. $20<br />
<br />
Contact: sam_solver_AT_yahoo(dot)com<br />
<br />
=== GLScene improvements ===<br />
<br />
The GLScene Texture3D demo (Lazarus version at http://www.mricro.com/texture3d.zip) currently generates volume rendering. I want to encourage someone to add the ability to add surface shading. The picture at http://www.mricro.com/rendert.jpg shows a sample image with pure volume rendering (left), pure surface shading (middle) and a mixture. I would like to achieve this using the GPU. A compiled program with C++ source code and sample image is available at<br />
http://www.real-time-volume-graphics.org/?page_id=5<br />
To see the effect, download the 3D Texture Slicer and launch the SimpleSlicer.exe. At first the program displays a volume rendering, but press the 'm' key to switch the mode to surface shading. The book associated with this C++ code describes the implementation: Listing 5.6 for computing on-the-fly-gradients and Listing 5.1 for the Blinn-Phong shading. See Figure 5.5 for example output...<br />
http://books.google.com/books?id=lDWOu3_KGvoC&pg=PA119&lpg=PA119&dq=%22cg+function+implementing+the+blinn-phong%22&source=bl&ots=TcX6X0Kxgc&sig=XukQa8E2_nlcM7qMFZV1ujam0Z4&hl=en&ei=yFctSrjsNJ6ltgeJrN2-CA&sa=X&oi=book_result&ct=result&resnum=1<br />
Bounty will be paid to the first person who can send me GPU-accelerated shading for the Texture3D demo, or my open source MRIcroGL (http://www.mricro.com/mricrogl). Contact rorden_AT_gwm(dot)sc(dot)edu<br />
$300<br />
<br />
==Windows bounties==<br />
<br />
===Fixing bug #7182 - $100===<br />
$100 for fixing bug #7182 (http://bugs.freepascal.org/view.php?id=7182). Contact oleg_3630 at mail.ru.<br />
<br />
===Make TListView "Virtual"===<br />
In current Win32, Carbon and GTK implementations, the TListView is not 100% Delphi compatible - the ability to set OwnerData=true together with an OnData Event-Handler is missing (http://bugs.freepascal.org/view.php?id=7749) - 100 EUR for adding this to the Windows port - [http://grauonline.de/cmsimple2_6/en/?About Contact us]<br />
<br />
==Gtk bounties==<br />
<br />
===Fix bug - $10===<br />
<br />
http://mantis.freepascal.org/view.php?id=11906<br />
Contact http://www.wordwebsoftware.com/contact.html<br />
<br />
<br />
<br />
===Fix bugs on Gtk 2 IDE and Interface - $200===<br />
<br />
* $200.00 US to anyone or group that gets the IDE to use gtk2 and to compile programs for GTK2 without major GUI bugs - both should work. The award of the bounty will be determined by votes from the mailing list. The list will first vote if the IDE and programs work and then on which person or group should receive the bounty.<br />
<br />
* I didn't post the bounty, but [[User:Sekelsenmat|I]] would like to suggest at least the following bug fixes:<br />
**<s>Right-click bug: http://www.freepascal.org/mantis/view.php?id=7714</s><br />
**<s>SynEdit performance issue: http://www.freepascal.org/mantis/view.php?id=7717</s><br />
**<s>Main menu shortcuts: http://www.freepascal.org/mantis/view.php?id=7765</s><br />
**<s>If you minimize the IDE it only minimizes the main window, not the other ones. This is the most annoying for me: http://www.freepascal.org/mantis/view.php?id=8834</s><br />
<br />
===Fix GLScene volume rendering on Linux===<br />
<br />
* $100.00 US for anyone who can get GLScene's volume rendering working on Linux. I have adapted Jürgen Abel's Texture3D glscene demo (http://glscene.sourceforge.net/wikka/UserDemos/) to compile under either Delphi or Lazarus. My new code is here www.mricro.com/texture3d.zip. The Lazarus code (0.9.26.2, using SVN snapshot of GLScene) works fine under Windows and OSX, but when I compile it with Linux the volume is always rendered as an opaque white cube. I get the same results with Fedora10 using ATI 4850 and Ubuntu 9.04 using a NVidia GTX9800. Both computers are set up with the recommended proprietary. Contact rorden@mailbox.sc.edu<br />
<br />
==Windows CE bounties==<br />
<br />
None<br />
<br />
==Symbian bounties==<br />
<br />
===RTL for Symbian phones - $1000===<br />
Create a RTL for Symbian phones (FPC for ARM already exists).<br />
* Include a very simple GUI app (like [http://ccrdu.de/files/fpc/NoFrameworkAppDemo.lpr this one] for PocketPC).<br />
* Needed for Symbian UIQ 2 and 3 at least. <br />
* Bounty $1000, open for negotiation if Series 60/80/90 supported. <br />
* Contact ''bounty (at) ccrdu.de''.<br />
** Volunteers found and in contact!<br />
<br />
==Carbon bounties==<br />
* Make TListView "Virtual": In current Win32, Carbon and GTK implementations, the TListView is not 100% Delphi compatible - the ability to set OwnerData=true together with an OnData Event-Handler is missing (http://bugs.freepascal.org/view.php?id=7749) - 100 EUR for adding this to the Carbon port - [http://grauonline.de/cmsimple2_6/en/?About Contact us]<br />
<br />
==Qt bounties==<br />
<br />
* None<br />
<br />
==fpGUI bounties==<br />
<br />
None<br />
<br />
==Closed bounties==<br />
<br />
These are examples of successfully concluded bounties. <br />
<br />
===GTK2 clipping rect error===<br />
Paul Ishenin earned $50 for fixing a bug with GTK2 (Clipping rect of newly created bitmap was invalid). He then donated these funds to the Lazarus PayPal account.<br />
http://bugs.freepascal.org/view.php?id=12026<br />
<br />
===Small Fix for Linux x86_64 IDE===<br />
<br />
*Vincent earned $50 US for discovering why Linux x86_64 caused the IDE to report an Access Violation when opening the MRIcron project. This bug was also reported on Mantis (http://www.freepascal.org/mantis/view.php?id=9216).<br />
<br />
===Carbon Components===<br />
<br />
*Tombo earned $600 US for developing new Carbon components including TSpinEdit, TFloatSpinEdit, TSpeedButton<br />
<br />
*Tombo earned $50.00 US for extending [[LazRGBGraphics]] to support the QT widgetset - offered by rorden at gwm.sc.edu<br />
<br />
===Small Windows Bugs===<br />
<br />
*Jesús earned $40 US for fixing a bug where copying images with the edit/copy caused all pixels with the color shown in the bottom-left corner to appear black (http://www.sph.sc.edu/comd/rorden/mricron/bounty/)<br />
<br />
===Apache modules - €300===<br />
<br />
*Apache modules header translation and basic example. '''Awarded to [[User:Sekelsenmat|Sekelsenmat]]'''.<br />
: [[FPC and Apache Modules]]</div>Nero76https://wiki.freepascal.org/index.php?title=Bounties&diff=36113Bounties2009-06-17T14:02:34Z<p>Nero76: /* Carbon bounties */</p>
<hr />
<div>{{Bounties}}<br />
<br />
==Introduction==<br />
<br />
Need a particular feature? Set a price here, giving a short description, your name and email address. Hopefully, one or more people will contact you and you can arrange the terms of this development work.<br />
<br />
Currently, Lazarus depends on volunteers to implement everything on it. Recently Lazarus popularity has increased a lot, and many commercial projects are being developed with it. The idea behind the Bounties is '''not''' to substitute the current Mantis bug system, where work will continue normally. The idea is to provide a new development mechanism where commercial application developers can receive professional support and at the same time be able to contribute back to the community. <br />
<br />
If there is noone interrested in your bounty, it's probably because the price is too low. Also, try to keep all bounties above 50 dolars. Bellow that it usually won't be worth the time investigating the problem. Please also date your bounties. This way at some point we can weed out really old ones.<br />
<br />
Examples:<br />
<br />
* Make Lazarus hello world work on PamOS 5 Garnet. $1000 Contact myemail@domain.com<br />
* Implement a new feature. Please make a budget Contact myemail@domain.com<br />
<br />
==Multi-platform bounties==<br />
<br />
=== FPC grammar ===<br />
Creation and support of grammar FPC in notation EBNF in meta-language GOLD Meta-Language ( http://www.devincook.com/goldparser/grammars/index.htm ). The grammar should include all opportunities of language: interfaces, comments, instructions of the compiler, all announcements, keywords, etc. >1000$. Contact xayam@yandex.ru<br />
<br />
=== Optimizations for FPC/Lazarus ===<br />
Two bounties, totally $100 for speed optimizations for FPC/Lazarus are described on my web page http://www.sph.sc.edu/comd/rorden/mricron/bounty/. Martin Friebe won one of these (for changing the code, not the compiler) and donated the $50 to the Lazarus paypal account.<br />
<br />
=== IDE Enhancements ===<br />
<br />
1.) If a path is added in the Compiler-Options of a project then add the path as a relative path instead of an absolute path. $20<br />
<br />
2.) If in the MessageView the sentence "Can't find unit XYZ" is displayed, it should be possible to doubleclick onto the<br />
word "XYZ" and this would open the "FindInFiles" dialog. $20<br />
<br />
Contact: sam_solver_AT_yahoo(dot)com<br />
<br />
=== GLScene improvements ===<br />
<br />
The GLScene Texture3D demo (Lazarus version at http://www.mricro.com/texture3d.zip) currently generates volume rendering. I want to encourage someone to add the ability to add surface shading. The picture at http://www.mricro.com/rendert.jpg shows a sample image with pure volume rendering (left), pure surface shading (middle) and a mixture. I would like to achieve this using the GPU. A compiled program with C++ source code and sample image is available at<br />
http://www.real-time-volume-graphics.org/?page_id=5<br />
To see the effect, download the 3D Texture Slicer and launch the SimpleSlicer.exe. At first the program displays a volume rendering, but press the 'm' key to switch the mode to surface shading. The book associated with this C++ code describes the implementation: Listing 5.6 for computing on-the-fly-gradients and Listing 5.1 for the Blinn-Phong shading. See Figure 5.5 for example output...<br />
http://books.google.com/books?id=lDWOu3_KGvoC&pg=PA119&lpg=PA119&dq=%22cg+function+implementing+the+blinn-phong%22&source=bl&ots=TcX6X0Kxgc&sig=XukQa8E2_nlcM7qMFZV1ujam0Z4&hl=en&ei=yFctSrjsNJ6ltgeJrN2-CA&sa=X&oi=book_result&ct=result&resnum=1<br />
Bounty will be paid to the first person who can send me GPU-accelerated shading for the Texture3D demo, or my open source MRIcroGL (http://www.mricro.com/mricrogl). Contact rorden_AT_gwm(dot)sc(dot)edu<br />
$300<br />
<br />
==Windows bounties==<br />
<br />
===Fixing bug #7182 - $100===<br />
$100 for fixing bug #7182 (http://bugs.freepascal.org/view.php?id=7182). Contact oleg_3630 at mail.ru.<br />
<br />
==Gtk bounties==<br />
<br />
===Fix bug - $10===<br />
<br />
http://mantis.freepascal.org/view.php?id=11906<br />
Contact http://www.wordwebsoftware.com/contact.html<br />
<br />
<br />
<br />
===Fix bugs on Gtk 2 IDE and Interface - $200===<br />
<br />
* $200.00 US to anyone or group that gets the IDE to use gtk2 and to compile programs for GTK2 without major GUI bugs - both should work. The award of the bounty will be determined by votes from the mailing list. The list will first vote if the IDE and programs work and then on which person or group should receive the bounty.<br />
<br />
* I didn't post the bounty, but [[User:Sekelsenmat|I]] would like to suggest at least the following bug fixes:<br />
**<s>Right-click bug: http://www.freepascal.org/mantis/view.php?id=7714</s><br />
**<s>SynEdit performance issue: http://www.freepascal.org/mantis/view.php?id=7717</s><br />
**<s>Main menu shortcuts: http://www.freepascal.org/mantis/view.php?id=7765</s><br />
**<s>If you minimize the IDE it only minimizes the main window, not the other ones. This is the most annoying for me: http://www.freepascal.org/mantis/view.php?id=8834</s><br />
<br />
===Fix GLScene volume rendering on Linux===<br />
<br />
* $100.00 US for anyone who can get GLScene's volume rendering working on Linux. I have adapted Jürgen Abel's Texture3D glscene demo (http://glscene.sourceforge.net/wikka/UserDemos/) to compile under either Delphi or Lazarus. My new code is here www.mricro.com/texture3d.zip. The Lazarus code (0.9.26.2, using SVN snapshot of GLScene) works fine under Windows and OSX, but when I compile it with Linux the volume is always rendered as an opaque white cube. I get the same results with Fedora10 using ATI 4850 and Ubuntu 9.04 using a NVidia GTX9800. Both computers are set up with the recommended proprietary. Contact rorden@mailbox.sc.edu<br />
<br />
==Windows CE bounties==<br />
<br />
None<br />
<br />
==Symbian bounties==<br />
<br />
===RTL for Symbian phones - $1000===<br />
Create a RTL for Symbian phones (FPC for ARM already exists).<br />
* Include a very simple GUI app (like [http://ccrdu.de/files/fpc/NoFrameworkAppDemo.lpr this one] for PocketPC).<br />
* Needed for Symbian UIQ 2 and 3 at least. <br />
* Bounty $1000, open for negotiation if Series 60/80/90 supported. <br />
* Contact ''bounty (at) ccrdu.de''.<br />
** Volunteers found and in contact!<br />
<br />
==Carbon bounties==<br />
* Make TListView "Virtual": In current Win32, Carbon and GTK implementations, the TListView is not 100% Delphi compatible - the ability to set OwnerData=true together with an OnData Event-Handler is missing (http://bugs.freepascal.org/view.php?id=7749) - 100 EUR for adding this to the Carbon port - [http://grauonline.de/cmsimple2_6/en/?About Contact us]<br />
<br />
==Qt bounties==<br />
<br />
* None<br />
<br />
==fpGUI bounties==<br />
<br />
None<br />
<br />
==Closed bounties==<br />
<br />
These are examples of successfully concluded bounties. <br />
<br />
===GTK2 clipping rect error===<br />
Paul Ishenin earned $50 for fixing a bug with GTK2 (Clipping rect of newly created bitmap was invalid). He then donated these funds to the Lazarus PayPal account.<br />
http://bugs.freepascal.org/view.php?id=12026<br />
<br />
===Small Fix for Linux x86_64 IDE===<br />
<br />
*Vincent earned $50 US for discovering why Linux x86_64 caused the IDE to report an Access Violation when opening the MRIcron project. This bug was also reported on Mantis (http://www.freepascal.org/mantis/view.php?id=9216).<br />
<br />
===Carbon Components===<br />
<br />
*Tombo earned $600 US for developing new Carbon components including TSpinEdit, TFloatSpinEdit, TSpeedButton<br />
<br />
*Tombo earned $50.00 US for extending [[LazRGBGraphics]] to support the QT widgetset - offered by rorden at gwm.sc.edu<br />
<br />
===Small Windows Bugs===<br />
<br />
*Jesús earned $40 US for fixing a bug where copying images with the edit/copy caused all pixels with the color shown in the bottom-left corner to appear black (http://www.sph.sc.edu/comd/rorden/mricron/bounty/)<br />
<br />
===Apache modules - €300===<br />
<br />
*Apache modules header translation and basic example. '''Awarded to [[User:Sekelsenmat|Sekelsenmat]]'''.<br />
: [[FPC and Apache Modules]]</div>Nero76