Articles

  • February 9, 2012

    Processor macros are predefined by all C/C++ compilers to enable #if/#endif sets to wrap processor-specific code, such as in-line assembly for SSE instructions on x86 processors. But there are no standards for processor macros. The same compiler may have different macros on different operating systems, and different compilers for the same processor may have different macros. This article surveys common compilers and shows how to use predefined macros to detect common desktop and server processors at compile time.

  • December 7, 2011

    All C/C++ compilers predefine macros indicating the target processor, operating system, language features, compiler name and version, and more. Cross-platform code can use #if/#endif to wrap OS-specific #includes (such as <Windows.h> vs. <unistd.h>), compiler-specific code (such as inline assembly), or processor-specific optimizations (such as SSE instructions on x86). Macro names are not standardized and nor are methods to get the compiler to list them. This article surveys common desktop and server application compilers and shows how to list their predefined macros.

  • November 2, 2011

    This part 4 of 4 articles continues a component by component review of problems, workarounds, and special features for the classic Java Swing CDE/Motif look and feel. Example images are included along with UIDefaults values, color swatches, and icon images.

  • October 10, 2011

    This part 3 of 4 articles continues a component by component review of problems, workarounds, and special features for the classic Java Swing CDE/Motif look and feel. Example images are included along with UIDefaults values, color swatches, and icon images.

  • September 6, 2011

    This part 2 of 4 articles continues a component by component review of problems, workarounds, and special features for the classic Java Swing CDE/Motif look and feel. Example images are included along with UIDefaults values, color swatches, and icon images.

  • August 3, 2011

    The classic Java Swing CDE/Motif look and feel recreates the beveled buttons, gray color scheme, and light-weight design of the X11 window system's applications circa 1990. This article is part 1 of 4 and provides a component by component review of problems, workarounds, and special features of Java's CDE/Motif look and feel. Example images are included along with UIDefaults values, color swatches, and icon images.

  • December 6, 2010

    User interface themes for Mac OS X, Windows, and Linux define the OS-wide look of window frames, buttons, scrollbars, and the like. Preference settings enable users to tune color schemes to taste. For Java applications, changing the theme also sets colors for pre-defined java.awt.SystemColor objects that indicate the color of buttons, text, and more. In principal, applications may use these colors to customize their user interfaces to match the current theme. In practice, there are quite a few problems with doing this.

    This article begins a series that discusses Java's SystemColors and their use and problems on different OSes. Series articles also provide color swatches, RGB/HSV values, and downloadable color lists for SystemColors for each of the standard themes on the Mac, Windows, and Linux. The color swatches provide a resource for comparing theme colors and creating custom Java components that match the themes.

  • November 7, 2010

    Linux's KDE defines themes that set the color scheme and style for window frames, tabs, buttons, and other components drawn by KDE's Qt user interface toolkit. For Java applications, changing the theme should set colors in Java's java.awt.SystemColor objects, which applications may use to customize their user interfaces to match the current theme. Unfortunately, there are some problems here.

    This article discusses SystemColor problems with KDE, and provides color swatches, RGB/HSV values, and downloadable color lists for the default SystemColors on Linux.

  • September 6, 2010

    Linux's Gnome defines themes that set the color scheme and style for window frames, buttons, scrollbars, and other components drawn by Gnome's GTK user interface toolkit. For Java applications, changing the theme should set colors in Java's java.awt.SystemColor objects, which applications may use to customize their user interfaces to match the current theme. Unfortunately, there are some problems here.

    This article discusses SystemColor problems with Gnome, and provides color swatches, RGB/HSV values, and downloadable color lists for the default SystemColors on Linux.

Syndicate content
Nadeau software consulting
Nadeau software consulting