Kylix 3.0 Enterprise (with C++)
When you run the command startbcb to bring up the C++ version of the IDE, a registration window will pop up. After filling in the data, the on-line registration went without a problem. After the registration window is closed, a nice splash window pops up. It takes quite a bit of time to load the IDE, so I can see the need for a splash screen. When the development environment is fully loaded, a default project is generated.
The IDE is comprised of several floating windows. The main window is docked to the top of the desktop, and it contains all the menus and tabs with the components that are available for use. The second window is the Object Inspector, which shows all the properties and events of an object. A property of a visible component is, for example, what color it should be, its placement rules, caption and more. Under the Events tab of the Object Inspector, you can see all the events this component supports, such as On Click, On Start Drag, On Drag Over and more. The third window is the code editor that shows files that are a part of your program. There is a tab for each open file plus a tab called Diagram. You can drag and drop components onto the Diagram tab from the Object Tree View to create diagrams of your project. The fourth window is the Object Tree View, which shows the tree hierarchy of your program as you add components to it. For a visual representation, take a look at Figure 1.
I decided to press the Run button with the default project. It turns out that my default installation of Linux didn't install the glibc-devel package. As you can imagine, this generated a lot of compile errors. It's not a big deal, but I would expect the installer to warn me about missing package dependencies. I installed the RPM and pressed the Run button one more time. This time, the compiler finished, but the linker had problems finding libX11.so. I knew exactly what was wrong; reading all the Readme files before the installation paid off. SuSE installer didn't create the symbolic link libX11.so to libX11.so.6. After I created the link manually, everything worked. I was ready to write, or should I say “point and click”, some code.
The whole IDE interface might be a bit confusing at first. After you get a feel for it, you will find it's really easy to build applications. Application design works exactly like a WYSIWG editor. I grab a few components from the component bar and drop them onto my form. I assign one or two of the components properties. What I am looking at is an application that I have not even compiled yet, but the database lookups are running. Simply setting the Active properties to true on the database components was enough to get queries going. I can see how my application would look if I had actually compiled and ran it. Take a look at Figure 2 to see what I mean.
After clicking around I decided that I wanted to see how the actual coding experience is with the tool. I grabbed a button from the component bar and placed it onto my form (application main window). When I double-clicked this button, the Object Inspector switched to the Events tab and selected the OnClick event. Meanwhile in the code editor, a code framework for the click event was built. My keyboard focus was placed at the function block start, ready for code entry. I wanted the application to close when I clicked the button that I just placed on the form. I started typing “Application->” and a small window popped up in the editor. It listed all the functions and properties of my application instance called “Application” (Figure 3).
As I typed in the letter T of the function name (Terminate) that I wanted to call, the code-completion feature eliminated properties and functions that didn't match up. When I saw what I was looking for, I scrolled up and down through the list and pressed Enter. That filled in the code in the editor, then I need to add the semicolon at the end. I thought to myself “that's nice but how about if I spice it up a bit?” I included a Linux header file called utsname.h and instantiated a structure of type utsname and name tst. I typed in tst. and waited to see what would happen. The same window popped up and listed all the structure members and their types (e.g., char). This comes in handy in those “what's that function called again?” moments.
Fast/Flexible Linux OS Recovery
On Demand Now
In this live one-hour webinar, learn how to enhance your existing backup strategies for complete disaster recovery preparedness using Storix System Backup Administrator (SBAdmin), a highly flexible full-system recovery solution for UNIX and Linux systems.
Join Linux Journal's Shawn Powers and David Huffman, President/CEO, Storix, Inc.
Free to Linux Journal readers.Register Now!
- Download "Linux Management with Red Hat Satellite: Measuring Business Impact and ROI"
- Profiles and RC Files
- Astronomy for KDE
- Understanding Ceph and Its Place in the Market
- Maru OS Brings Debian to Your Phone
- Snappy Moves to New Platforms
- Git 2.9 Released
- What's Our Next Fight?
- OpenSwitch Finds a New Home
- The Giant Zero, Part 0.x
With all the industry talk about the benefits of Linux on Power and all the performance advantages offered by its open architecture, you may be considering a move in that direction. If you are thinking about analytics, big data and cloud computing, you would be right to evaluate Power. The idea of using commodity x86 hardware and replacing it every three years is an outdated cost model. It doesn’t consider the total cost of ownership, and it doesn’t consider the advantage of real processing power, high-availability and multithreading like a demon.
This ebook takes a look at some of the practical applications of the Linux on Power platform and ways you might bring all the performance power of this open architecture to bear for your organization. There are no smoke and mirrors here—just hard, cold, empirical evidence provided by independent sources. I also consider some innovative ways Linux on Power will be used in the future.Get the Guide