Re: [Lazarus] Gecko on lazarus
On Thu, Nov 12, 2009 at 12:14:05AM +0200, Graeme Geldenhuys wrote: 2009/11/11 Hess, Philip J pjh...@purdue.edu: No idea. Maybe the lhelp develop knows the answer. I doubt the Mac help viewer can. After all, CHM is a Microsoft format. Hasn't CHM been abandoned by Microsoft due to security concerns? It has been replaced by Microsoft Help 2 - yet another format. But CHM is still popular and used often. It has only been replaced in Visual Studio and e.g. Delphi. The average app doesn't (and can't) use MSHELP2, since it needs the MS SDK to be installed. Note that this is all afaik, if sb has more info, please share. MSHTML3 is pegged for the next VS in 2010, but it seems it has postponed to later VS versions before when the release date came close, so don't take that to literally. As for the security concerns - in that case Microsoft should drop Windows, Office, IE, etc... ;-) If there is any truth in it (I haven't seen anything like that), it is probably the use of IE in the viewer, not the format itself. If there is a format problem, it is that it is an archive, just like ZIP is. You can stuff anything in it, and if you can get the viewer to interpret it, you can instrument it. -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] Gecko on lazarus
On Thu, Nov 12, 2009 at 12:10:46AM +0200, Graeme Geldenhuys wrote: To be fair to all those users (including me). There was no mention that LHelp is only meant for Lazarus and FPC documentation. Is is said to be a CHM help viewer, so we use it as such. Especially Linux users that might have Windows apps installed and running via WINE. A bit a strange view, since it is a helpviewer designed to integrate with lazarus. It was never explicitely billed as being universal. There is kchmviewer, gnorpm, xchm and whatever for that. Note btw that it could also be used/retargeted to provide application help. And sb wanting very rich content or control over rendering (CSS etc) might want to use a full browser. But I assume that is the exception rather than the rule, specially in the forseeable future. But a option in LHelp to switch rendering engines would be good for compatibility. Alternatively simply point them to the Firefox add-on which allows Firefox to read CHM files directly. All viewing problems solved - but then still lacks searching and Index support. And, even more importantly, being instrumented by the IDE. The most important function of Lazarus help is simply providing choices when sb presses F1 in the source. -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] Gecko on lazarus
Marco van de Voort wrote: It has only been replaced in Visual Studio and e.g. Delphi. The average app doesn't (and can't) use MSHELP2, since it needs the MS SDK to be installed. Visual Studio and Office as for as I know (but then I don't use Windows so don't quote me on this). Also, Microsoft loves to use VS and Office as a launch pad for new features and then later become standard in Windows. So I'm pretty sure MSHelp2 or 3 will be the next help format for Windows. If there is a format problem, it is that it is an archive, just like ZIP is. You can stuff anything in it, and if you can get the viewer to interpret it, you can instrument it. You did note the simley face, right? But yes I agree, CHM is just some glorified archive. Anyway, what really annoys me is that now even Google's Gmail considers CHM an executable. (Maybe because of IE bugs and that JavaScript is allowed inside CHM content). You cannot attach a CHM in Gmail, just like you cannot attached a .EXE in Gmail. F**ken annoying!!! There are much better ways to curb viruses from spreading that limiting the user to what attachments they may or may not use in emails. Regards, - Graeme - -- fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal http://opensoft.homeip.net/fpgui/ -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] IFDEF for both Windows and WinCE
Marco van de Voort wrote: As far as I can see it (*), CE does define windows and does not define mswindows. (*) for quick lookup of such details, have a look at the platform definitions in compiler/systems/i_* Thanks for that tip. It seems IFDEF WINDOWS will cover both cases. Regards, - Graeme - -- fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal http://opensoft.homeip.net/fpgui/ -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] Lazarus Examples
Brian Prentice schrieb: Thank you for your replies on this matter. No one addressed the underlying problem here. I believe that all the examples should be run prior to a major release and those that do not run should be removed. This should be a significant part of regression testing. This was clearly not done on the Intel Mac version and from your replies has never been done for this version. The problem is: who should run the tests? Not every developer of an example can test his code on all target platforms. Removing examples, that do not run on a specific platform, IMO is no reasonable decision. Instead a general README file could list the platforms, on which every sample application has been tested, with what result. My original request repeated below remains unanswered. I have recently installed fpc 2.2.4 and lazarus 0.9.28.2 on my intel mac which is running OS X 10.5.8 from here: Since such hardware and OS is not available to most example developers, you could test all sample applications and report. I'm willing to update the README files accordingly. DoDi -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] Lazarus Goal
I did test the program with version 0.9.28.2 on my Mac. It seems that the mouse events and status bar don't work correctly. Since the menus on Widows XP and OS X behave differently, the program needs to be rewritten to use buttons rather than menus to control the simulation and use menus to simply open dialogs. You abandoned the whole program that has been written in pascal just because UI issue that actually can be solved? Wow! I needed a CA simulator for my Mac and my original plan was to use Lazarus and FPC, but since that didn't work I wrote this Java program: Good for you then. Obviously you are not yet ready to join a free open source project driven by community. ;) -- -Bee- ...making buzzes at http://twitter.com/beezing ...writing stories at http://beeography.wordpress.com -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] Lazarus Goal
2009/11/12 Bee Jay bee.ogra...@gmail.com: I did test the program with version 0.9.28.2 on my Mac. It seems that the mouse events and status bar don't work correctly. Since the menus on Widows XP and OS X behave differently, the program needs to be rewritten to use buttons rather than menus to control the simulation and use menus to simply open dialogs. You abandoned the whole program that has been written in pascal just because UI issue that actually can be solved? Wow! Every issue can be solved, some of us just don't have days/weeks/months to wait for it to be solved and some of us can't solve it by ourselves. Especially if someone else solved it elsewhere already. I had to port some pascal code a while ago because it didn't work properly on a certain architecture. That's life. I needed a CA simulator for my Mac and my original plan was to use Lazarus and FPC, but since that didn't work I wrote this Java program: Good for you then. Obviously you are not yet ready to join a free open source project driven by community. ;) Can you explain to me exactly how you came to this conclusion? You think java doesn't have a community? Henry -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] Lazarus Goal
2009/11/11 Brian Prentice bprent...@webenet.net: I'll take a look at it tonight on my Macs. Since you're [thankfully] not using the Win API anywhere, this app really should work. If not, then that likely means something not right in the underlying Carbon-based widgetset used on OS X. Note that it's still considered beta. If we can track down what doesn't work, a bug report should be filed. Brian, i've took the liberty to make the sources friendlier to Carbon. Here's the fixed version: http://havefunsoft.com/fpc/LazarusSquareCell_macfixed.zip You can simply place squares around the field and run them with Step or Start menu. I've added additional Invalidate calls in TDisplayForm and DisplayPaint for FormPaint event It has been done to satisfy Mac OS X demand: draw only inside OnPaint event. thanks, dmitry -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
[Lazarus] DockSite example updated
In order to unify drag/dock accross platforms, I added an pin grabber to the dockable forms. That icon also could be placed into a window title bar... The View forms now are freely dockable and undockable. All forms are minimized when the main form is minimized, using uMiniRestore. Now I also hit the parameter error, dunno why everything compiled before. This feature doesn't work properly on Linux - the forms move back to their original location :-( Any further comments? DoDi -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] DockSite example updated
Zitat von Hans-Peter Diettrich drdiettri...@aol.com: In order to unify drag/dock accross platforms, I added an pin grabber to the dockable forms. That icon also could be placed into a window title bar... The View forms now are freely dockable and undockable. All forms are minimized when the main form is minimized, using uMiniRestore. Now I also hit the parameter error, dunno why everything compiled before. This feature doesn't work properly on Linux - the forms move back to their original location :-( Any further comments? I tested elasticsite/SiteTest under gtk2: There is a caption behind the lower splitter - you can see the pixels of the letters. Feature or bug? When moving the left splitter to the right, the window enlarges to the right. Feature or bug? Moving the right splitter to the left, enlarges the window to the right. Bug or feature? Using the statusbar drag area to enlarge, does not enlarge the first time. The window shrinks back to the first size. Further drags enlarges/shrinks the window. Bug or feature? Mattias -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
[Lazarus] QT binding works!
Hi! There are often complaints and questions about things that don't work. Now some positive feedback for a change: I compiled the whole Lazarus to use QT widgets and it works! Yes. I didn't have very high hopes because QT bindings are not ready and Lazarus is complicated. Still, I don't see any feature missing or working wrong. Only in About dialog the scrolling texts seem to scroll while the pane is invisible, in GTK2 version they started from top when you selected the pane. Not important really. What more, I got rid of a window handling problem on my KDE desktop. All Lazarus windows in GTK2 version got minimized when I visited another virtual screen in KDE. Now they stay visible! Must be because KDE is made with QT itself. I even have the QT file open dialog now. Single click now opens a sub- directory, no more stupid double-clicks. (Double-click is a UI design bug anyway as we all know). I start to use this QT version exclusively unless there are some hidden problems with it. (?) Juha Manninen -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] QT binding works!
Quoting Juha Manninen juha.manni...@phnet.fi: Hi! There are often complaints and questions about things that don't work. Now some positive feedback for a change: I compiled the whole Lazarus to use QT widgets and it works! Yes. Congratulations ! :) I didn't have very high hopes because QT bindings are not ready and Lazarus is complicated. Still, I don't see any feature missing or working wrong. Only in So it isn't so complicated ? :) About dialog the scrolling texts seem to scroll while the pane is invisible, in GTK2 version they started from top when you selected the pane. Not important really. What more, I got rid of a window handling problem on my KDE desktop. All Lazarus windows in GTK2 version got minimized when I visited another virtual screen in KDE. Now they stay visible! Must be because KDE is made with QT No, it's LCL bug. Try any GTK2 application and you'll see. itself. I even have the QT file open dialog now. Single click now opens a sub- directory, no more stupid double-clicks. (Double-click is a UI design bug anyway as we all know). I start to use this QT version exclusively unless there are some hidden problems with it. (?) Well, just fill bug report if you find anything bad. zeljko -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] Mac OS X 6.2
Hello John Lazarus uses symbol link to maintain MacOSX bundle. The project layout is the following: project (executable binary) project.app (the bundle) project.app/Content/MacOS/project (symbolic link to project binary outside the bundle) When you copy the bundle via Finder, the symbolic link is copied instead of the file. So the bundle at the new location cannot be executed, because the link inside of the new bundle points to a wrong place. To solve the problem you need to replace a symbolic link in the bundle with the project binary. thanks, dmiry -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] Mac OS X 6.2
I.e., prior to any distribution of the bundle, be sure to do something like this: rm myapp.app/contents/macos/myappexec cp -p myappexec myapp.app/contents/macos The executable is created back in the main project folder with a symlink pointing to it from within the .app bundle to simplify development. When you distribute you have to replace the symlink with the actual executable file. Thanks. -Phil From: dmitry boyarintsev [skalogryz.li...@gmail.com] Sent: Thursday, November 12, 2009 1:49 PM To: Lazarus mailing list Subject: Re: [Lazarus] Mac OS X 6.2 Hello John Lazarus uses symbol link to maintain MacOSX bundle. The project layout is the following: project (executable binary) project.app (the bundle) project.app/Content/MacOS/project (symbolic link to project binary outside the bundle) When you copy the bundle via Finder, the symbolic link is copied instead of the file. So the bundle at the new location cannot be executed, because the link inside of the new bundle points to a wrong place. To solve the problem you need to replace a symbolic link in the bundle with the project binary. thanks, dmiry -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] QT binding works!
Juha Manninen wrote: I compiled the whole Lazarus to use QT widgets and it works! Yes. I've been wanting to do the same, though I failed at my previous attempt. What did you do to make it work? Are there guidelines somewhere? What versions are you using? Thanks, David -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] Lazarus Goal
2009/11/12 Brian Prentice bprent...@webenet.net: http://linuxenvy.com/bprentice/Lazarus/WindowsXP.jpg http://linuxenvy.com/bprentice/Lazarus/WindowXP.jpg -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] Lazarus Goal
dmitry boyarintsev wrote: 2009/11/12 Brian Prentice bprent...@webenet.net: There is one issue which is pertinent to this topic though. http://linuxenvy.com/bprentice/Lazarus/OSX.jpg and http://linuxenvy.com/bprentice/Lazarus/WindowsXP.jpg show the Selection Control Dialog displayed on each operating system. I would be interested in your opinion on the differences. 2. Font size is different for both system. It can even differ within the same OS. Take Windows: users can set different dpi for their screen. Any hardcoded Size of any control that displays text is very likely to break. There's no proper aligner developed for the IDE or LCL, to align controls properly. So the inteface would look like a candy. In my apps i'm doing this re-aligment manually on the application start. You can get pretty good aligning in many cases by using autosize and anchors. Martin -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] QT binding works!
On torstai, 12. marraskuuta 2009 21:05:19 David Emerson wrote: Juha Manninen wrote: I compiled the whole Lazarus to use QT widgets and it works! Yes. I've been wanting to do the same, though I failed at my previous attempt. What did you do to make it work? Are there guidelines somewhere? What versions are you using? I am using the latest development version from SVN. First I built just LCL and tested with my own program: In Tools - Configure Build Lazarus - Quick Build Options tab I selected Build LCL and Target = qt (beta). In Advanced Build Options tab the settings changed accordingly. Then Build and Lazarus restarts itself. In my test project's Compiler Options - Paths I set LCL Widget Type as qt (beta). Then later I built the whole Lazarus: In Tools - Configure Build Lazarus - Quick Build Options tab I selected Build All and IDE = qt (beta). In Advanced Build Options tab I selected not to build Examples. With Packages is selected already but I also selected Clean all to be sure. I also have Options: -O2 -g- -Xs to optimize and strip debug info but it should work also without optimizing. Then just build. Lazarus opens with QT widgets and everything works! I guess it would work also in one compilation but I did it in 2 phases. I highly recommend QT widgets especially if you use KDE. Regards Juha Manninen -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] Lazarus Goal
On Fri, Nov 13, 2009 at 12:12 AM, Mattias Gaertner nc-gaert...@netcologne.de wrote: The designer uses ExcludeClipRect to clip child controls. Maybe there is a bug in the carbon interface? It can be. Needs testing. -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
[Lazarus] Lazarus CCR files page
Hi I'm having no luck accessing the Lazarus Code and Component Repository on Sourceforge. Anyone else having problems? Howard -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] Lazarus Goal
My point about showing the differences in the dialogs, one acceptable and one clearly not acceptable, is that the solution seems to require the construction of two dialogs one for OS X and one for WindowsXP. Perhaps I'm wrong here but if I'm right this violates the Lazarus and FPC goal of write once. I don't want to start a war here but as you probably know Java has solved this problem nicely with layout managers. If layout managers were implemented in Lazarus the IDE would also be simpler, an additional advantage. Earlier in this thread it was stated that when designing an application consideration should be given to the differences in the underlying operating systems. This might be true but if you do this you severly weaken the stated goal which would then read something like: 'Lazarus and Free Pascal aim to be write once, compile anywhere for those programs which only use the supported operating system features that share a common design'. Surely a better approach for Lazarus and FPC is to hide operating system difference from users. Brian -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] Lazarus Goal
Brian Prentice schreef: My point about showing the differences in the dialogs, one acceptable and one clearly not acceptable, is that the solution seems to require the construction of two dialogs one for OS X and one for WindowsXP. Perhaps I'm wrong here but if I'm right this violates the Lazarus and FPC goal of write once. I don't want to start a war here but as you probably know Java has solved this problem nicely with layout managers. Lazarus solves this problem with autosizing and achors: http://wiki.lazarus.freepascal.org/Autosize_/_Layout http://wiki.lazarus.freepascal.org/Anchor_Sides http://wiki.lazarus.freepascal.org/IDE_Window:_Anchor_Editor Vincent -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] Lazarus Goal
On Fri, Nov 13, 2009 at 12:12 AM, Mattias Gaertner nc-gaert...@netcologne.de wrote: The designer uses ExcludeClipRect to clip child controls. Maybe there is a bug in the carbon interface? Fixed in r22551 thanks, dmitry -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] Lazarus CCR files page
Hello Lazarus-List, Thursday, November 12, 2009, 11:08:13 PM, you wrote: HPC I'm having no luck accessing the Lazarus Code and Component Repository HPC on Sourceforge. Anyone else having problems? No problem by my side a few minutes ago, but experienced a 500 internal server in other sourceforge projects. Check just now using https://sourceforge.net/projects/lazarus-ccr/ -- Best regards, JoshyFun -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] Lazarus Goal
Brian, Is there some reason why you haven't set the font in that dialog? Try Arial10. Thanks. -Phil From: Brian Prentice [bprent...@webenet.net] Sent: Thursday, November 12, 2009 5:48 PM To: Lazarus mailing list Subject: Re: [Lazarus] Lazarus Goal My point about showing the differences in the dialogs, one acceptable and one clearly not acceptable, is that the solution seems to require the construction of two dialogs one for OS X and one for WindowsXP. Perhaps I'm wrong here but if I'm right this violates the Lazarus and FPC goal of write once. I don't want to start a war here but as you probably know Java has solved this problem nicely with layout managers. If layout managers were implemented in Lazarus the IDE would also be simpler, an additional advantage. Earlier in this thread it was stated that when designing an application consideration should be given to the differences in the underlying operating systems. This might be true but if you do this you severly weaken the stated goal which would then read something like: 'Lazarus and Free Pascal aim to be write once, compile anywhere for those programs which only use the supported operating system features that share a common design'. Surely a better approach for Lazarus and FPC is to hide operating system difference from users. Brian -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] Gecko on lazarus
Graeme Geldenhuys wrote: 2009/11/11 Hess, Philip J pjh...@purdue.edu: No idea. Maybe the lhelp develop knows the answer. I doubt the Mac help viewer can. After all, CHM is a Microsoft format. Hasn't CHM been abandoned by Microsoft due to security concerns? It has been replaced by Microsoft Help 2 - yet another format. But CHM is still popular and used often. As for the security concerns - in that case Microsoft should drop Windows, Office, IE, etc... ;-) Just to add some wood to the fire. I've implemented locally a reader for MSHelp 2 files. It only can read the file format and extract files so far. It doesn't yet know how to read the internal files that contain the toc, index or any other feature of the format(and may never if I don't find a spec). :) Regards, Andrew -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
[Lazarus] Documentation of Lazarus internals
Hi, I am trying to learn how Lazarus works. Is there any source code documentation that is more detailed than the rather abstract level wiki pages but less detailed than the source code itself? Like class diagrams? Other UML style diagrams? Source code comments? FPDoc XML files? Anything? For example Codetools seems to be a complicated piece of SW which I would like to understand. I only found a brief page: http://wiki.lazarus.freepascal.org/Codetools and then I find: lazarus/docs/LazarusIDEInternals.pdf which don't really help much. It would be nice to look at a class diagram, then a use case diagram and then maybe a sequence diagram to get an idea of how it works and which class does what. Then read the class and method level documents made with FPDoc. And then finally read source code when the big picture is clear. If there is no such documentation ... well, then I must say that my own programs are well documented after all. I thought I had a problem with poor documentation. Regards, Juha Manninen -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] Gecko on lazarus
Andrew Haines schrieb: Just to add some wood to the fire. I've implemented locally a reader for MSHelp 2 files. It only can read the file format and extract files so far. It doesn't yet know how to read the internal files that contain the toc, index or any other feature of the format(and may never if I don't find a spec). :) I wrote an HH2 helpfile decompiler some time ago. I can try to find the sources, if you're interested in it. DoDi -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
[Lazarus] Crossplatform Keypress
Would Lazarus / Freepascal have a cross platform ability to send keypress to keyboard buffer ? - or even just for Linux :) I need to send keys to external apps, not just my own Laz app Thanks - SteveG -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] Crossplatform Keypress
On Friday 13 November 2009 11:11:33 Martin wrote: Never used it myself, but if I recall correctly: components\mouseandkeyinput SteveG wrote: Would Lazarus / Freepascal have a cross platform ability to send keypress to keyboard buffer ? - or even just for Linux :) Thanks Martin - will check it out now -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] Lazarus Goal
This indeed violates that goal, but please don't evaluate lazarus as a complete product. There is a bug tracker, with very friendly and responsive developers, as you have noticed. That's why I said he's not ready to join an open source project _driven_ by community. I never mean to discourage him, but I think one who would jump to _native_ cross platfrom programming, s/he had to be ready to face the compatibility problem. It's the consequences. Even Java can't really solve the problem completely. 'Lazarus and Free Pascal aim to be write once, compile anywhere for those programs which only use the supported operating system features that share a common design'. And I would've thought that this was obvious. There are just some things you cannot abstract/emulate. Exactly. Even those platforms don't have same thought about what is common. What Java does is nothing more than standarized the common things within its own environment. But, whether it's common to the native platform, it's very much questionable. Obviously he can't see the obvious. -- -Bee- ...making buzzes at http://twitter.com/beezing ...writing stories at http://beeography.wordpress.com -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
[Lazarus] cross platform [Re: Lazarus Goal]
Bee Jay wrote: 'Lazarus and Free Pascal aim to be write once, compile anywhere for those programs which only use the supported operating system features that share a common design'. And I would've thought that this was obvious. There are just some things you cannot abstract/emulate. Exactly. Even those platforms don't have same thought about what is common. What Java does is nothing more than standarized the common things within its own environment. But, whether it's common to the native platform, it's very much questionable. Obviously he can't see the obvious. Well the understanding of cross platform is quite varying. The base obviously is that one source code can be executed on all of the supported platforms. On top of this, there are at least 2 different understanding: 1) the application looks/feels like any application on that platform, it uses the platforms widgets, and the guidelines for the platform. This means that the qpplication will look and feel different on every platform 2) The application looks and ffels the same on all platforms. It completely ignores the guidelines and standards of the platform 1) is what the LCL aims for. It is more enduser friendly, but requires more work by the developper 2) is what Java and fpgui (and afaik msegui) aim for. It is easier for the developper. But the enduser will find an application that is different to any other app he runs on his PC (and therefore harder to use) Martin -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] cross platform [Re: Lazarus Goal]
Well the understanding of cross platform is quite varying. The base obviously is that one source code can be executed on all of the supported platforms. In my understanding, there are 3 kinds of cross platform implementation: 1. Cross platform is implemented within an virtual environment both the binary and the widgets. The application is run on top of it. The example is Java. 2. Cross platform is implemented in full native ways both in the binary and the widgets. The application is truly native application on each platform. The example is FPC/Lazarus. 3. Cross platform is implemented natively on the binary but not on the widgets. The application execute natively without any virtual environment but it losses its native look-and-feel (or at best, emulated). The example is fpGUI, mseGUI, Qt, etc. Since FPC/Lazarus in on the second type of implementation, we (both the developers and users) should be aware (and understood) of consequences of the approach. Expecting FPC/Lazarus to act like the first type of implementation is ridiculous. This is what the thread starter didn't understand on the first place, and blaming it on approach taken by FPC/Lazarus. 1) is what the LCL aims for. It is more enduser friendly, but requires more work by the developper Yes. Ideally, again I said ideally which mean it hardly can be achieved, we (developers) should fullfil anything our users want. Whether it's difficult or not, it should be our problems, not theirs, because the users who pay the bill. Sometimes we and our users make some compromises for whatever reasons. :) -- -Bee- ...making buzzes at http://twitter.com/beezing ...writing stories at http://beeography.wordpress.com -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] Lazarus Goal
Brian, There are two problems with this dialog, one small, one bigger. The small problem, easily corrected, is that it's too small and you didn't leave space for possible differences in fonts between platforms or translated text that takes up more horizontal space than English. Consideration for both of those things are part of normal dialog box design. The horizontal space take up by the button is completely wasted. Why not widen the button and put the label on it as a caption the way buttons normally do? Then set the dialog's font to Arial 10 or 11 and everything will be fine on both Windows and OS X. Well, almost... The bigger problem is that this dialog doesn't make much sense. At first glance I couldn't figure out what it was supposed to do until I realized that the little squares were buttons. But without captions. And a Save button in the list there too? Very odd and dare I say non-standard. Maybe a toolbar at the top would do better. Then standardize the menus and use the toolbar for all manipulation rather than a combination of menu bar items and popup dialog. Thanks. -Phil From: Brian Prentice [bprent...@webenet.net] Sent: Thursday, November 12, 2009 5:48 PM To: Lazarus mailing list Subject: Re: [Lazarus] Lazarus Goal My point about showing the differences in the dialogs, one acceptable and one clearly not acceptable, is that the solution seems to require the construction of two dialogs one for OS X and one for WindowsXP. Perhaps I'm wrong here but if I'm right this violates the Lazarus and FPC goal of write once. I don't want to start a war here but as you probably know Java has solved this problem nicely with layout managers. If layout managers were implemented in Lazarus the IDE would also be simpler, an additional advantage. Earlier in this thread it was stated that when designing an application consideration should be given to the differences in the underlying operating systems. This might be true but if you do this you severly weaken the stated goal which would then read something like: 'Lazarus and Free Pascal aim to be write once, compile anywhere for those programs which only use the supported operating system features that share a common design'. Surely a better approach for Lazarus and FPC is to hide operating system difference from users. Brian -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] Gecko on lazarus
Hans-Peter Diettrich wrote: I wrote an HH2 helpfile decompiler some time ago. I can try to find the sources, if you're interested in it. Yes I would be interested in that, thanks. Currently I can extract any file from the hh2 file. I just don't know the file format of the internal files for the toc etc. My motivation is to read lit files (ebooks) which use the same format as mshelp2 but would certainly be interested in seeing how to read the files specific to the toc, index, and search db of help files. I have implemented everything documented on this page: http://www.russotto.net/chm/itolitlsformat.html Regards, Andrew -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] Gecko on lazarus
Graeme Geldenhuys wrote: Zaher Dirkey wrote: TWebBrowser in Delphi has the same dependencies, but IE already included in the system Windows. And that being the BIG difference! No extra deployment libraries needed when using TWebBrowser. This will not be the case with a Gecko engine. so what happens on other OS'? what is used, if anything, with TWebBrowser on them? mac, *nix, bsd, etc... -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
[Lazarus] Ubuntu package is missing recommends
Hello, shouldn't the lazarus package recommend the libgtk2.0-dev package? Regards, Flávio -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] Ubuntu package is missing recommends
On Fri, 13 Nov 2009 03:10:21 -0300 Flávio Etrusco flavio.etru...@gmail.com wrote: Hello, shouldn't the lazarus package recommend the libgtk2.0-dev package? It should 'depend' on it. Mazen? Mattias -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] Documentation of Lazarus internals
On Fri, 13 Nov 2009 02:19:35 +0200 Juha Manninen juha.manni...@phnet.fi wrote: Hi, I am trying to learn how Lazarus works. Is there any source code documentation that is more detailed than the rather abstract level wiki pages but less detailed than the source code itself? Like class diagrams? Other UML style diagrams? Source code comments? FPDoc XML files? Anything? For example Codetools seems to be a complicated piece of SW which I would like to understand. I only found a brief page: http://wiki.lazarus.freepascal.org/Codetools and then I find: lazarus/docs/LazarusIDEInternals.pdf which don't really help much. There are examples in components/codetools/examples. It would be nice to look at a class diagram, then a use case diagram and then maybe a sequence diagram to get an idea of how it works and which class does what. Can you suggest tools to create them? Then read the class and method level documents made with FPDoc. And then finally read source code when the big picture is clear. If there is no such documentation ... well, then I must say that my own programs are well documented after all. I thought I had a problem with poor documentation. What do you want to do? Maybe I can start the documentation with that. Mattias -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] Lazarus Goal
Brian Prentice wrote: probably know Java has solved this problem nicely with layout managers. If layout managers were implemented in Lazarus the IDE I fully agree, layout managers (or even only one layout manager) would solve this problem. LCL has Anchors (a lot more advanced compared to say Delphi 7's anchors), which goes some way to solve the problem, but it is still a hit and miss case - as Lazarus proves. Constantly Lazarus dialogs are broken, due to components overlapping, text being clipped etc... This gives the application a very unpolished look. A layout manager normally solves layout problems, preferred sizes, including handling size changes due to language selections etc.. I am working on a solution though, but unfortunately the work in progress is very slow at the moment due to day job (work) related deadlines. I started implementing the Java MiG Layout Manager - first to be used with fpGUI Toolkit. But the original design of MiG Layout allows for other GUI toolkits to plug in very easily with minimal code needed. I will try and duplicate that design, so that MiG Layout Manager can work with fpGUI and LCL. MiG Layout is a very advanced layout manager, yet very easy to use. It can reproduce any GUI layout without the need for nested layout managers. All accomplished with just one single layout manager per form. There was actually a contest about this and MiG passed with flying colors in each test. Mig Layout even manages platform preferred button orders, positioning can be specified in any units, not just pixels (eg: cm, inches, meters etc.) it's dpi independent. You can even toggle a debug mode at runtime to see how MiG Layout manages the components. For more information about MiG Layout, have a look at it's home page. I would also suggest you download the Swing Demo and try it out. It's a fantastic piece of engineering. http://www.miglayout.com/ Regards, - Graeme - -- fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal http://opensoft.homeip.net/fpgui/ -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] cross platform [Re: Lazarus Goal]
Martin wrote: 2) is what Java and fpgui (and afaik msegui) aim for. It is easier for the developper. But the enduser will find an application that is different to any other app he runs on his PC (and therefore harder to use) I guess we will have to agree to disagree on the part that it's harder to use. :-) Users are not as dumb and inflexible as most developers make them out to be. End-users can adapt quite easily. Some quick examples were applications don't follow the look feel rules of the platform, yet users have no problems in using them. * Windows Media Player. * latest Microsoft Office with it's new menu+toolbar design * Pixel image editor. It fakes native look. But looking closer at it, it is quite different to native platforms, yet users don't seem to have any issue with using it. * And the biggest one of them all. The INTERNET. Websites and Web Applications like Gmail, Facebook etc... It adheres to NO single platform, yet billions of users use the internet every day and don't have problems using it. If you can read the screen, you can use the interface. Regards, - Graeme - -- fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal http://opensoft.homeip.net/fpgui/ -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] Gecko on lazarus
waldo kitty wrote: so what happens on other OS'? what is used, if anything, with TWebBrowser on them? mac, *nix, bsd, etc... In Delphi's case it's quite simple. No other platform is supported other than Windows. As for LHelp, I think the current custom implemented HTML viewing widget is the best solution at the moment. No extra libraries and it will work on all platforms. But as already discussed. If Gecko is to be used in LHelp, it should be a user selectable option - selecting between Gecko or the custom HTML component. Regards, - Graeme - -- fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal http://opensoft.homeip.net/fpgui/ -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] QT binding works!
On Thursday 12 November 2009 20:05, David Emerson wrote: Juha Manninen wrote: I compiled the whole Lazarus to use QT widgets and it works! Yes. I've been wanting to do the same, though I failed at my previous attempt. What did you do to make it work? Are there guidelines somewhere? What versions are you using? http://wiki.lazarus.freepascal.org/index.php/Qt_Interface -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] cross platform [Re: Lazarus Goal]
Graeme Geldenhuys wrote: Martin wrote: 2) is what Java and fpgui (and afaik msegui) aim for. It is easier for the developper. But the enduser will find an application that is different to any other app he runs on his PC (and therefore harder to use) I guess we will have to agree to disagree on the part that it's harder to use. :-) Users are not as dumb and inflexible as most developers make them out to be. End-users can adapt quite easily. Some quick examples were applications don't follow the look feel rules of the platform, yet users have no problems in using them. * Windows Media Player. * latest Microsoft Office with it's new menu+toolbar design * Pixel image editor. It fakes native look. But looking closer at it, it is quite different to native platforms, yet users don't seem to have any issue with using it. * And the biggest one of them all. The INTERNET. Websites and Web Applications like Gmail, Facebook etc... It adheres to NO single platform, yet billions of users use the internet every day and don't have problems using it. If you can read the screen, you can use the interface. I happen to know those users you do not name. Example: Learned IE, now struggling with firefox. But the very best (and it is a true story, I happened to witness myself: A user who had only learned one (custom, none standard interface) only keyboard driven application (which was at his place of work). This users happened to accidentally touch the mouse, and click the desktop. After that the application he used no longer responded to keystrokes. He called tech support, reporting his PC had crashed. Those users exist too. But of course, user interface is more that just using a specific set of widgets. And of course a custom widget set, with a well thought through command hierachy, offering the propper commonds at the right time, is a hundred times better than using the default widgets, but throwing all available commands into one or 2 unsorted menus. Martin -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus