Re: [lazarus] Compile fails on project with long pathname (MacOS X)
Tom Verhoeff wrote: I recently upgraded to 0.9.14 and started a project, whose code is in a deeply nested directory tree with fairly long directory names, where one of the directory names contains a space. When compiling from the ide, this fails at the assembler. It seems to report a cut off path (the part with the space is included), though this could only be in the message printed (and not in the argument that it received). Does anyone have an idea what is the problem here? Yes, I've had all sorts of path chopping issues. Especially it occurs if you specify the -o option to the compiler along with a -k option with some long paths involved. The FPC compiler uses almost all shortstrings to pass options to the linker. The problem does not occur until a total number of options add up to 255 - but it isn't as simple as just counting all your options and adding them up to 255 - rather some options are passed to the linker (such as -o) while others are sent other places, to for example the search functions that verify directory/file location of units in the uses clause. Some limits are not even 255 but rather 50. If you read the fpc-devel list you will see what I mean when I say that I've had the same issues. It generally occurs on computers that have several hundred projects, because when you have this many projects you do use long paths - while most people out there don't have hundreds/thousands of projects on their drive so the bug never pops up - or they just learn to live with it - I had these issues since day one when I was a newbie to FPC and I was blaming it on myself since I thought it was a newbie issue of my own. As more and more projects have been placed on my hard drive, the more the bug has popped up over and over again. Back when my hard drive was not as loaded, it didn't occur much, but did occur. It will require a lot of changes to the FPC source code since FPC source is heavily reliant on shortstrings, and the compiler will be slower. All testing for this bug should be done at the command line and the bug should be reported to FPC section rather than Lazarus section. _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
Re: [lazarus] Request for PR noise !
I'm a complete atheist and still share much of you POV because Brazil is largely (and my family is) Catholic (so I have some idea of what these people IMHO-stupid people think. Unfortunately, I don't know why, intelligent + phylosophical + logicist atheist...) Belief is a wise wager. Granted that faith cannot be proved, what harm will come to you if you gamble on its truth and it proves false? If you gain, you gain all; if you lose, you lose nothing. Wager, then, without hesitation, that He exists. -- Blaise Pascal Being atheist means you beleive that he does not exist. This, in my opinion, is just as bad as beleiving he does exist. Becuase you are saying you believe he doesn't exist. But you don't know. Therefore, most atheists are labelling themselves in the wrong category - IMO, all atheists should convert to agnostic.. which is much more intelligent of a decision, IMO. _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
Re: [lazarus] Request for PR noise !
On Sat, 2006-05-20 at 14:37 +0300, Al Boldi wrote: Feel free to create OpenRAD based on FPC, gcc and lazarus ;) Lazarus isn't a language, it's a RAD. And a good one too! But it would be sad to see this effort being expended towards one language only. Lazarus is too good, not to be leveraged. Think about it! You have to turn it around: Lazarus could have become so good because it's written in Object Pascal. Pascal which offers a good basic, structured language which makes it easy to implement an advanced, complex system with a group of programmers in a relative short time. Although readability is boosted I still find it takes years/months to make a complex project that does anything worthwhile in Pascal - or any language. And many C++ programmers are genius types - who could care less if the language is slightly more messy, because they have enough genius in them to understand it anyway. So it ends up being that a C++ program is just as easy to maintain if you are genius. I'm not a genius and don't want to exercise a brain part that I don't have to - so I use a more readable language. _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
Re: [lazarus] Request for PR noise !
On 5/20/06, Joost van der Sluis [EMAIL PROTECTED] wrote: That programmers in other languages don't succeed in writing their own RAD, doesn't mean that we have to provide them with one, imho. But if someone else want to do that... be my guest. I'm not gonna do it. But then, people who like working with Lazarus might be forced to use other languages by those who pay us. This way we can make those people and also also us happy. Of course I don't think those who don't pass by this situation should be forced to help implementing it. The biggest problem is that I cannot see the advantage of adding c++ for Lazarus for example, without allowing it to access LCL. This would make it just another text editor, and there is plenty already. Maybe a C++_to_pascal converter could help in this situation. The problem with mixing language is that you spend tons of time making workarounds for the difference between the languages. One or two similar languages like C and Pascal is not so bad but when you try and integrate a dynamically typed language and a strong typed language, and a few static and a few weak languages your IDE becomes one giant workaround instead of a solid dedicated product. For example, if the IDE was to handle PHP - would variables be declared in a strong typing fashion so that the IDE could parse the file and find the var declaration? No. There is no var declaration in PHP. So what good is the find declaration code tools item in the menu. So you'd have to remove that feature out of the IDE just for PHP - hence taking time out to make the IDE a workaround, instead of taking the time to do other things. And that bloats it up, with lots of workaround code. Unless you use a plug-in system which may be very very complicated and very well thought out - and even then, you still have to explain to the users how to download which plug-in for which language - instead of just shipping them one easy to install IDE dedicated to Pascal. _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
Re: [lazarus] Request for PR noise !
Being atheist means you beleive that he does not exist. Certainly not. Not seeing something where there is nothing and where it is not necessary that there is something is not a belief, it is a knowledge. I don't not to believe that there is a Rammstein CD in orbit around Pluto, I do know there is none (but don't ask me to prove it, I cannot). Does a dog have knowledge about colors? Can a dog imagine red, orange, blue, green, purple, violet, etc? A dog can only see certain shades - gray, some blue. So if you asked a dog whether he believed red/orange/yellow/purple existed, the dog would tell you that you are full of shit. Well, an agnostic dog, on the other hand would say I don't know - I'm not sure - maybe you are right, maybe you are wrong. Therefore you are agnostic, not atheist. Agnostic is not knowing, and let me tell you 100 percent of the world does not know anything about how or where the world was created, and how or where the thing that created that world was created, or whether it was a thing or not - or some figment of some thing's imagination. 100 percent of the world does not know anything - we are all agnostic. None of us are atheists, and none of us are religious. We all do not know. Otherwise, there wouldn't be so many different religions out there - if we KNEW what existed we would only have one religion. If KNEW that nothing existed, we would all be atheists. This is no the case. We know NOTHING, we are all agnostic. YOU don't know there are more colors out there than the ones we can see. If dogs cannot see certain colors, we ourselves may not be able to see certain colors. You do not know. We may or may not be the only being out there that can see as many colors as we can. But you do not know. Believing that we are the only being out there that can see all colors is like being atheist - you think you know something, but you are just as bad as those who believe in aliens or those who believe in god. You are just as naive. The reality is, you do not know, and they do not know - you are ALL agnostic. _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
Re: [lazarus] contemplating future of Lazarus in context of Mono and dotGNU
I come with a different point of view to Lazarus. I want to build projects that first feed my family and second please my sense of right. All of us who think this way should start a group/joint endeavor together because I am voting for the same thing, and I'm sick of all the folks out there who have real jobs and consider programming just a game that you play on the side. Or worse, the folks who are in school and participate in open source projects when they are at school, but then as soon as they get out of school and get a real job they ditch the open source project that seemed so right to them in school but so wrong to them once they found out that family requires a real job and a real living. Or the folks who work on an open source project but then Microsoft contacts them and immediately they go and work for Microsoft (hello, Gentoo founder - sorry to insult you). So, if anyone feels the same way, or at least you have something in common with JohnF and my thinking, we should joint venture, no? If this is offtopic, respond to JohnF and me privately maybe, and we could get something on the go. _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
Re: [lazarus] Request for PR noise !
Thanks for enlightening us. But this whole discussion has really nothing to do with lazarus/fpc/programming in any sense. I brought in a quote from Blaise Pascal for the basis of my posts. And you should familiarize yourself with Blaise Pascal as some of his quotes are very related to programming, if you look at them from a certain angle. Blaise Pascal has everything to do with the Pascal programming language since the language was named after him, didn't you know. And Wirth himself must have at least agreed with some of Blaise's points, otherwise he wouldn't have picked him for the language name. I wouldn't have brought the quote in, if it was from someone else other than Mr. Pascal. _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
Re: [lazarus] OT - Request for PR noise !
Upon your arrival for the final judgement you find yourself standing in front of Ra, the egiptian god. And he is pretty pissed that you were worshiping a false god. =) Wouldn´t that be funny?? Another quote from Blaise explains the answer to this.. I think Blaise says that no religions are wrong, they are all right. Personally, since I don't know - I don't know. And I stop there. I just don't know. So no point in choosing a specific religion if you do not know, and no point in choosing atheism if you do not know.. it just makes the most sense! Being agnostic still allows you to discover and look for reasons WHY and WHAT, it just allows you to not make a fool of yourself - because when someone asks you, you just say you don't know. Anyone intelligent can figure out that saying you DON'T know, when you don't know, makes the most sense. What's really funny is a lot of famous programmers claim to be atheist. (again, on topic). If you research Linus/RMS/And others.. But truly, I think they are agnostic - even Charles Darwin himself was calling himself an Atheist but then he changed later on in life - to agnostic. Some atheists don't discover that they are actually agnostic until further on in life - and this is okay. That's basically what I was saying - it is OKAY to not know, and it is OKAY to change your beliefs at some point in time too - for example I was under the belief that := was a stupid thing to use in a language since = is shorter when I first tried Pascal but my beliefs changed when I learned the reason why to use := and now = looks dumb when I see PHP or C code since it is not math-like at all. (again, ontopic - for the sensitive folks). If god exists, why doesn´t the other gods exist? What makes this god better or more probable? If you ask me, the most unprobably thing in the universe is life. How come out of Carbon, Hidrogen, Nitrogen and Oxigen, the essence of life be formed? Those are just 4 elements, unliving things by definition. Life comes from things not alive? Or is there soul? I beliave that we will have one of the most important answers we may have when we have a computer powerful enougth to simulate the brain. If it succeds and artifical life can be created, then most likely the soul does not exist. And we are just aglomerates of minerals. Computers can do lots of things that humans can't though - which is magical. Even cars seem like magic. Look at horses and compare them to cars. There are advantages to having things that are not like humans - you can't command a computer to do work - that would be slavery. But you can command a computer to do work and it won't feel any pain. So in some sense, we don't need to invent a human, we need to invent things that don't have feelings, so we can get stuff done with less human pain. We can only hack with existing matter so far, and we can't create the matter. So even if we make an artifical intelligence based robot, we still are only hacking with existing nature matter, and not actually creating anything. (and to stay on topic, for the sensitive folks, maybe the robot was powered by a Pascal program embedded into it's chips - although the lisp folks are probably thinking lisp, since Pascal is structured and mean to be commanded, while lisp is loose and meant to be expanded). _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
Re: [lazarus] Lazarus Help System Requirements
Can anybody explain, why googling with: site:lazarus-ccr.sourceforge.net dynamicarray only gives two hits, but not http://lazarus-ccr.sourceforge.net/docs/lcl/dynamicarray/index.html It is a pity, that the most up to date docs are not completely indexed. I was just thinking along the same lines. Google is so busy, it takes a long while to keep indexes up-to-date against constant changing sites. This is going to be the only drawback of using Google to search docs. That's the catch22 - I deal with this problem every month with websites. Google indexes 200,000-500,000 pages one month and then next month it drops down to 1,000 or even 200. It's a roller coaster just like the stock market. This would be where having your own help doc indexing system would help. But to put less load on the freepascal/lazarus servers it is obviously wise to have a client side program indexing system like chm/local db/whatever. Still, more important than indexing the docs is writing them - if they weren't written, there wouldn't be anything to index - and Michael and others have done excellent job there. How about google desktop search? LOL I haven't tried that one.. place google desktop search on the FPC docs directory and see what happens? _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
Re: [lazarus] Lazarus Help System Requirements
As for the Websnap thing, I did not tought about it; but I once imagined that as we have support for gtk / qt / win32... we could have a layer for 'psp' so as to generate forms in web format. (And push it a little bit more and you can have a full AJAX application compiled with lazarus. But this kind of stuff is no more freepascal.) So a CGI that generate a perfect replresentation of a screen designed in lazarus could be done all from lazarus itself. Add the same features for reports,etc. That would be awesome. You switch from gtk destination to psp destination and the same project that was a stand-alone app becomes a cgi that can generate itself its visual representation and call back itself to process the commands. (That would require some javascrip... ajax crap). With CSS absolute pixel positioning (rather than relative positioning) to have things land on the screen at your desired destination using X/Y coordinates.. But as soon as you get into x/y coordinate positioning it means your app might be better off as a real thin client application anyway. But Ajax means no shipping of the application. At least it means that right now - in the future ajax might be able to read special config files in the form of cookies, or something - to me it seems sort of like reinventing thin clients.. but are there other advantages I'm missing of ajax, other than you don't have to ship it like you do a thin client (and you don't have to compile it). A good example of a thin client that works well, but is not ajax - AVG antivirus for windows. It is a real software application that connects to the internet every day to upgrade your virus definition. And it works perfectly. There was no need for AVG to become an ajax app because being a real app worked too - AVG could be an ajax app - you could log on to the AVG website and have it check your PC for viruses - but if it works well as a non-ajax app why not just ship it as a non-web program. Well I guess it means that AVG is stuck shipping their app, and that they could have used ajax if they didn't want to ship it - or they could have used VBScript based website. But is shipping really that hard of an effort? Shipping an app is a hard effort, but is it worth the effort? I think in many cases it's worth shipping an app - maybe in the cases where it is not worth shipping an app ajax is the solution? Well one advantage of AJAX is that no shipping or installing of the program is needed - but eventually if Ajax becomes complex enough that it can store data on your PC, such as config files, skins, etc, then I think it is essentially reinventing the thin client.. I mean let's say it uses cookies to store your skin or your configuration for the ajax app - well isn't this just a config file? So it really is just shipping a config file onto your computer in the form of a cookie - but if it gets complex enough that the cookie is to simplified and it needs to store other Lots of the work I do on the web actually requires my web pages to have tons of text on the pages so that my sites become popular on the search engines - so the whole AJAX thing is kind of wishy washy to me for those things.. but it is not always just about getting your thousands of text pages on the engines.. But I mean it also begs the question - if you are going to make an AJAX app why not just compile a lazarus application and send it to your users - have TCP/IP in the program connect to your web server, compile your lazarus app on all platforms and ship the EXE/ELF/BSDexe. I guess AJAX requires no shipping of the application, and no installation of the application. Right now my main focus with web development is building websites with 200,000-500,000 pages of content - or at least thousands of pages of content - so ajax doesn't help there much, but it could be useful for things like banking websites where people need to see a proper graph of their investments, and proper sessions on the website without sending an HTTP request for each little thing they do on the site (the whole point of ajax) Any-way this might not be the good place to talk about that. And this 'vision' is only mine. As far as I can see it, psp is actually a nice technology kit to build cgi apps for the web. You can join the mailing list if you like.. http://psp.furtopia.org/cgi-bin/psp/maillist.psp We have done some work with CSS/HTML to get direct positioning available on the screen - we try to use CSS whereever possibel and only use Javascript where absolutely needed Actually, Tony on our team has made a web application that is sort of like Ajax - it uses javascript and CSS/HTMl and is an mp3 player that works right inside the web browser, like a real software application works. In this case, Tony may have invented Ajax himself, but he just really wasn't calling it Ajax. I'm sort of a mix myself - I can see Ajax advantages but I also like building huge 200,000 page websites with
Re: [lazarus] Lazarus Help System Requirements
one. For the moment I'm sticking on my SQLite+html idea. The html format Ça va. What about a SQLLite database that stores the help info, and a php script that calls that database... No PHP required really. A CGI program written in Pascal that calls some sort of database, and a desktop application that can call that database too. This keeps only one codebase needed for the entire help system - the same database is used for both the web docs and the desktop docs - just that the desktop doc is using an embedded database while the web application may use a real full fledged version of the database. But most websites will only need to use an embedded database because 99 percent of all Pascal applications are not going to have high traffic websites that require a database that can do complex queries fast. Especially on help documents which people will rarely be checking on the website, since they have a local copy - the online docs are mainly for promotional purposes to get a bunch of keyword heavy pages out on the net promoting your software. The reason I currently use Google to search for freepascal documentation on the RTL instead of using my local copy of my help documents, is because Google itself is my database that powers the search of the freepascal documentation. Some of you just use grep maybe - I laugh at those people. But if I had a proper local database there would be no need to search google. Whether the database is a CHM database or an embedded DBF or SQL database doesn't matter - the disadvantage of CHM is simply that I can't port CHM to the web database in one shot - since a CHM database won't work on a website. And for those special cases where you have a Windows CE computer, that can't run an embedded database? Think again, most likely someone has already ported the database to Windows CE. CHM format was never intended to work on Windows CE so CHM be an external dependency, as you'd have to have the user download an external CHM reader for Windows CE. _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
Re: [lazarus] Re: Lazarus File bigger then Delphi File?
What would help is really powerful smartlinking (being able to rip unused methods inside a unit for example). Theres no such thing, that is what smartlinking is - KOL is designed around this but many people hate KOL because it uses old Objects and requires a bit of thinking - and most people could care less about Exe size - I happen to care a bit, because the first impression of the user is always important - I'm not anal about using KOL for every app, but I use it lots.. it's fun to have a challenge to write a KOL app instead of it being so easy too - but I'm crazy - only crazy people use KOL. Boguslaw is crazy too and so is Thaddy. Don't use KOL unless you are crazy and like being crazy :-) _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
Re: [lazarus] Lazarus Help System Requirements
On 5/17/06, L505 [EMAIL PROTECTED] wrote: The reason I currently use Google to search for freepascal documentation on the RTL instead of using my local copy of my help documents, is because Google itself is my database that powers the search of the freepascal documentation. Some of you just Just for interest sake, how do you use Google? Using the site: command in the search box...? eg: site:freepascal.org GetPropValue Exactly: site:freepascal.org docs The keyword docs helps filter out mailing list stuff and other pages.. if you just want to target in on the Documentatoin just type in Docs keyword in addition to the site. So: site:freepascal.org docs getpropvalue instead of just site:freepascal.org getpropvalue And don't always use this: site:www.freepascal.org Skip the www prefix, incase you find something in community.freepascal, etc. _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
Re: [lazarus] Lazarus Help System Requirements
2006/5/17, L505 [EMAIL PROTECTED]: one. For the moment I'm sticking on my SQLite+html idea. The html format Ça va. What about a SQLLite database that stores the help info, and a php script that calls that database... No PHP required really. A CGI program written in Pascal that calls some sort of We should od it in PSP (http://www.psp.furtopia.org/cgi-bin/psp/index.psp) :) I think it would ba a shame for us not to do a pascal cgi for such a job. ;) Thanks for recommending the site. I actually recently upgraded the site to have a new look. Micha once told me off for table designed websites because they Sux0r. Trustmaster originally threw up the PSP website many years ago which used Tables. I'm converting the PSP website to pure Div based site soon. It uses Div's now but still old table code exists :-) If Micha is listening I wanted to thank him now for getting me out of my stubborn table design thinking I used to be stuck in, because all sites I've created with Div's are working out nicely. Our psp devel mailing list has grown more in 2006 already than expected. But be warned that PSP is not a perfect copy of Websnap/intraweb. PSP is definitely not copying Borland because we found that Websnap architecture was too complex. Although, many HTML helpers and visual tools are being worked on, and we are working on more plug-ins for lazarus and MSEGUI/MSEIDE and other text editors to make web development more organized and easier. _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
Re: [lazarus] Commande syntax error (makefile -- can't compile)
When I try to compile either fpc or lazarus from svn, I always get errors on each line of makefile. I just can't compile. I do not understand why. Is it my make version? (MAKE Version 5.2 Copyright (c) 1987, 2000 Borland) rename Borland make to something else, gnu make and Borland make have the same executable file name _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
Re: [lazarus] Request for PR noise !
Michael Van Canneyt wrote: If Lazarus puts pascal as a language on the map again, it's name is VERY well chosen indeed, as Lazarus rose again from the grave !! A RAD/IDE should not lock itself into one language only, but should rather strive to be compiler/language independent. Implementing this with the FPC would probably be proof enough that Pascal isn't dead. This is very very hard to do. It could be done with a plug-in system - if you unload the Pascal parser then the IDE is no longer a Pascal IDE but now a C++ ide. For example, CodeTools/CodeInsight needs a parser to parse the text in the IDE window. You'd have to be able to unplug the Pascal CodeTools parser and plug another language CodeTools parser in. But this is much more man-power required than just focusing on one language. Look at Vim and Emacs - they are supposedly the tools which are supposed to handle multiple languages. But what good are they? Don't we have to build Emacs plug-ins in Lisp? Why not Emacs plug-ins in Pascal? There is always some language favor it seems. And Eclipse? It is favored for Java - even though it's supposed to be a multi language development tool. And as for BDS2006? It only handles C++/Pascal but why not Lisp, Perl, PHP? If Borland doesn't have the man power it is very slim chance that a small open source project can handle such a task. And then we have to beg the question - where do we draw the line? Which languages do we skip? Perl? Python? TCL? Algol? Right now it is easy to draw the line - Pascal. It's a very easy line to draw. If you let this line slip - it becomes very hard to draw. Where do you stop? How many languages are on the chocolate bar packaging before the chocolate bar package becomes so flooded with languages and so lacking of actual chocolate bar? _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
Re: [lazarus] Request for PR noise !
On Sun, 14 May 2006 21:00:44 +0300 Al Boldi [EMAIL PROTECTED] wrote: Calling it OpenRAD would probably be perfect, unless it's already taken. That's a description, not a name. Micha Call it DevCo IDE then ;-) Just admit it - the best name for the IDE is Lars. _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
Re: [lazarus] Lazarus Help System Requirements
Micha Nelissen wrote: Graeme Geldenhuys wrote: they use inside the *.jar files (html, straight xml or odt ...) and what viewer they use for the help. They do use the Berkeley Database for indexes, keywork search and extended tooltips. Berkeley DB ? Sorry, but that rings alarm bells over here ... all projects I've heard using it have corruption from time to time :-(. Perhaps, but those projects by and large aren't READ ONLY, like a help file would be. So what about SVN? _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
Re: [lazarus] New help doc format?
In your lazarus directory /components/chmhelp/packages/chm/ there is a unit called chmreader. It is simple to get a list of any of the files in the chm and extracting them: That's how easy it is to get all the files out of a chm :) Okay so its easy to get the HTML out of CHM (legally.. not sure), now how do I convert the CHM file into a web program that runs on my web server and allows people to make queries at my website to search the html files? This is my case for using a database from day 1, for both jobs - instead of using CHM for the desktop and some other database for the web server docs. BTW Felipe, if you are listening - CHM was not available on Windows CE either - someone has done some work to get it working on Windows CE though.. just as someone got SQLite working on Windows CE. My point is that databases are no worse than CHM for the Windows CE argument. _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
Re: [lazarus] Suggestions for Improvement
2. Replace the delphi dfm with a real code init (java style). What are the advantages? Easier component creation control/management via ONE language. 1) Please do not forget, that then you will be able to Search / Replace on component properties if they are in code! Currently the Delphi (and Lazarus I believe) doesn't seach dfm or lfm files when you do a normal search. You can still search and replace - you just store all the design time components in an include file. Instead of design time components via an DFM object file, you use an include file with true Pascal code, not DFM object code. When you search for stuff in your code, the include file is not searched - just as the DFM file is not searched when you search in Delphi. The include file hides all the design time code so it does not bloat up your code logic with design code. There are real world examples out there that uses this exact system. KOL/MCK does it inside the Delphi IDE, and there is no difference between editing a property of a MCK component from editing a property with a DFM component - the only problem was that Delphi is designed highly around a DFM system - so KOL/MCK had to implement tricks to get it working in Delphi. But with an IDE that is not proprietory, no tricks would be needed. Back when I started using delphi, I wondered what black magic was creating my forms for me? Why couldn't I see and tap in to the code that created my forms? I guess curiosity kills the cat. 2) As anybody accidently deleted a component from a form. Afterwards, you don't have a clue as the what custom options where set and what other components it linked to. Have then is lines of code minimizes this issue (yes Source Control software does help in such cases, but not everybody uses source control software - poor folks). You still use a component pallette and visual design. You still delete and link components together. All components are still linked to each other the same way. You just link the components through the code instead of through an object format. Take Synedit for example: Synedit1.highlighter:= SynPasHighlighter; Your highligher is linked to your synedit component. Instead of unlinking it and linking it within the DFM file, you do so in the include file with real code in it. There's no difference from an end user perspective who is using the IDE - components being dropped on the forms will act just the same as if you were using a DFM file. There are advantages and disadvantages of using real code versus using DFM files. DFM files are a cleaner format than actual Pascal code. Real code is easier to peak into and copy/paste than DFM files (but a DFM to code converter can be made). DFM files make the exe bigger in size than run time code, generally speaking. Now the question is: what does Java do this in its Visual ide's? Does it create an include file with component properties stored as real Java code - or does Java dump all the code into your Java source files and not modularize it? I'm interested because I haven't tried any visual Java ide's. Or does Java use some JFM format in some ide's ? _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
Re: [lazarus] New help doc format?
Does Apache Server work on Windows CE? So I shouldn't use Apache for a webserver, just because it isn't truly cross-platform? Sometimes people get carried away with the whole cross platform advantage - when really there would be no advantage of having Dude, you are missing the point completely!! Apache run on Windows CE. I don't know why anyone would write or read documents on a small Windows CE computer. Maybe if you are on an airplane and you only have your GameBoy with you - how will you read the Docs? Windows CE is just like any other platform!! Windows, Linux or OS X. Just because it's a small form factor makes no difference. Loads of people make a living writing software for the PDA market. I have helped develop a Time Sheet software package for a 2000+ employees company in the UK, and yes the application needed a help file (as does any good software application)! Why may the PDA market not have help files? It is a software application that should be shipped with help. You are right - I thought we were purely talking about the documentation for the FP compiler and the Lazarus IDE itself. When I am a developer I usually have a LCD/CRT monitor and would never ever read freepascal compiler documentation on a Windows CE computer or Lazarus Documentation. If we are talking about a generic help system for applications that are generated with Lazarus - then it is a different story. Although, like I pointed out - SQLite does appear to be available for Windows CE - so my case doesn't change. But then again, I'm not really advocating SQLite - it would be nice to use a Pascal based help system. What I'm mainly trying to point out is that if we are going to be doing indexing and sorting, are we not reinventing the database - since databases do all these things for us? Why would we want to index XML files if we can dump the content into the database and have it indexed for us by the database? In otherwords - does the developer really want to spend time reinventing an indexing system when someone has already done that for us in the database? In some cases, we must reinvent a bit in order to have a nice custom solution. So would everyone please point out the reasons we cannot make use of a database and why we really need to invent our own help database - if there are plenty of databases out there. Also - will the custom database solution like CHM (I consider CHM basically a reinvention of a database - a custom one) be web ready? i.e. can I upload the CHM file to the internet and create a web program that allows users to search the documents on my website? With a real database you can upload your help documents to a web server and create a web program that searches your docs. Then your company will get much more promotion if your help files are online in addition to you offering an off-line doc system. So can CHM be searched, indexed, etc. online on the web, too - and not just offline? with several people querying it at once? I think CHM is mainly designed for one person querying it. With a real database I would ship a small embedded database to the user - which one user can query comfortably. But then use a full fledged firebird/mysql style database on the web server to serve the docs to hundreds of people. Can CHM some how be uploaded to the web and have multiple people querying it with reasonable speed? Or must a real database be used? If a real database must be used - it means that you will then have to convert that CHM file to a real database anyway - so you now have double the work instead of just using a database in the first place. Are there enough advantages of NOT using a database. That's what needs to be decided. _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
Re: [lazarus] New help doc format?
I think you are one of a selected few. CHM is basically compiled html files into one file. Why would I want to see the code of each help file I am viewing. All I want in the content. A single file is great for distribution (smaller and easier to copy) compared tho say a 1000 html pages with there external images in the mix. Well I like having the HTML available that I can edit in a source file in case I need to print the documents and the current format is not good for my printer. Sometimes I change the font size of the documents so I don't waste as much paper. I don't like having the file hidden in some CHM file that I can never have access to with my bare hands. If there is a CHM decompiler that is legal to use and not illegal then that would be good. Or if you offered HTML and CHM that would be good - can you extract all the HTML out of CHM legally? Because one time I tried to decompile a HLP file and it turned out to be a huge mess. Also the corruption comment makes no sence. How often does CHM files get corrupt? It's never happened to me (maybe I am just lucky) Why would any other single compressed file be any different? That would be like saying any .zip or .rar or tar.gz file is not a good idea. Well when I back up my hard drive I do not dare put it into one zip file. I've had 3GB zip files damaged before. Instead I use several zip files instead of one big one. But in the case of a CHM file corruption is not much of an issue since it probably won't be written to often, and the user can redownload the CHM file any time he wants. I've also had several microsoft formats go corrupted on me such as giant email files that are stored in binary form in one big file. Losing all your email is not fun. But for CHM format, again, it is not as big of an issue since you could always download the CHM file again. _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
Re: [lazarus] Suggestions for Improvement
Back when I started using delphi, I wondered what black magic was creating my forms for me? Why couldn't I see and tap in to the code that created my forms? I guess curiosity kills the cat. You can edit the .dfm. Just not the form and the dfm at the same time. The DFM never told me when the components were created and freed, was what I was getting at. I wondered, as a beginner, what black magic allocated and freed the memory to create those forms. Long ago I was learning about run-time component creation and I wanted to modify my design time forms to be run time, by finding the actual code that freed and allocated the design time forms. I was looking for the code so I could turn my components into run time ones without writing all the run time code myself. I wanted to peak into the code and find out where form1 was created and freed.. couldn't do it. (could have maybe if I knew about GEExperts component to code tool). 2) As anybody accidently deleted a component from a form. Afterwards, you don't have a clue as the what custom options where set and what other components it linked to. Have then is lines of code minimizes this issue (yes Source Control software does help in such cases, but not everybody uses source control software - poor folks). You still use a component pallette and visual design. You still delete and link components together. All components are still linked to each other the same way. You just link the components through the code instead of through an object format. Take Synedit for example: Synedit1.highlighter:= SynPasHighlighter; Your highligher is linked to your synedit component. Instead of unlinking it and linking it within the DFM file, you do so in the include file with real code in it. There's no difference from an end user perspective who is using the IDE - components being dropped on the forms will act just the same as if you were using a DFM file. Binary properties can be difficult to set in code. Like images/resources? There are advantages and disadvantages of using real code versus using DFM files. DFM files are a cleaner format than actual Pascal code. Real code is easier to peak into and copy/paste than DFM files (but a DFM to code converter can be made). DFM files make the exe bigger in size than run time code, generally speaking. DFM make the exe smaller. It is the streaming code, that needs quite a lot of code. But this is a rather fixed amount. So for big applications or if the library is in a .dll/.so the DFM mke the exe smaller. You say DFM make the exe smaller, period. But you should say - DFM make the exe smaller in some cases only. : Because I've never seen a DFM exe smaller than a non-DFM exe myself, but I'll take your word for it. All the applications on my hard drive are several small and only some medium size programs - I make a lot of small utilities with only 1-5 forms in them. I don't make many large applications that exist all inside one exe - most of the time I make a bunch of small programs - then if I have one large program where I think a small add-on would be useful, I make a plug in system. So it depends what the threshold is where the DFM does make the EXE smaller, I guess. If it requires that 5-10MB exe size exist before you start seeing gains in exe size - that doesn't really affect me.. with the work I do. I generally like to make the program have a plug-in system once it gets that large anyway, so it would actually be more advantageous for me to have a lower threshold. Do you know generally what the threshold is before you have seen the exe become smaller from using DFM? 5MB? 6MB? Lazarus is quite a nice and big application and is only 6MB. I would think lazarus would be maybe 10MB in size, but it is only 6MB. So maybe we are seeing the threshold kick in here? _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
Re: [lazarus] New help doc format?
Even CHM format creates multiple files and depends on them. I actually meant HLP format on Win32 _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
Re: [lazarus] New help doc format?
I don't see the big deal with external dependencies because almost all programs have one or more external dependencies: a system DLL/DSO, a config file, etc. I have. Lazarus works for Windows CE, does sqlite work on it? http://sqlite-wince.sourceforge.net/ But I wouldn't want to read or write documents on Windows CE anyway. Does Apache Server work on Windows CE? So I shouldn't use Apache for a webserver, just because it isn't truly cross-platform? Sometimes people get carried away with the whole cross platform advantage - when really there would be no advantage of having Apache run on Windows CE. I don't know why anyone would write or read documents on a small Windows CE computer. Maybe if you are on an airplane and you only have your GameBoy with you - how will you read the Docs? Since FPC compiles for GameBoy - will you be able to read your HTML documentation on your GameBoy? BTW - I'm not advocating SQLite because I've personally never tried it myself yet. There may be better solutions out there. But I think we may be reinventing the database. We should at least use some sort of embeddable database, instead of reinventing another database yet again. A Pascal based one would be nice, even if it is slower than SQLite or not originally as powerful as SQLite - because I don't think speed is really an issue when this is only one person querying the help DB on their home PC. _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
Re: [lazarus] New help doc format?
On 09/05/06, Michael Van Canneyt [EMAIL PROTECTED] wrote: I'm not very much in favour of creating yet another format. Standards exist, we should try to use them as much as possible. Linux - has no standard help! Man Pages! Indexing? use grep! (detect sarcasm here). _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
Re: [lazarus] New help doc format?
2006/5/9, A.J. Venter [EMAIL PROTECTED]: On Tuesday 09 May 2006 15:53, Alexandre Leclerc wrote: I'm sorry, I can't find the source code... :( The only code on sourceforge, well, I don't know if this is the compiler itself, but it does not look like. Any-way I've no time now to look at that, but I will because this is interesting me a lot for our own help file creation. Did you look at the webcvs link ? It is quite possible the code is only in CVS. Yep, the cvs tree is almost empty, and all files are 2 years old. Well, there is a site for open source information on chm files: http://htmlhelp.berlios.de/formats/chm.php The HTML Help Maker project at savannah is at early stage and is in c. But it can create the basic file shell. If someone really want to code a compiler engine; it could start with that ar translate to pascal. But my personal idea on help files for lazarus would probably be: - get very well built html files with many links - build a search tool in lazarus to search the html files in the help folder. It is more simple and will do the job. Good idea - one way to accomplish this and have a fast indexing system would be to Ditch XML and place the documents in a database. Database would allow fast searching of the documentation. I know someone has stated before that they already tried to put the docs into a database for the FPDOC system and it didn't work out well because XML fits the document model better .. I think it's still possible, though. Not impossible, that's for sure. Just the time needed to make the system. Or, you could search the HTML/XML files.. but it would be slower than just searching a DB directly. _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
Re: [lazarus] New help doc format?
sqlite is good candidate too (multiplatform,single file,fast, only one dll/so required) Sorry, but no: - No external dependencies, please. - Specifically: sqlite is a horrible database for use in Pascal. And very slow for complex queries, in general. What database is good for Pascal? And since it is not going to be external - what embedded database is good for Pascal which ships inside the exe/elf? Do any even exist? IOW - what did you have in mind? _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
Re: [lazarus] New help doc format?
There is at least TDBf component for DBase and some memory database components, but neither is suitable for a help system. Really.. and why? Too square? DBase creates too many files. How many for say a 100MB database or so ? 100's? Are they big files that take up lots of space? _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
Re: [lazarus] Creating a GUI based DLL with FPC 2.0.2
In january I was told by L505 that If you decide to use fpc 2.0.2 remember that when you build a normal lazarus GUI style application you may have to change back to your old compiler in the lazarus directory. -- Thread subject: Help with DLL (using pchar, etc.) date 2006/01/12 I think my statement in January was regarding to the fact that the LCL is built with say fpc 2.0.0 cannot be linked with a lazarus GUI exe which is trying to be compiled with fpc 2.0.2 - i.e. lcl PPU files are not compatible with your target project ppu files. (I can't provide a url to the archive because it seams that all mail archive between dec. 13, 2005 to feb. 27, 2006 are lost... I dont' know why.) Now, I have to build a GUI based app inside a DLL with FPC 2.0.2 since I can't link with the DLL build with latest version -- this is just not working at all. You could download some lazarus version that uses FPC 2.0.2, or build your own lazarus based on FPC 2.0.2 Which FPC is causing you troubles? I have built my own Lazarus 0.9.7 using FPC 2.0.2 before - it required a few changes since 0.9.7 was not intended for fpc 2.0.2 Which copy of lazarus do you work with? 0.9.XX _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
Re: [lazarus] Lazarus Foundation pros
Hi. What they need is people. They (we?) don't need a foundation to make a better website, but we need someone to make a better website. Obviously the core developers don't care much about that. They have other interests. Your idea of, making some improvements to the community as an alternative of a foundation, sounds good... The problem here is that people disagree on what SHOULD run the website - some think current php used is fine to power the website. Some think it should be powered by perl. Some people feel it should be done in PEAR or phpnuke. Some feel it should be powered by websnap style lazarus website engine. Some people feel it could be done in PSP. If you had someone in charge to say listen Mr. we are paying you $400; If you want the $400 you build it the way we want based on our manager's instructions. But there are no structured rules or instructions, so no one will ever get it done - except the core folks when they have time. It's not as easy as just saying we need people - do the work now. You must discuss WHAT must be done and you must have some structure and management. Otherwise it's just an open can of worms with 50 guys battling (talking) about WHAT engine should be used for the site. It's not as simple as opening up lazarus and having some guy build the website. WHO, which guy? How many guys? Define some structure. Learn from the Pascal language: a structured language. Not an unstructured language with weak typing. _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
Re: [lazarus] Lazarus vs Patents
I can answer that. It isn't taught in school at all. If you go to any school and I mean any school that teaches CompSci in any way they will tell you that, Pascal is a dead and useless language. Nobody uses Pascal anymore. This was almost the exact quotation I heard from people on a local linux mailing list community when I mentioned something about Pascal.. The best way to respond to people like this is to help them with their Perl problems once in a while.. they will respect that you helped them, then they might respect you more for what language you use. I know nothing about perl but I still answer some questions because the languages have something in common when it comes to a certain way to solve a problem, etc. It's sort of passive marketting, as opposed to active marketing. Active marketing would be to tell someone pascal Kicks Ass who you know is already using a language similar to Pascal - there are quite a few people in Java who can relate to Pascal since it has strong typing in common. _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
Re: [lazarus] FPC/Lazarus Foundation would need people
In all of this talk about the need for a foundation it has been said how we could have these people doing this job instead of the developers. We could have others doing other jobs, etc. etc. etc. Well as the statements point out this needs people. It needs people that are involved and interested in FPC/Lazarus. That is where the problem starts. It's not just people doing work though - it is also communicating about the attitudes of the current people in charge too. The current attitude consensus is that it's just a hobby. On every single successful project, there is always lots of discussion and lots of code. Not just lots of code alone. Lots of code alone are the one man developer projects that become a selfish endeavor of one attitude from one developer (if two developers are on the project, it leads to two different code bases because of disagreement and no discussion on plans). Some of our attitudes our not in line. Some of us will and already are using FPC/Pascal for real work.. and pleasure too. But not just pleasure and not just hobby. What scares me most is the hobby attitude because I know FPC is much more than just hobby quality. It's not just as simple as gathering an army of programmers together and doing lots and lots of work. I've had conflicts of attitude before and it doesn't matter if you are both very hard workers, if your attitude isn't the same then you can code all you want but you might disagree on the goals of the project and start your own project. This is why OpenSource/Mozilla/OSI licenses spouted off from GNU - because people didn't agree on the same ideas. RMS is a good Lisp programmer and so is ESR, and they can pump out lots and lots of code - but that doesn't mean they will work good together. With FPC camp right now, we have two crowds or camps: 1. Those who want FPC to be successful for serious use, but hobby use is nice 2. Those who only want FPC to be hobby, serious - nahh - serious ruins the fun. I am part of camp 1 because I currently use FPC for serious use. I also use it for hobby too. Look, if we only use FPC for hobby and then we go off and use a real tool like MS VC or GCC for real work, how does that make FPC look? I feel that less of a hobby attitude is needed, otherwise people will get a feeling about this open source project they just work in their spare time, it's not a serious project - only a hobby for fun. But, this is all too common in many open source projects... On the other hand if it becomes too serious of a Business compiler it may end up being a corporate buzzword society. Have to balance it out - don't go too far as to making FPC a buzzword Borland style group - but please, at least admit that FPC is more than hobby quality. Some of you might be thinking will FPC split into two projects such as FreeBSD/NetBSD/EtcBSD split up? This would only happen, if some core developers had different views - right now I think ALL (Every Single One) of the core developers is part of camp 2, not camp 1. Yes, Camp 2 is doing more of the core compiler work - so it means they have more control. It could also be though that the core developers are just humble folks, and they do intend for these projects to be serious quality - and when they say hobby, they are just being really humble. I think this is true, because I know FPC is more than just hobby quality - and the documentation, and everything else about the project. As for Lazarus, it is more on the hobby quality side - being honest - since it is a huge project which isn't as near complete as FPC is. Not that this couldn't or wouldn't change. _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
Re: [lazarus] Lazarus/FPC Foundation
On 4/26/06, L505 [EMAIL PROTECTED] wrote: The only way a real free server could ever exist, is if we had free solar power/alcohol power and free hardware foundations Free as in Freedom. The patronization - I've read the differences between cost and speech for 5 years now. I'm no GNU amateur - I know all about RMS. But if you read my message again - you will see that I wasn't talking about cost - you just interpreted it that way. Read my message again in the notion that I was talking about speech, then. Not Free Beer. Or more clearly: Free software is about Freedom and not about cost. The GNU states that you must not hide the sources and charge money for your source code. This is clearly about cost, which is one aspect of freedom. Cost + OtherRestrictions := PartsOfFreedom; And what about if I declare a license on consulting to be free (as in speech, yah yah, I heard you)? You may not directly charge money for the consulting about your software - you may only charge money for services that ship the consulting of your software to your friend. But wait a minute, consulting does not need to be shipped. It can be submitted electronically. So what do you do then, Richard? So RMS is out of a job? (I believe most free software folks make their living off consulting and custom software.) Taking this one step further: if I declare a free custom software license that states that all custom software must be free (as in speech, yah yah, not about cost), and you can not directly charge money for the custom software, as that is a restriction. Then what do you do? ESR out of a job now too? (Eric states on his website that one way to be corporate with open source is to create custom software - catch22). Cost is one restriction - and is a part of the whole freedom issue. Again - but if you read my message again - you will see that I wasn't talking about cost, you just interpretted it that way. Read my message again in the notion that I was talking about speech, then. _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
Re: [lazarus] Passing a procedure as a parameter
Ian bell schreef Thanks for the detail. I find it really hard to get my head around OOP. It just seems to put barriers in the way of what I want to do. Can you think of any reason why it would want or need a procedure in this form? I guess the best advise we can give you is: Get a book on OO programming and start studying that. Once you get the hang of OO you do not want to do anything else anymore. :) Absolutely not - I do procedural and OO programming and sometimes procedures and functions fit the job better. OO can be suited for GUI widgets, as long as not too much inheritance is used. Sometimes I do wish that a TSomeWidget was not inherited 500 times because I have to go on a wild goose chase to find the code that actually runs the SomeWidget. Try debugging something that is inherited so many times, and you can't find the bug. Nail the right procedure in procedural code and you find the bug. Advantages/disadvantages of both programming paradigms. Procedures are something everyone can agree on, and with Pascal units you can organized procedures nicely - with C it becomes messy because they don't have units to modularize their procedures. THere is an operating system done in OO (Symbian OS ??) and guess what happened: everyone had a terrible time interfacing into it. Talk about code reuse. Interfacing into an API is code reuse. And they were having problem with reuse, by using OO.. _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
Re: [lazarus] Passing a procedure as a parameter
@MyEventHandle Closer. Now I get this error: unit1.pas(200,69) Error: Incompatible type for arg no. 3: Got address of procedure(LongInt, LongWord);Register, expected procedure variable type of procedure(LongInt, LongWord) of object;Register It probably expects a method which must be part of a class TSomeClass = class procedure Method1; end; var SomeClass1: TSomeClass; begin SomeClass1.create; // @SomeClass.Method1; --- use this SomeClass1.free; end. This happens when it expects procedure of object as opposed to a plain procedure or function not *of* an object. It is probably expecting this: TObjectProc = procedure(something: tsome) of object; versus a regular method: TRegularProc = procedure(something: tsome); _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
Re: [lazarus] Serial comms, events and other stuff
Excellent - good to see a sense of humour here. Does this also prevent me programmaticaly writing to the TMemo? Presumably not else it would be nought but a BOG label. The read-only property is from a User perspective.. user clicks on the edit widget and can't do anythin'. But the programmer can access the edit widget himself, even if read-only is on. Do you know where TMemo's methods are documented? The Delphi docs have pretty similar functionality.. Most of us have a copy of Delphi so we pull open the Delphi help files to look at - but if you don't have a Delphi CD there might be some Delphi docs online. If no docs for Delphi online, it means Lazarus team and users should start a documentation project real soon - as many users have asked for docs :(. _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
Re: [lazarus] Serial comms, events and other stuff
The read-only property is from a User perspective.. user clicks on the edit widget and can't do anythin'. Can't write anything, I meant.. still can copy/paste, select things. _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
Re: [lazarus] Serial comms, events and other stuff
3. In Tcl/Tk I use a textarea widget with keyboard entry disabled to show progress and data. The nearest equivalent in LCL seems to be TMemo. How do I disable keyboard input to this and where can I find documentation on this and other) components - the wiki seems fairly silent on this or do I just assume it work like a Delphi TMemo? Try the ReadOnly property, set it to false _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
Re: [lazarus] FPC question
Any idea how to rename the title of a page? See the newly added tiOPF page. Currently the title is TiOPF and it should read tiOPF. Probably have to cut and paste, not sure if there is a rename function in wikis.. _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
Re: [lazarus] Serial comms, events and other stuff
Try the ReadOnly property, set it to false Er, it seems to default to false; did you mean set it true? that would make sense. Yes.. sorry. Do the opposite of what I say. var CorrectAnswer: boolean; begin if Lars.Responds then CorrectAnswer:= not Lars.Answer; end; _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
Re: [lazarus] x86_64-win46
Another question: does the current win32 lazarus snapshot already contain the internal linker (compiling time 2.34 sec.)? Can't answer your question, but I noticed that the compilation time includes linking time so it should really be called compiled and linked in X.X seconds since we do like to distinguish between linking and compiling in FPC's case (but in Delphi's case 50 percent of the users probably wouldn't know what a linker is, so..) _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
[lazarus] Refactoring Subfolders
Hi, the current copies of Lazarus that another developer and I are using do not seem to have a subfolder or subdirectory checkbox for refactoring. Do any lazarus versions contain that feature. Sort of like the search/replace tool in lazarus where you can recursively search subfolders. _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
Re: [OT] Re: [lazarus] Temperary FTP Speace
There is no excuse for Oil being a raw material needed to ship food No, there isn't. Which is why those who can are switching to gas (which, lo and behold, farmers can produce that themselves) and hydrogen and trains anyways. The only problem is the lag of the infrastructure, that is, inertia. But that wasn't the point, I see. And as for hydrogen: how do you make hydrogen? By using energy to first get the hydrogen? I'm not familiar with the process. I know you can make hydrogen from water, by dissecting water into pieces through electrolysis. But this costs you energy - the electricity that it takes to make hydrogen may be more than what you are in fact getting OUT of the hydrogen that you produce. I'm not sure though. Then again, it does cost us money to run oil rigs and etc. - and we do get more oil out of the ground than it costs us to retrieve the oil. _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
Re: [lazarus] Refactoring Subfolders
Hi, the current copies of Lazarus that another developer and I are using do not seem to have a subfolder or subdirectory checkbox for refactoring. Do any lazarus versions contain that feature. Sort of like the search/replace tool in lazarus where you can recursively search subfolders. Do you mean, you want a fifth option in the refactoring dialog 'project directory and sub folders'? That would be nice.. (I'm interested in how the refactoring works, is synedit tokenizer part of the magic? I gonna look into the code and see.) _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
Re: [lazarus] Temperary FTP Speace
You could split the file into pieces and rejoin it together later. I'd do it in 100MB splits, or 50MB splits.
Re: [lazarus] Temperary FTP Speace
You could split the file into pieces and rejoin it together later. I'd do it in 100MB splits, or 50MB splits. Or you could just pay $10 for avoiding the trouble ;-) In other news, Flavio bought a copy of delphi for $500 to avoid the trouble of freepascal. It's a common dilemma: 1. give in and buy software/service or shareware that does what you want 2. code a program up for free yourself, like a real man 3. turn off computer and get some excersize outside and stop worrying about binary. Actually I recently started a split utility project (compiles in both FPC and Delphi) that let's me resume the split later. Problem is a 10GB file won't fit on a CD, so you have to pause the splitting process and resume it later, after entering the second CD in the drive. (my hard drive was too full to have the file split on it first before going on to the CD). Not done the joining utility yet though. _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
Re: [lazarus] Temperary FTP Speace
Thank you, but I appreciate the freedom and the power of open source ;-) Also, I can't see anything wrong in spending US$10 on something minimally important, why is it? No problem at all - I would spend $10-$20 on a I Love Freepascal t-shirt, for example. Remember: free software is about freedom, not price. Of course monetary cost can be and usually is a form of restricting freedom, but nothing if absolutely free. Oh I wrote about these issues before.. I know what you are saying. http://z505.com/cgi-bin/qkcont/qkcont.cgi?p=Open-Source-Service-Scared-Him Warning: don't read paswiki if you have a busy day. Takes a long time to wade through all the rants on that site. Actually I recently started a split utility project (compiles in both FPC and Delphi) that let's me resume the split later. Problem is a 10GB file won't fit on a CD, so you have to pause the splitting process and resume it later, after entering the second CD in the drive. (my hard drive was too full to have the file split on it first before going on to the CD). Not done the joining utility yet though. There're tons of such utilities already. I spent a few minutes on google trying to find one that had resume capabilities or stop and let me insert next CD-ROM capabilities but couldn't find one.. I don't know what this feature is called? If you know of a utility let me know. The ones I tried just split the files into one directory without pausing inbetween. Anyway it was fun to build the program.. the real problem was my google skills weren't good enough. Some times I don't know what a certain feature is called. Resume splitting? I don't know. I needed to learn a bit about splitting files in Pascal, so I wrote a util to gain some pascal knowledge. Unfortunately I didn't come from the TurboPascal days where it was very common to split a file onto several floppies. I don't have that experience. :-) p.s. just buy EditPlus and skip Synedit. It's faster than most Synedit based editors. Just pay the $30 for EditPlus already and quit the Synedit nonsense. But of course, synedit is fun to learn about and can always do more then editplus will ever be able to do, due to extensibility. Actually that's why I wrote the file splitting utility - it is inhouse software that I need to extend later on in a few months anyway. Gotta love inhouse software. _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
Re: [lazarus] Linking error
I sometimes only get: error while linking Well I tried renaming as.exe to as.old and the IDE reported the correct error, and didn't just spit out error while linking - so can't really reproduce the issue yet. I recall using Build All to solve the problem, but can't remember what the circumstances were. I'm sure I'll come across it some time if it is a true problem that affects me :) otherwise I'm just moaning. _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
Re: [lazarus] Linking error
Hi Could someone point me in the right direction please. I have added the unit pgcl (a postgres access unit) to a project which built and compiled perfectly without any problems. Now when I build the project , a message error while linking occurs and the project compilation does not complete. Since there are no other messages that could point me in the direction of where to look for the problem - I have no idea as to how to sove this. Use the command line to find out. fpc project1.lpr -options Lazarus really needs to show these errors, I think it skips part of the error and only reads some of it (the non-important part in this case). It won't tell you that as.exe or as is missing, and other things. Or, maybe TProcess is not capturing all the messages, or just capturing the very last error message when in fact we need about 3 lines up. _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
Re: [lazarus] Linking error
Hi Could someone point me in the right direction please. I have added the unit pgcl (a postgres access unit) to a project which built and compiled perfectly without any problems. Now when I build the project , a message error while linking occurs and the project compilation does not complete. Since there are no other messages that could point me in the direction of where to look for the problem - I have no idea as to how to sove this. Use the command line to find out. fpc project1.lpr -options Lazarus really needs to show these errors, I think it skips part of the error and only reads some of it (the non-important part in this case). It won't tell you that as.exe or as is missing, and other things. Or, maybe TProcess is not capturing all the messages, or just capturing the very last error message when in fact we need about 3 lines up. FPC prints the linker errors followed by 'error while linking'. That's why the IDE prints all messages in front of such a message. Can you give me an example of skipped important messages? Mattias I sometimes only get: error while linking But no other information, because lazarus pins in on that line only. Or is it FPC that is doing that when you don't Build All? Or copy all messages to clipboard maybe solves my problem in some cases? _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
Re: [lazarus] SynEdit
On 3/31/06, George Birbilis [EMAIL PROTECTED] wrote: Is the Lazarus SynEdit version available at synedit.sf.net or some private Lazarus modification of it? It is a private modification. So the one from sourceforge will not work. Sources for lazarus one are on your hard drive under /components/synedit/ You may be able to get the Lazarus one to work in Delphi, but the one from source forge would not work out of the box in lazarus. _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
Re: [lazarus] Changing SynEdit
Unless you have in depth knowledge about how every bit of ansistring memory management works, using getmem and freemem and pchars are simpler, no? Because you are not battling the automatic memory management. Now, if you are an expert in battling the automatic memory management maybe you can battle ansistrings enough to be almost or just as fast as pchars. Is this what we are doing in the fpc sources? I will have to look, and see. Yes. For example: The codetools use ansistrings. Less than 1% use PChars. Just avoid the + operator as you would avoid ReAllocMem and StrCopy. However, string[i] isn't so convenient as the '+' operator because you have to think about all your calculations quite a bit. Really string[i] is smart pchars. Stringbuffer type would allow you to use the + operator and eat your cake too, because every time you use the + operator the getmem() is not called. Further benefits of StringBuffer type will have to be explored - at this point it does'nt have enough benefits to be justified since you can just get along with string[i]. _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
Re: [lazarus] FPC 2.1.1 and spaces in output path
i dont know if this is a known problem, and if its a lazarus problem or fpc i have setup an fpc 2.1.1 from yesterday and use the fpc.exe as compiler to use crosscompiling. works fine but when spaces are in the output path ppc386.exe has an problem example: Output Path : c:\fpc test\ ppc386 says : cant write to c:\fpc permission denied I think I've seen some note before saying to not use spaces for the install directory _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
[lazarus] Sniffing Synedit Tokens
Hi when a Var parameter is to be passed, holding a TPersistent object like below (tmpattr)... syn1.GetHighlighterAttriAtRowCol(syn1.CaretXY, tmpstring, tmpattr); ..is it wrong to create tmpattr first? Is it just a reference to an existing TSynHighlighterAttributes When I create and free a storage 'tmpattr' I get access violation and this is why I'm wondering. _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
Re: [lazarus] Sniffing Synedit Tokens
Actually, the parameter coud/should be 'out' (but I guess FPC doesn't even implement the COM-ish things ;-) 'out' is implemented and used. Michael. I've used it before :) _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
[lazarus] Synedit patch
Implemented GetHighlighterAttriAtRowColEx from looking at Delphi synedit. Better token sniffing available. See attached. synhighattrex.patch Description: Binary data
Re: [lazarus] Synedit patch
Implemented GetHighlighterAttriAtRowColEx from looking at Delphi synedit. Better token sniffing available. See attached. also, we might want to make some of those OUT instead of VAR parameters if you think it is better. Did not do that in the patch, please implement that if you want. _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
Re: Mozilla Plugin Panel component
Just wondering how exactly you are doing it ? Are you linking to gecko or embedding the window itself ? If the latter, the way under the linux is to I embed the window itself. No reference to Gecko at all, though that was my first attempt at the component. I found an article on the Borland Developer Network about how Borland managed to get Gecko embedded inside an application window for Kylix. It was a bit ugly though. It would have been nice though, because then I could use any plugin Mozilla supports or display fancy html (with CSS) inside the window. Even control it via Javascript would have been nice. :-) On Winblows you can embed any application inside a window with SetWindowPos, although I'm not sure how much CPU it takes to continually readjust a window with SetWindowPos. (setparent does not work because of the application belonging to a separate process space) Then send messages to the application's API. To make it look even more embedded, turn off the top window title bar with another API command. Of course with all the dumb Windows XP skins out there, each application probably won't match your parent application anyway. This trick is much easier to use if your applicaiton uses a generic skin. i.e. the standard OS skin default. _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
Re: [lazarus] Object pascal a Modern Language
I guess it's not so hugely useful or else someone would have contributed it already. Mmm... if that was the case I wouldn't be programming because everyone has already implemented what I'm trying to program :-) Seriously though - it would mean less calls to SetLength when doing big operations on strings. Ansistrings work fine when you are doing small random concatenations but when you do tons at once they are much slower and you must resort to the following: setlength(string, NewMaxValue); string[i]:= 'string I want to concatenate'; instead of string:= string + 'string I want to concatenate'; If it helps, we could add a function to TStrings: Function TStrings.Concatenate : String; begin end; Which would optimize the whole matter into a single 'getmem' call ? if there is interest, I can add it. It's 30 minutes of work. Michael. But I mean if you are doing things at different times in the program: for i := 1 to 1000 DoSomestuff s:= string + string; DoOtherStuff s:= string + string; in other words.. not one big concatenation at once such as: string.concatenate(string1, string2, string3, string4); The only way I saw it possible in my mind was through a special string buffer type (or hey, even a stringbuffer class if not a true system type). With TStrings.concatenate did you mean an all at once concatenation? p.s. the reason I mention this was because I was just doing some work with my friend Tony in pascal server pages for output buffering and we were doing some benchmarks playing around with setlength calls _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
Re: [lazarus] Object pascal a Modern Language
But I mean if you are doing things at different times in the program: for i := 1 to 1000 DoSomestuff s:= string + string; DoOtherStuff s:= string + string; in other words.. not one big concatenation at once such as: string.concatenate(string1, string2, string3, string4); The only way I saw it possible in my mind was through a special string buffer type (or hey, even a stringbuffer class if not a true system type). With TStrings.concatenate did you mean an all at once concatenation? All strings in the list are concatenated in one step, regardless of when they were added to the list: Sl:=TStringList.Create; for i := 1 to 1000 do begin DoSomestuff; SL.Add(SomeString); DoOtherStuff; SL.Add(SomeOtherString); end; Result:=SL.Concatenate; // This can be optimized to 1 getmem call. Michael. I suppose this is sort of like SetTextBuff for stringlist :) And how about if you don't have any line delimiter? i.e. a string buffer with no CRLF or LF.. does the TStrings type allow to disable the line delimiter? _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
Re: [lazarus] Object pascal a Modern Language
Sl:=TStringList.Create; for i := 1 to 1000 do begin DoSomestuff; SL.Add(SomeString); DoOtherStuff; SL.Add(SomeOtherString); end; Result:=SL.Concatenate; // This can be optimized to 1 getmem call. Michael. I suppose this is sort of like SetTextBuff for stringlist :) And how about if you don't have any line delimiter? i.e. a string buffer with no CRLF or LF.. does the TStrings type allow to disable the line delimiter? That would be the difference between 'Text' and 'Concatenate': Text adds CR/LF between the strings, 'Concatenate' would not. Michael. Oh! it has been a while since I looked into the Tstrings source code.. so you're saying that a tstrings already *IS* buffered and all you would have to do is implement concatenate function.. because buffering already exists. _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
Re: [lazarus] Object pascal a Modern Language
No, if you need pointer _arithmetic_ you are doing it wrong or using a language that is assembly in disguise. Pointers itself are fine and dandy, but don't *(x + 3 * i + 2) = *(y - 3);. Would you talk like that to a human? No? Why talk like that to a computer then? It's just a sign that something in the language is broken when you need to do stuff like that (except when writing a heap memory manager, I guess). But I mean when you need to do it like all the time, like for arrays (hello C :)). Also, by doing stuff like that you throw all bounds checking out of the window, so you could as well write it in assembly and spare yourself the hassle of using a compiler that brags all the time except where it matters. I've decided that C is now officially the learning language for universities. Students will now learn about all sorts of computer memory management in C, but C will never be used for any practical purpose. It serves as the teaching language of what language we should never use but teaches us a lot about the memory in a computer. It also serves as a language which makes a programmer feel happy I'm glad I learned C because it was 8 times harder just to create a string, and now I'm ahead 8 times by not using C. If I wouldn't have learned C I wouldn't have known I was 8 times ahead. As an aside, I remain adamant that anybody who writes a free software/open source program in Java is being foolish. What is the POINT of a free software program that REQUIRES a non-free program just to RUN ? I've also wondered about that.. I mean there is gcj and mono and such, but... why not do something that is better but our own thing... I've looked at parrot for a vm but it's tailored for interpreted languages only. sigh. It's the same as Delphi users doing the JEDI project and allowing borland to use their code without Jedi getting paid. Borland is smiling and laughing all the way to the bank while Jedi developers are smiling, but not laughing to the bank. _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
Re: [lazarus] turboCASH on Lazarus proof of concept - grid
A treeview is a totally different beast than a grid ? TVirtualTreeView can be a grid, a tree or a combination of both *looks out window* Pigs should not fly. I think this is taking object orientation too far. I could be dead wrong though. no, VT is mutch faster than all other grid and list or treeview controls. it is designed to be a grid or a treeview I'm interested in it and will have to check it out some time. I just figured it may be better (both for advertising what it does, speed of it, and maintenance of it) as separate components instead of an all in one. _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
Re: [lazarus] OpenDelphi.org (off-topic?)
Timothy Ha wrote: I would like to know your opinion about the new initiative called OpenDelphi.org That's plainly nonsense. As you can see, even the lazarus and free pascal contributors are little compared with other OSS projects. The OSS idea is very weak in the delphi/object pascal world. Even worse, a lot parts of delphi are written in C++ e.g. the compiler (afaik). So to contribute to an Open Delphi, it would be required that people are interested in OSS and that they know C++. Even more, considering the development speed of the delphi compiler the last years, it's evident that the code of the compiler is completely unmaintainable else Borland would have added a lot of features which isn't the case. I have read that is a fact that even the Delphi IDE kernel is written in C++. I don't know what they consider the kernel (probably the BPL's that power lots of the IDE) but I'd say a lot of the IDE is powered off the kernel in addition to the compiler which is also written in C/C++ and just some GUI display parts are written in Delphi in the Delphi32.exe file. _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
Re: [lazarus] Changing SynEdit
Widestrings need to be like that for compatibility with c and c++ Not exactly, they need to be like this because the dang MS COM. However I can't see why is this different than the AnsiString vs Windows PChar-based API... I'm off topic here but: I think there should be a standard reference counting mechanism (standards comittee?) between language. We have the standard ansi string header embedded in the ansistring but no standard reference counting mechanism. If this was the case we could share our ansi strings in DLL's with C++ and other languages. However There are good reasons for using pchars especially during string concatenations - ansistrings are dead slow when you are making tons of small concatenations. _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
Re: [lazarus] OpenDelphi.org (off-topic?)
The compiler, probably the debugger also, is written in C++ and assembler. The IDE itself is written in Object Pascal. All packages are definitely in Object Pascal. Some of the Delphi 5 files check out as follows: dfwedit.dll is made with borland C++ imged32.dll is made with borland C++ Inkdfm50.dll is made with Delphi rlink32.dll is made with Borland C++ rw32core.dll is made with Borland C++ lnkdfm50.dll is made with Delphi borlndmm.dll is made with Delphi conexprt.dll is made with Delphi cp3245mt.dll is made with Delphi dcc50.dll is made with Borland C++ delphimm.dll is made with Delphi grep.exe is made with Borland C++ imagedit.exe is made with Delphi make.exe is made with Borland C++ tdump.exe is made with Borland C++ tregsvr.exe is made with Delphi instreg.exe is made with Borland C++ convert.exe is made with Delphi dcc32.exe is made with Borland C++ (we knew this one ;) ) I think DFWEDIT.dll is is part of the delphi editor widget. Source of research? All files were checked with Stud_PE tool. _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
Re: [lazarus] Changing SynEdit
On Wed, 1 Mar 2006, L505 wrote: Widestrings need to be like that for compatibility with c and c++ Not exactly, they need to be like this because the dang MS COM. However I can't see why is this different than the AnsiString vs Windows PChar-based API... I'm off topic here but: I think there should be a standard reference counting mechanism (standards comittee?) between language. We have the standard ansi string header embedded in the ansistring but no standard reference counting mechanism. If this was the case we could share our ansi strings in DLL's with C++ and other languages. Ansistrings are unique to Object Pascal. The implementation of strings in C++ is completely different. However There are good reasons for using pchars especially during string concatenations - ansistrings are dead slow when you are making tons of small concatenations. Sorry, but that is total nonsense. Not more than 'naive' pchars. My strloadfile benchmark proves that the standard programmer using simple concatenations with ansistrings will have a serious speed problem in his application. Unless you have in depth knowledge about how every bit of ansistring memory management works, using getmem and freemem and pchars are simpler, no? Because you are not battling the automatic memory management. Now, if you are an expert in battling the automatic memory management maybe you can battle ansistrings enough to be almost or just as fast as pchars. Is this what we are doing in the fpc sources? I will have to look, and see. Does it require some simple setlength calls or is it more complex than that? Does it require less or more lines of code than simply using getmem and freemem? I bet you end up inserting lots more lines of code to battle the memory manager instead of just manually taking control of it yourself. _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
Re: [lazarus] Changing SynEdit
I'm off topic here but: I think there should be a standard reference counting mechanism (standards comittee?) between language. We have the standard ansi string header embedded in the ansistring but no standard reference counting mechanism. If this was the case we could share our ansi strings in DLL's with C++ and other languages. Ansistrings are unique to Object Pascal. The implementation of strings in C++ is completely different. Which is why we need a standard implemented for OTHER languages to follow and implement. As pascal users, we follow all sorts of standards designed by C programmers and never think to implement our own standards for other's to follow. Not to mention we use all sorts of C dll/dso's but you rarely (never?) see any C people using pascal DLL/DSO's. It is this trend that makes Pascal weaker and weaker with time. We follow COM and CORBA, for example, it ain't written by a Pascal programmer. So I don't see what is so hard about someone else following a standard ANSISTRING ref counting specification written by Pascal inventors. _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
Re: [lazarus] Changing SynEdit
is there some kind of official maintainer for the SynEdit component in Lazarus? I'd like to discuss some changes that were to the original SynEdit code and some new features (and refactors and restructuing ;-) I'd like to play with... Best regards, Flávio I'm not the maintainer and I have no right to say this but I think you guys should merge efforts and include the lazarus ifdef's right into the releases of the Delphi synedit project. _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
Re: [lazarus] Changing SynEdit
Basically, yes. But as a matter of fact, what I was thinking about it to stop wasting my time developing for Delphi and finally shift my focus to Lazarus... How does M.H. and the rest of the Synedit developers feel? I have Delphi 5 too btw. Some of the ifdefs might even be able to be taken out but I'm not sure. Because FPC/Delphi compatibility has gotten better and better with time and I think M.G. made those ifdefs way long ago back when FPC/Delphi compatibility was not as good as it is today. _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
Re: [lazarus] Program plugin
If you choose for a dll system, I would choose Interfaces (and indeed, don't pass strings, dyn arrays or classes) Marc I don't have much experience with interfaces and would like to learn more about them. Can you import/export one to and from other languages? i.e. c++/c/etc. _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
Re: [lazarus] FPC source directory
Now, in Lazarus while trying to set FPC path I get error message: The FPC source directory usr/lib/fpc/2.0.2./units/i386-linux/ does not look correct. Normally it contains directories like rtl, fcl, packages, compiler, ... This folder include some of folders mentioned but not other such packages. What is the proper relative path in this case? I remember that I had same problem on previous Lazarus and what I did was to download FPC sources package, unpack into a permanent folder as it is and set this path to Lazarus FPC path. Is this a correct approach? The skeleton of directores should look like what is in your /lazarus/fpcsrc/ directory. If you want to make the skeleton fpc source directories of what lazarus looks for, follow what exactly is in /lazarus/fpcsrc/ and then point it to your new skeleton. If you are looking for a pre-made set up just use /lazarus/fpcsrc/ from the latest lazarus installation (fpc 2.0.2 I beleive) _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
Re: [lazarus] Program plugin
Could someone give me an idea? I am writing an application to which I hope to add functionality later. One option would be to simple send out the new exe to all users. However, I would like to implement a plugin system. So a new feature could simply be added and totaly integrated to the original application. It is important to note that the application has no idea what is going to be added later. Any ideas anyone? Notes: If you want people to build plug-ins in other languages than Pascal (visual basic, C++, C, etc) then don't use ansistrings or objects since they are specific to Pascal. Who is your market? People who own copies of Delphi/FPC or people who own copies of Visual Studio, Delphi, VB, FPC, and more? If using a DLL system and you want to export ansistrings from a DLL you can use a memory manager trick similar to the trick being used in Pascal Server Pages 1.6.X project. The memory manager trick to export ansistrings from a DLL is: program MySoftware; // export memory manager from executable (software hosting the plug-ins) procedure ExportMemMan(out MemMan: TMemoryManager); stdcall; begin GetMemoryManager(MemMan); end; function TestAPI: string; begin result:= 'hello, this is the API in the exe '; end; exports ExportMemMan name 'GetSharedMemMan', TestApi; begin end. library MyPlugin; var GetExternalMemMan: procedure(MemMan: TMemoryManager); TestApi: function: string; MemMan: TMemoryManger; //storage of received mem manager begin // get handle of EXE ExeHandle:= loadlibrary('yourprogram.exe'); // import exe memory manager into DLL plug-in GetExternalMemMan:= getprocaddress(ExeHandle, 'GetSharedMemMan'); GetExternalMemMan(MemMan); SetMemoryManager(MemMan); // You can now use ansistrings in dll TestApi:= getprocaddress(ExeHandle, 'TestApi'); showmessage( TestApi() ); end. Above ansistring memory manager trick should work with FPC and Delphi plug-ins, which means Delphi developers and FPC developers will be able to make plug-ins for your program, not just fpc developers. The most powerful plug in systems have communication systems both held inside the exectuable and the dll. Many people make the mistake of thinking only the DLL can export, when in fact the program itself can contain an API of it's own that is exported which the DLL can talk to. A simple example plug-in system that uses an API held inside the EXE is implemented in LazarusRB in plugger_api.pas If it is objects that you need to export then you can make procedural wrappers that export each and every procedure/variable from that class, then reimport them with a wrapper again. Take a look at LazarusRB sources for an example of that system in plugger_api.pas and PluggerWrapper.pas. Or of course you also can wait until fpc is able to export BPL style packages, which again will only work with FPC and not plug ins built with Delphi or other languages like C/C++/VB. It depends on your needs and the type of program it is. _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
Re: [lazarus] Showing URL in default browser
It would be nice, if someone would write a package with a component to start a browser. Preferably without opening a new page/tab on every call. I added examples/openbrowser/. Maybe you want to add the above command for windows. This problem is very hard to solve on Unix. I can´t imagine a solution that isn´t Desktop-specific or browser-specific. Currently on Virtual Magnifying Glass I simply call mozilla-firefox to open the page on linux and do a ShellExecute on Windows. Even then, on some distros the firefox executable has a different name =/ I´m not saying it can´t be done, but I´m raising some difficulties and asking for ideas on how to solve them =) Where's the the Lin32 API when you need it? (Ermm. good quote of the year) Does firefox have some sort of API that allows users to remote control it from another process? Does *NIX itself offer any standard inter-process communication tactic or must each program contain a home brewed custom server damon (written from scratch each time) to receive unix sockets or other API/remote communication? _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
Re: [lazarus] Win32 Api Calls
Can anyone please tell me how can I make calls to the Win32 Api ? Is there a unit I must include or something else I must do ? Windows.pas or Windows.pp unit from FPC is what you need. Check this out: http://z505.com/PWAPI1/windows2/index-5.html Haven't started documenting it yet, LOL _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
Re: [lazarus] Changes to file on disk warning annoying
I assume everyone knows in samba the reason is line feeds, but just to make sure I will double verify.. Samba converts files line feeds and this causes the editor refresh issue _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
Re: [lazarus] Changes to file on disk warning annoying
Mattias Gaertner wrote: The files didn't changed on disk, so an automatic refresh would undo your current changes. With samba this is not the case - the files are changed. The line feeds are converted. At the moment the IDE does this: On saving/opening a file it retrieves the FileAge of the file. At several occassions it compares these file dates with the current file dates. If it changed it gives the user the choice. It's odd, because both computers sync clocks from the same timeserver - which is also located on my network. I've looked and the clocks appear the same, so I assume it's something about going from Linux to Windows over NFS that's making it look different. linefeeds in samba _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
Re: [lazarus] Changes to file on disk warning annoying
linefeeds in samba Right, but my point is under SMB it _worked_, but under NFS it doesn't... your description sounds like it should be the other way around? -Tony Ahh, I see. So we have two different problems here, but with the similar effects: the refresh dialog window popping up. I guess we will need to analyze both issues, I didn't read the messages closely enough! _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
Re: [lazarus] win32 program icon
Recently, support for {R$ } directive on linux was added to the compiler. I don´t know how this helps, however. no idea what that's for in practise... Unix usually goes the other way, separating everything, not stuffing everything and their brother into one file. I guess the advantage of having something in one file are that there is no dependency hell. That and you can move around the one single file in a file manager without worrying whether 5 files need to be copied with it or just 2 with it. If you copy just 3 and you forgot the other 2 dependent files you run into dependency hell. I guess there is a point in which the line shall be drawn - the Windows registry is one big file and it is a giant piece of hard to access dangerous un-recommended crap. I find as an application gets larger in size, more things need to be separated out. Same with websites - template files and CSS stylesheets are more and more useful as the site gets bigger. But for prototypes and quick RAD applications, it is sometimes better to have things in one single pack with the ability to expand outward later (bigger apps uses packages, dynamic libraries, settings files, resource files, but quick rad prototypes are easier to ship in one single executable). _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
Re: [lazarus] bug 0001055 Form autoscroll and Control.Align=alTop
Salvatore, So if I understand correctly, your panel is not put on the top of the form when you set the align property to alTop? It sure seems to be from your screenshot! AlTop should place the panel at the top maximized widthwise. It is not maximized widthwise in the picture. _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
Re: [lazarus] Who Discussed Linker Slowness?
What do PPU files contain? symbolic links or hard links? See below: - The .TPU format doesn't contain symbolic links to other units, it contains hard links to particular offsets in the interface part of other .TPU files. If those other units change their interface, the .TPU is made obsolete and needs to be recompiled. - Any reasonable update beyond a minor bug fix release is likely to change the interface of some commonly used units like SYSTEM. This makes everything obsolete. - Borland chose to do things this way because it leads to drastic speedups in linking. Essentially all the work involved in linking a unit to the units it uses gets done during compile time, and doesn't need to be repeated again when the program is linked. Quoted from: http://groups.google.com/group/comp.lang.pascal/browse_thread/thread/9cee95654ec4d045 /0d7281be97540061?q=%22windows+was+written+in+pascal%22hl=en _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
Re: [lazarus] Who Discussed Linker Slowness?
On Sun, 15 Jan 2006, L505 wrote: What do PPU files contain? symbolic links or hard links? They don't contain links at all. The accompagnying .o files contain symbolic links, as they are standard elf or pecode object files. Michael. Ahh I see.. does microsoft visual studio create similar pecode object files? I'm thinking maybe one reason borland delphi compiler/linker is so fast is because of these hard links - but I'm no compiler guru yet. As for C++ Builder I'm not sure, I've heard it was slow compiler/linker. _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
Re: [lazarus] Who Discussed Linker Slowness?
So in short: The only way to get a major speedup in linking is to have an internal linker so the .o is not needed anymore and can be stored in the ppu. But i don't have the time to code such an internal linker so don't expect anything before 2007. And I wonder about the Windows.a and Windows.o file, do you think borland uses some magic tricks there or do they actually just treat the windows.tpu/windows.dcu file just like any other dcu file. I guess I will look at the DCU file and report back with more information, but it is hard to say whether they place the entire dcu file into memory or whether they have some other magic tricks up their sleeves. _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
Re: [lazarus] Who Discussed Linker Slowness?
All those external references to DLLs are generated by the linker and don't need to be stored in the dcu. For FPC we can do the same since ld now also supports direct linking to DLL files. When the FPC port to win32 started that was not the case. I remember that was discussed in the article you pointed out, thanks for clearing this up. I wonder how much this will improve speed, I think the article said 10-25 percent. Only experimenting will tell I guess :-) _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
Re: [lazarus] Who Discussed Linker Slowness?
You can expiriment yourself, use the 2.1.1 compiler from today and compile everything with option -WI-. Oh! Send -WI- to the compiler? or the linker with -k ? Lars _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
Re: [lazarus] Help with DLL (using pchar, etc.)
Yes, this is my favourite. As you can imagine, on embedded nano-computers every single byte has to be checked if it does something useful, the other ones have to go home. ;) Do you think the PStrList will be useful, and some other fake (byte friendly) classes (objects) in CompactUtils? I know pure arrays and and simple variables without any objects at all, will save bytes, but hey wouldn't it be nice to have some of object oriented programming without the cost of bytes? Yes in your case embedded programming will not benefit from DLL programming of course - in fact dll programming is more inefficient than static linking because with static linking you don't have to load the entire DLL with wasted functions in it. I'm not one of those dudes who is anal about having Exe's small - it's just a matter of having a leading advantage of being able to upload a nice small 30kb powerful CGI program and of course being able to work with embedded systems. That is one advantage with FPC is being able to work with embedded systems, over say python or perl. I'm sure people would love working with Pascal rather than C for embedded systems, but in order for Pascal to have a chance in embedded systems we must have projects like this compactutils and system.ppu replacements, otherwise people will have to resort to C. Because the big 30kb hello world exe and the 90kb hello world exe with sysutils in the uses clause is not good for embedded systems. _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
Re: [lazarus] Help with DLL (using pchar, etc.)
What does your DOS window say after you stripped the DLL? Nothing peculiar. As to the .dll.dll I just choosed not to fix it :) since this was just for a test any-way. Since Vincent has indicated lazarus ships with a non-smartlinked RTL, you may be pulling in a big sysutils in your case causing the extra size. I don't know if that is the reason or not. And again just to be sure, take all debugging checkmarks off too. _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
Re: [lazarus] Compiler speed?
Delphi was very quick. Is there something about the FPC that is fundamentally different from the Borland compiler that makes Lazarus 'seem' slower to compile? It's the linker and it is GNU's fault not FPC. If there is a custom linker built this may solve the problem, or maybe we could look into why the linker is so slow and get the C programmers to do the work - I haven't done any research on it but surely this has come up in conversation before on the C lists somewhere. _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
Re: [lazarus] dyn. linked lazarus
On Thu, 12 Jan 2006 22:01:21 +0100 Florian Klaempfl [EMAIL PROTECTED] wrote: I was just able to link lazarus dynamically against the fpc rtl/packages: [EMAIL PROTECTED]:~/fpc/lazarus$ ls -l lazarus.dynamic -rwxr-xr-x 1 florian florian 7381916 2006-01-12 21:51 lazarus.dynamic [EMAIL PROTECTED]:~/fpc/lazarus$ ldd ./lazarus.dynamic linux-gate.so.1 = (0xe000) libfprtl-2.1.1.so = /usr/local/lib/libfprtl-2.1.1.so (0xb7ea4000) libglib-1.2.so.0 = /usr/lib/libglib-1.2.so.0 (0xb7e8) libgdk-1.2.so.0 = /usr/lib/libgdk-1.2.so.0 (0xb7e49000) libX11.so.6 = /usr/lib/libX11.so.6 (0xb7d89000) libgtk-1.2.so.0 = /usr/lib/libgtk-1.2.so.0 (0xb7c4e000) libXi.so.6 = /usr/lib/libXi.so.6 (0xb7c45000) libXext.so.6 = /usr/lib/libXext.so.6 (0xb7c38000) libm.so.6 = /lib/tls/i686/cmov/libm.so.6 (0xb7c16000) libgdk_pixbuf.so.2 = /usr/lib/libgdk_pixbuf.so.2 (0xb7c02000) libfpfcl-2.1.1.so = /usr/local/lib/libfpfcl-2.1.1.so (0xb7b91000) libfppaszlib-2.1.1.so = /usr/local/lib/libfppaszlib-2.1.1.so (0xb7b7c000) libfphash-2.1.1.so = /usr/local/lib/libfphash-2.1.1.so (0xb7b77000) libdl.so.2 = /lib/tls/i686/cmov/libdl.so.2 (0xb7b74000) libc.so.6 = /lib/tls/i686/cmov/libc.so.6 (0xb7a46000) libfpnetdb-2.1.1.so = /usr/local/lib/libfpnetdb-2.1.1.so (0xb7a3c000) libfplibasync-2.1.1.so = /usr/local/lib/libfplibasync-2.1.1.so (0xb7a39000) libpthread.so.0 = /lib/tls/i686/cmov/libpthread.so.0 (0xb7a27000) libgmodule-1.2.so.0 = /usr/lib/libgmodule-1.2.so.0 (0xb7a23000) libXau.so.6 = /usr/lib/libXau.so.6 (0xb7a2) libXdmcp.so.6 = /usr/lib/libXdmcp.so.6 (0xb7a1c000) /lib/ld-linux.so.2 (0xb7fc) Is this, what I hope, it is? How do you created the fpc dyn libs? Mattias Florian needs to offer a download and show off to people what it is, i.e. zip file. That's what I use PasWiki for - prostituting all my download show-offs. _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
Re: [lazarus] Help with DLL (using pchar, etc.)
Oh! It makes me think: are you compiling under linux to produce this Nope. dll? Else, is there a way to have the rtl smartlinked for windows? Well since I use fpc 2.0.2 the RTL is smartlinked. I think you are using the compiler that comes with lazarus. i.e. in environment options, I set my compiler up as a custom one in my own directory, such as C:\FPC_2.0.2\ _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
[lazarus] Who Discussed Linker Slowness?
Maybe others have discussed the slowness of the GNU linker before (C programmers, for example).. and maybe the gnu/gcc team can offer some answers as to if the speed of the gnu linker is going to be improved or not. So far some simple searches don't reveal anything. http://www.google.com/search?q=%22gcc%20linker%20is%20slow%22 http://www.google.com/search?q=%22gnu%20linker%20is%20slow%22 http://www.google.com/search?q=gcc+%22linker+is+slow%22 http://www.google.com/search?q=gnu+%22linker+is+slow%22 Not much in the above searches, which tells me not many people are going to be working on the GCC linker speed. I know that maybe it is possible for fpc to create its own linker, but if the gnu linker speed can be improved we might as well make use of it. If anyone finds some mailing lists or internet sites that show discussion if the gcc/gnu linker speed being improved (or why it is slow) please post in this thread. If no one has even made a note to the gcc tool chain team that the linker is slow, maybe they won't improve it? Maybe they feel people are satisfied with the speed? Of course it is probably the Win32 linker that is the real slow one, and I don't know why that is - so any mailing lists threads or sites you know of please post them here and/or discuss. _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
Re: [lazarus] Help with DLL (using pchar, etc.)
Marvelous! I'll try that and it will most probably work. I'll come If you decide to use fpc 2.0.2 remember that when you build a normal lazarus GUI style application you may have to change back to your old compiler in the lazarus directory. The lazarus packages and components I think need to be recompiled with the new compiler you choose if you decide to build a gui application. Myself I built a custom version of lazarus 0.9.7 with fpc 2.0.2 and all it's components and packages. What I would do if I were you would just switch back to your old compiler when you decide to build a gui program later with results... I still don't know why your dll was working and not mine. If this is because of the smartlinking issue... well... hum... I don't know what to say. Me neither, what was the error? I was hoping it was simply because you forgot to rename mydll.dll.dll to mydll.dll or something simple like that. But I assume you renamed it and it found the DLL correctly when statically pulling it in on application loading? _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
Re: [lazarus] Help with DLL (using pchar, etc.)
Yes! This is finally working! The compiled exe with smart linking is 274kb (was 272kb without...) yet after striping the dll I get 91648 bytes exactly as your dll. And finally the dll is working with my obscure devel. language. Now, it would be great if the devel edition of fpc was working. :) Thank you very much for your help, L505, on all this issue. Try also compactSysUtils if you want a 40KB dll It is a drop in replacement for this particular situation :) See all this fooling around with compilers is why people use scripting languages and just forget about size issues - the time we've spent chasing this down, the time we spent... :) _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
Re: [lazarus] Who Discussed Linker Slowness?
An extra handicap for the linker is the fact that the windows unit, which is rather large is always smartlinked, resulting in (I estimate) ten thouands of object files (archived in the .a file). You probably won't have this amount of .o files in c programs. Vincent. Windows.ppu is about 1.692 MB in size, quite a big .ppu file libwindows.a is about 3.451 MB in size, quite a big .a file what do C programs use for the windows API interface? Isn't it a huge C header file that gets put into a .a/.o file? _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
Re: [lazarus] Help with DLL (using pchar, etc.)
later with results... I still don't know why your dll was working and not mine. If this is because of the smartlinking issue... well... hum... I don't know what to say. Me neither, what was the error? I was hoping it was simply because you forgot to rename mydll.dll.dll to mydll.dll or something simple like that. But I assume you renamed it and it found the DLL correctly when statically pulling it in on application loading? Also maybe your DLL problem is somewhat related to Tony Pelton's DLL problem he had. He said when he used Lazarus his DLL didn't work, but when he chose the FP IDE his DLL worked. Which compiler version are you using with Lazarus and which Lazarus version? To me this sounds like certain compilers don't create good DLL's but FPC 2.0.2 does. Or like you say it could also be a case of a non-smartlinked RTL causing the problem, but we could try a non-smartlinked RTL with fpc 2.0.2 and see what happens too... _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
Re: [lazarus] Help with DLL (using pchar, etc.)
Maybe having the 'mydll.compiled' file could help (if there is any)... I think this is the file that has the compiler settings. The LPI file carries the settings _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
Re: [lazarus] Help with DLL (using pchar, etc.)
As an experiment for CompactSysUtils project I started a while ago, I have used this opportunity to demonstrate why FPC should reorganize the FPC sysutils unit for better smartlinking (i.e. create just one more unit than just sysutils to take care of smartlinking). Many functions in the FPC sysutils unit do not rely on any finalization or initialization code. By simple copy and pasting some of the sysutils functions into a unit of my own, called CompactSysUtils, I have gotten the DLL down to 40KB which was previously 91KB Project files showing 40KB DLL versus 91KB DLL is here: http://z505.com/pascal/MD5Hash/MD5Hash_COMPARE.zip CompactUtils and CompactSysUtils project is here: https://opensvn.csie.org/pspcgi/psp-lib-1.5.0-devel/src/extras/CompactUtils/ In order to compile the CompactUtils version in that zip file, you will need the latest copy of the compactutils.pas and compactsysutils.pas which is located on the SVN link above. Sometimes we don't worry so much about bloat like this since today's processors are getting faster, but this one is a no brainer. There is no work to be done other than copy/paste functions and reorganize them such as I have done with CompactSysUtils project. I have also made notes about this before on the mailing lists, such as mentioning how the findpart function can be cut copied and pasted right out of the StrUtils unit so that no sysutils initialization and finalization is hauled in. Maybe people can learn from this with the lazarus project too - as I'm guessing some (not all) the reason lazarus exe's are so big is because or simple initialization/finalization bloat. Sure there are abstraction bloat that is incurred for multi-platform programming in SOME CASES, but I've just proved with above CompactUtils project that abstraction has nothing to do with the majority of the bloat in this case. Rather simple reorganization in this case, to cut the EXE and DLL in half (actually, *more* than half). So either I continue to maintain this compactutils project with my elite cutting/copying/pasting skills or the FPC team decides to reorganize sysutils at the distribution level (i.e. kill the compactutils project and just do it in the RTL itself). Also anyone wishing to participate in this compactutils project I started is welcome - I started it to gain smartlinking knowledge myself and I'm sure others could benefit from knowing more about smartlinking. _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
Re: [lazarus] Document (virus!!)
And I couldn't resist knocking you off your unix high horse. This should have been posted to pascal-other, both your message and mine. Oh, but there is no lazarus-other so it had to be said right here and now. This was just a joke, don't need to be so anal retentive. Gee, even I knew your original post was a joke... but smiles don't translate well in text. This is why I guess I've reduced my joking in the past years and have tried to be more serious in life. The problem is all jokes do have some seriousness to them Who's to say my post was not a joke too? (it was a joke, actually, I wasn't starting a flame war but rather cracking a joke about a unix freak being on a horse). If everyone jokes no one will hear the wolf cry when there is something serious being said. Reduce jokes to a minimum - don't watch comedy shows. Do programming instead. I have a tendency to joke, but I've been reducing and reducing over the past few years because I've learned that jokes are usually always negative rather than positive. _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
Re: [lazarus] Lazarus RB Edition w/Plugger
Links: Download and Info http://z505.com/cgi-bin/qkcont/qkcont.cgi?p=Lazarus-RB-Edition Direct Download http://z505.com/download/lazrb/LazRB_0.9.7Alpha.zip Is this the newest version? Where is the lazarus stuff? Mattias The latest version is on SVN.. I'm actually way behind in implementing more stuff into LazarusRB because I'm working on Plugger for the Syn Text editor too. The plug-ins that I have now, work for Syn text editor and Lazarus. Why? because I use Syn to create and edit html pages on MS Windows.. And Lazarus isn't exactly an HTML editor.. so there are some uses right there for the DLL cross-application plug-in system. I will not be continuing the LazarusRB as a separate branch forever - there are so many bug fixes that are implemented into the main Lazarus branch, that it would be silly and makes no sense for someone to make a separate long term LazarusRB branch. What will happen is either I will run patches on the latest lazarus realease (to implement plugger into the latest version of lazarus), or our two branches (main and RB) will merge together and there will be no lazarusRB branch at all. I just wanted to prove the idea of a DLL plug in system works, in addition to component plug-ins like BPL's. I feel both BPL plug-in systems and plugger systems are worth it in Lazarus, myself. Check these links for hot stuff: Latest SVN https://opensvn.csie.org/pspcgi/LazarusRB/ Showing lazarusrb in action: http://prdownloads.sourceforge.net/pascal-webdev/Winkpsp_vid1.zip?download Showing a lazarus plug-in working in a Syn editor too: http://z505.com/syn/winkSyn_2.htm _ To unsubscribe: mail [EMAIL PROTECTED] with unsubscribe as the Subject archives at http://www.lazarus.freepascal.org/mailarchives