Products

SD-SoftDesign has developed the following products for Xbase++:

Power - add-on library for Xbase++

DBA - application for database administration

Power library


Power is an add-on library for Xbase++. It allows to quickly and easy convert Clipper applications to Windows and develop new Windows applications. Power implements top-down modular style of programming. It is function-oriented because functions are more comfortable for writing programs and programs are shorter and faster. The functions and their arguments are very flexible, user-friendly, intuitive, simple and easy to use. The most of function arguments are arranged in arrays and subarrays so that the number of inline arguments is reduced.

Power functions represent the substitutions for Xbase Parts, whose properties and events are defined as functions arguments. The functions are generalized and automated so that the most of Xbase Parts logic is performed internally by the functions. You don't have to know anything about object-oriented programming, classes, methods, properties, etc. Just use Power functions as building blocks to write fast and efficient programs with minimum number of code lines and which use minimum amount of memory resources.

Power library supports both graphic (pixel, lometric) and text (row, column) units for the coordinates and dimensions for the screen and print output. The output unit may be specified at the global level or in each function.

All display and print elements created by Power functions are fully configurable. Their positions, sizes, fonts (name, size, style), colors, types, aligns and other attributes may be defined by the user. The configuration parameters may be specified at the global level or in each function.

Power functions display owner-drawn all owner-draw-capable Xbase Parts. Being owner-drawn, they have the same look on any Windows operating system. Power library implements innovative, advanced and flexible owner-drawing solutions, allowing the dialog elements to have a border or not, to have a rounded or straight corners, and to have a one-color or two-color gradient background. On non-visual-style Windows systems, all data reference dialog elements are displayed with a border, like they use a visual style.

The following Xbase Parts are displayed owner-drawn:

  • XbpListBox - displays caption with image and user-drawing
  • XbpComboBox - displays caption with image and user-drawing
  • XbpMenuBar - displays caption, image and user-drawing
  • XbpMenu - displays caption with image and user-drawing
  • XbpStatic - displays text, text box, formatted text, caption with image, line, box, group box, shape and arc
  • XbpPushButton - displays caption with image
  • XbpTabPage (tab and page) - displays caption with image
  • XbpBrowse (data area, heading and footing) - displays multi-line text, caption with image and user-drawing
  • XbpQuickBrowse (data area and heading) - displays multi-line text, caption with image and user-drawing

The following Xbase Parts may be displayed with HTML/CSS style:

  • XbpListBox
  • XbpComboBox
  • XbpStatic
  • XbpPushButton

Power library requires Xbase++ 1.9 SL1 or Xbase++ 2.0, and doesn't support earlier Xbase++ versions. It is available in Serbian and English language, but can be modified by the user into every language.


Power Library Features
Universal
@...GET command
The @...GET command encompasses in one command all Xbase Parts for editing and selecting data, using the CLASS clause. Also implements some new edit dialog elements.
  • CLASS "SL" - edits single-line character, numeric, date and logical data
  • CLASS "ML" - edits multi-line text, such as memo character fields
  • CLASS "BN" (new) - edits binary data, such as FOX memo binary fields
  • CLASS "LB" - list box dialog
  • CLASS "CB" - combo box dialog
  • CLASS "RB" - radio box dialog
  • CLASS "2S" - check box button
  • CLASS "3S" - three state button
  • CLASS "SB" - spin button dialog
  • CLASS "SC" - scroll bar dialog
  • CLASS "TV" - tree view dialog
  • CLASS "DP" - calendar dialog
  • CLASS "TP" - time dialog
  • CLASS "BB" - browse and quick browse table dialog
  • CLASS "VS" (new) - variable set edits a two-dimensional array of memory variables in an edit browse table
  • CLASS "RS" (new) - record set edits an array of database records (like SQL cursor) in an edit browse table
  • CLASS "DS" (new) - data set edits a two-dimensional array of data in an edit browse table
Have the EVENT, WHEN, VALID and RANGE control clauses. May display an inside-end pick button to pop-up a dialog window (list, browser, calendar, calculator, menu, etc.) to help input a value into the Get variable.

List box and combo box may be system-drawn or owner-drawn (default). When owner-drawn, they may display caption with image and user-drawing. They may be also displayed with HTML/CSS style.

Static functions Static functions may display value of any data type, angled text, text box, formatted text, caption with image, system icon, line, rectangle, box, group box, shape and arc. The most of static elements are owner-drawn. They may be also displayed with HTML/CSS style.
Control functions Control functions allow to create dialog elements that perform a simple output tasks. They create the following controls:
  • push button
  • tool bar and ActiveX tool bar
  • status bar and ActiveX status bar
  • tab frame
  • data view
  • split bar
  • progress bar
Push button and tab page may be system-drawn or owner-drawn (default). When owner-drawn, they may display caption with image. Push button may be also displayed with HTML/CSS style.
Interface functions Interface functions are black box routines that display pre-defined dialog windows. They perform the following tasks:
  • display message with optional choices
  • select from a list
  • select date
  • select color
  • select folder
  • select file
  • save file
  • select record from a database file
  • select and configure printer
Menu functions Menu functions create the following menus:
  • pop-up menu
  • selection menu
  • application menu dialog window
  • project menu dialog window
Menu bar and pop-up menu may be system-drawn or owner-drawn (default). Owner-drawn pop-up menu may display caption with image, user-drawing and vertical left-sided text bar. When owner-drawn, menu bar may be multi-row and pop-up menu may be multi-column.
Edit functions Edit functions are powerful tools that allow to create standardized edit dialogs for database files and arrays in a comfortable way. They automatically control multi-user access in a network environment.

EditFile() edits a database file in a custom form. Edit data may be arranged in tab pages, variable sets and record sets. Have the options to print, browse, change index, search, export, and nested edit related files to any depth. A trigger may be specified at any edit point.

EditDoc() edits two database files, document (parent, master) and item (child, detail), in a custom form. Item file edit data may be arranged in tab pages and record sets. Have the options to print, browse, change index, search, export, and nested edit related files to any depth. A trigger may be specified at any edit point.

BrwEdit() edits a database file or an array in a browser. Have the options to edit in a form, change index, search and export.

EditData() edits an array of Get objects which may be scrollable.

EditText() edits a formatted text.

Browse functions Browse functions display data from a database files or arrays in a browser or quick browser. The header and footer are owner-drawn and may display caption with image. The data area may be system-drawn or owner-drawn. Owner-drawn data area may display multi-line text, caption with image, and user-drawing. Have the options to print, export, e-mail, and display graph. Support ADS files and ODBC tables.
Report functions Report functions allow to create report dialog windows. Data may be displayed in tab pages. Have the options to print, export and e-mail.
Export functions Export functions allow to perform data and reports export to DOC, XLS, PDF, HTML, XML, SDF, CSV and DBF formats. The report may contain text, text file, link, image, horizontal line, shape, array, browse or quick browse table, and database file.
Graph functions Graph functions create graphs and shapes using Microsoft Excel program. They may create line, scatter, bubble, surface, radar, area, column, bar, pie, doughnut, stock and Gantt graph types. Some graph types may be 2-D and 3-D. Combination (multi-type) graph on one or two Y axes may be also created. The graphs and shapes may be printed, saved in a JPG format, and copied to clipboard.
Print functions Print system with print preview is very flexible and can control all features of print job. Print functions allow to create print reports of any form in a Clipper or GUI style. They may print value of any data type, angled text, text box, formatted text, caption with image, line, box, shape, arc, browse table, and graph. Support color printing anywhere in the report. The preview report may be saved in a MetaFile format.
Session functions Session functions allow to create DAC sessions, open ADS files and ODBC tables, and retrieve information from data store.
Internet functions Internet functions allow to send and receive e-mails, and to upload and download files.
Registry functions Registry functions allow complete control of Windows registry keys and values. They call Windows API functions to create, set, list and delete registry keys and values.
Windows functions Windows functions are utilities that call Windows API functions to perform the following tasks in the Windows system:
  • get information about drives, volumes, screen, special folders, system metrics
  • get and set system parameters
  • select folder
  • select file
  • save file
  • execute operation on files or folders
  • create shortcut
  • install and delete font, etc.
System functions System functions set the configuration parameters for the library and the default parameters for the screen and print output. They also define the default attributes for many objects created by library functions, such as Get, Say, push button, tab, menu bar, menu, browser, tool bar, status bar, calendar, message dialogs, etc. The default attributes may be overloaded in each function that create the corresponding object.


Power library: GET list box Power library: GET combo box Power library: GET radio box Power library: GET tree view Power library: Label box Power library: Formatted label Power library: Image Power library: System-drawn static

Power library: Push button Power library: Tool bar Power library: Status bar Power library: Tab frame Power library: Select file Power library: Save file

Power library: Application menu Power library: Project menu Power library: Editing in tab pages Power library: Editing binary data Power library: Editing record set Power library: Owner-drawn colored browser Power library: Browser with multi-line text and images Power library: Browser with user-drawing and graph

Power library: Column graph on 2 Y axes Power library: Bar stacked 100% 3D graph Power library: Gantt graph Power library: Multi graphs Power library: Graph with shapes Power library: Block shapes Power library: Send e-mail


DBA application


DBA is an application for database administration of software projects which contains multiple applications. DBA maintains three dictionaries: application, database and index. Application dictionary records information about applications in the software project. Database dictionary records information about database files in each application. Index dictionary records information about database index files.

DBA has the following options:

  • edit and list dictionaries
  • index databases
  • delete records from databases
  • pack databases
  • zap databases
  • purge databases
  • export data from databases
  • browse and edit databases
  • list database structures
  • list index structures
  • zip application files
  • unzip application files

DBA is available in Serbian and English language.


DBA: Editing database dictionary DBA: Database structure list DBA: File edit browser