Connect Delphi XE OSX Firemonkey application with SQLite database - macos

I need to convert applications wrote in Delphi XE3 to use it on a Mac OSX.
I use for this applicatiopn database SQLite but i cannot found firemonkey compatible components that i can use to connect with my databases.
How can i do?
Thank you

If you are talking about the high-level Delphi database components, then I cannot help you, but if it is about low level database access, without using the Delphi database components, here is what I did:
There is a SQLite interface included with Firemonkey. Include "System.Sqlite", in your uses section. I have only focused on iOS, which does not allow dynamic libraries, so the Firemonkey implementation comes in handy, as it automatically links the SQLite libraries into the executable.
I re-used and modified the SQLite3Wrap.pas, from my previous SQLite wrapper, to use the Firemonkey library and to make it work with NEXTGEN. So far it seems to work.

If you need to connect from Delphi XE3 to SQLite on Mac OSX, then you can use LiteDAC for this because these components are fully compatible with Firemonkey and support Mac OSX.

Related

Easy GUI programming in Mac OS X. Targeting Windows Platform

I have a friend who has an entry-level background in programming and is looking for a free GUI framework (IDE, GUI toolkit and GUI designer ) that:
He can use on Mac OS X to build Windows applications
It's very easy to use.
He is not interested in becoming a programmer, but would like to build an application for his work (not CS-related).
What are some good GUI frameworks/prog. languages he can use?
Qt including Qt Creater and Qt Designer is worth a try.
Especially, if your app should finally run cross-platform, on phones or on other embedded devices. Qt natively supports C++, but can also be used with 3rd-party extensions with Python (PyQt) and probably other languages.
On a Mac I have to recommend making Cocoa applications in Xcode written in Objective-C. Xcode is free to download and use, you pay if you want to submit applications to the Mac App Store.
I personally use Xcode every day and I think it's a great IDE. Currently has compiler support for Obj-C, C++, C and maybe more (not sure). More importantly for your needs, Xcode does a great job of integrating your code with its build in "interface builder" to help you quickly and easily create a nice UI.
NOTE: Xcode includes a new compiler feature (ARC) Automatic Reference Counting which is create for a new user. You can learn the language without having to worry about manual memory management.
Your friend should consider using PySide, a Python binding for the Qt GUI framework already mentioned.
With PySide you can use the Qt tools to create GUI elements interactively
and code your application logic in Python, which is a language often appreciated by non-programmers (and programmers too!) for its simplicity and intuitiveness.
Xcode includes a WYSIWYG editor for native controls and views. This was formerly a separate program called Interface Builder, but the editor was moved into the Xcode IDE at version 4.
AppKit is the framework it uses in most cases -- that's Objective-C. It's well supported. Your friend can also use it for source code editing and building and debugging apps. If he wants to write UIs programmatically, Xcode and AppKit are also good options.

What are some other comparable products to RealBasic?

I'm looking to get something that can create apps for Mac and Windows. It also seems that RealBasic can also create applications that have some sort of SQLLite DB built in. This is nice for standalone apps that need to save state/data.
I have Flash, which can create executables for Mac and Windows, but it doesn't have the easy database packaging or integration.
What are some other comparable products like RealBasic?
You can check out LiveCode
I do not have any experience using it but it also claims to support cross platform application development across Mac / Windows / Linux etc
Also, i think this product is what used to be called "Revolution" so it has been around atleast for a few years now - Revolution has been around since before 2001 to the best of my knowledge
The main problem with using Java is that the UI won't have the native look and feel of the platform it's running on. Sometimes that won't matter. But I've found that for most endusers the UI is a big deal.
Contrary to the above answer, RealBasic has never used an "interpreted runtime". It's compiled to machine code and linked to the runtime. These days it's compiled into LLVM instructions first before being compiled into machine code. So it's definitely faster than Java. It's main weakness seems to be the stigma attached to any language based on Basic.
I was using RealBasic for many years, due to its cross-platform capabilities. RealBasic was very long the only product that really managed both worlds.
With OS X 10.4 JAVA became a real alternative for RealBasic. On Windows JAVA was running well for several years, and with 10.4 it was also running well on OS X now.
The only thing with JAVA is: You need to have a JRE on the target system (OS X always has, Windows usually has but not always) - that is the only bad thing about JAVA. RealBasic is also "only an Interpreted runtime" - but it brings it's runtime in the binary, what on the other hand makes RealBasic .exe really huge if you compare them to a VB-project.
With 10.4 I decided to change to JAVA for Crossplatform-Development and from my point of view today, it was the best decission I could make.
You can try with Adobe Flex (now Apache Flex)
Flex for Web Apps (RIA apps) using web services (php, coldfusion, java, asp.net, etc)
AIR for Desktop (Windows, Mac)
AIR for mobile (Android, iOS, BlackBerry)
if you use AIR, then you need install AIR runtime
sorry for my bad english

Is it possible to write shared libraries between iPhone, Android, Blackberry, Mac and Windows?

I'm tasked with "porting" a few apps from a Windows environment to various mobile platforms and Mac as well.
I plan on writing MVC patterned apps in which I write as many controllers as I can in some sort of universal library, probably in C or C++. Then writing the views in various choice languages (Objective C, Java, .NET, whatever) for the target OSes.
I've never attempted anything like this before, so my questions are: Is it possible to write and compile one library that can be used on iPhone, Android, Blackberry, Windows and Mac? Is it even wise to try this?
I understand that certain native methods simply won't be available on each platform.
You can create a library whose source code is portable, assuming that you properly abstract away any platform-dependent calls. You can't, however, create such a library, compile it, then use it anywhere; you'll have to compile it for each platform.
Your should take a look at the Mono Project. http://www.mono-project.com
...more specifically at :
MonoTouch: To develop iPhone applications in .NET
MonoDroid (BETA): To develop Android applications in .NET
Mono plugin for MeeGo: To develop MeeGo applications in .NET
And you know that you can develop on Windows Mobile in .NET already.
I've haven't found anything related to BlackBerry yet.
There are services like Rhomobile and Appcelerator which will allow you to do this sort of cross compiling.
I've never used either however.

Graphical Application in Windows, Linux, MacOS

I would like to build a graphical application that must work on at least Windows, Linux and MacOS. I would like to know what do you suggest I should use.
I have some experience with Java and C++ but I thought about using Java Swing first. What do you think or further suggest (like maybe tools or frameworks)? I also may be needing to connect to a PostgreSQL database to store data.
Java is probably the simplest way to get your application working on all 3 platforms as well as to add database support. All of these are equally possible in C++, but it definitely involves more work because you need to learn to use a cross-platform widget toolkit. Also, C++ database drivers usually have wildly varying designs but Java presents a unified interface via JDBC - this also means that you can change your underlying DB at any time without having to change your code.
I would use the Qt platform from Nokia. It supports all the OSes that you've mentioned and has also database connectors for PostgreSQL but also for MySQL, SQLite, etc.
It also has a very nice IDE, the QT Creator that you can use should you pick Qt.
I would suggest Qt too. Qt has seen very good development recently, their examples and documentation base is quite large, and the LGPL license is flexible too, for creating proprietary software. It has a good Qt Creator IDE, a Qt GUI Designer. Plus is has quite a number of modules, enabling it to be used in conjunction with other language developed apps/libraries. And, it is used in commercial/public apps like Google Earth, Skype (maybe only the linux version). So, it has a good history of reliability. And yeah, for Database, it has modules, like Qt-Sql. Another advantage you get over java is speed.
wxWidgets does cross-platform easily enough, using available native toolkits. You could probably use a ORM for the database part, but I don't have enough experience using them under C++ to provide an actual informed opinion there.
GTK is cross-platform. Pidgin uses it and manages to get away with being generally considered a fully-cross-platform app. The installer size is a problem, though.

OS X Database Tools?

I'm looking for a database visualization tool for OS X. MySQL Workbench looks promising, but the binaries provided are Intel only and I haven't been able to get the source to compile on PowerPC yet. Are there any other database visualization tools out there for OS X? What other tools do you use for database development/administration?
I'm looking for applications native to OS X (i.e. it uses Cocoa). It doesn't have to be free, and I no longer need it to be able to run on PowerPC. I would like to know if there are other programs used besides Sequel Pro and MySQL Workbench as MySQL Workbench was only ported to OS X recently.
I use Sequel Pro for MySQL and Base for SQLite.
I use Navicat to access our Postgres and Oracle. I haven't tried for MySQL, but there' is a Mac version.
I believe you are looking for Querious, a fantastic Cocoa app for MySQL database management. A veritable Delicious Library of database management apps.
I think there are heaps of database design tools for Mac but I'm not sure what percentage of them runs on PPC. Look around apple downloads page.
Squirrel SQL. Supports all databases that can be connected via Javas JDBC.
There are plenty of Eclipse plugins for database visualization and manipulation (search stack-overflow for recommendation). Most of them work on Mac OS X. Most of them connect via JDBC, which means you just need the Connector/J for MySql.
OpenOffice Base is another interesting alternative.

Resources