Please enable JavaScript to view this site.

A-Shell Development History

934.5.1

(Windows/ATE) Fix bug related to the internal millirow conversion causing controls to disappear.

934.5.2

Fix bug with processing coname.dat if there was no LF at the end of the line. (Was reporting bad company name.

934.5.3

(Windows/ATE) Back out a very recent change in the way dialogs were related to the main window that was making it too easy to get the dialog separated from the main window.

934.5.4

(Windows/ATE) MIAMEX,96 (MX_SHLEXC) now supports embedded environment variables (using the %env% notation, e.g. %temp%\test.doc).

934.5.5

(Windows/ATE) Close a loophole where a really screwed up COLDEF in XTREE could cause a GPF.

934.3.1

(Windows/ATE) Fix further problems with displaying icons and bitmaps due to millirows.

934.3.2

(Windows/ATE) Dialogs created with the MBF_DLGNOPARENT style (explicitly or implicitly because the main window was invisible) now contain the application icon. This is needed to visually identify the application in the Alt-Tab list.

934.2.1

(Windows/ATE) Clean up various internal issues related to millirows. All controls are now converted to millirow coordinates automatically. The only effect this will have on existing programs is that MBF_ALTPOS no longer affects buttons like it used to. Previously, it made them a bit shorter in an attempt to make the fit underneath a groupbox at the bottom of a dialog. Now, you can accomplish the same thing more easily by adjusting the millirow coordinates of the button.

934.2.2

(Windows/ATE) Fix an obscure problem which was causing INFLD to go into edit mode in some cases where it should have merely been displaying a control.

934.2.3

(Windows/ATE) AUI_EVENTWAIT flag EVW_VAREXIT was causing left arrow to exit when it should have had no effect on left arrow.

934.2.4

(Windows/ATE) Fix a problem with the backspace (rubout) key having a double action in INFLD.

934.2.5

(Windows/ATE) Fix a problem with right-click clearing a marked area, making it difficult to use the Copy option on the popup menu. Also fix problem in which clicking on window to activate it would sometimes leave a mouse mark.

934.2.6

(Windows/ATE) Fix an XTREE problem with inability to set the initial row via XTR'XROW if XTR'XCOL=0 and there were editable cells. Also, if the first column is editable, setting XTR'XROW=n and XTR'XCOL=0 should put the selection bar on the row (or first cell, depending on the SELECTSTYLE option) but it will not initially be in edit mode. You would need to click on it or navigate to next editable cell and back. If you want to start in editing mode, set XTR'XCOL to greater than 0.

934.2.7

(Windows/ATE) When a dialog box is created and the main window is invisible (e.g. was launched with -z or made invisible by an AUI_WINDOW call), the dialog box is made into a top level window so that it shows on the task bar. You can also force a dialog to have the top level property by adding the flag MBF_DLGNOPARENT (32, same as MBF_LFTEXT) when it is created. But in that case, both the main window and the dialog will appear on the task bar. Currently there no way to convert an existing standard dialog to a top level one.

934.2.8

(Windows/ATE) Fix problem with using millirows to display fields in INFLD (position was getting rounded to nearest row).

934.2.9

OPTIONS=LONGDIR can now be added to the miame.ini to force SET LONGDIR (which just causes DIR.LIT to use the 10.3 format by default). Note that you need DIR.LIT 3.0(135)+ and SET.LIT 1.2(145)+ for the LONGDIR option to work correctly.

934.2.10

(Windows/ATE) Clean up some XTREE issues with exiting from an editable cell using a key that exits both the cell and the XTREE in one step. Currently, only Fx (function keys, assuming FLAGS contains XTF_FKEY) and Control-HOME (XTF_HOME) and Control-END (XTF_END) support this. Previously, the function keys would exit but the cell was not updated. Note that Control-HOME and Control-END will return XROW & XCOL pointing to the cell that you exited from, but the XTR'NAVCOD and XTR'NAVMASK will cause the inter-cellular navigation operation (i.e. move to first or last cell of the XTREE) to be performed on re-entry. To defeat that, set XTR'NAVCOD to 0.

934.1.1

Fix a memory overflow condition leading to an exception when using MX_FLSET in a main program. Problem has been around for awhile; not sure what else was affected.

934.0.1

(Windows/ATE) INFLD now supports millirows for the ROW parameter. Note that this only allows changing the vertical position of the control, not its height.

934.0.1

(Windows/ATE) XTREE Popup menus now support separators. The syntax is to set the text part of the definition to a string of dashes (e.g. "-----") and the command part of the definition to null. (It doesn't matter how many dashes, as long as no other characters are included.) The updated XTRA5 program offers this example:

COLDEF = COLDEF + "0~0~ ~S~PopupMenu=" "Try On, %VK_xF501%; Backorder, %VK_xF502%; Discontinue, %VK_xF503%;" "-----,; Shoplift, %VK_xF504%~~"    ! [116] add separator

This defines a popup menu with 4 items (Try On, Backorder, Discontinue, and Shoplift), with a separator bar between the last two. Note that there should be no space between the dashes, comma, and semicolon in the separator part of the definition string.

934.0.3

(Windows/ATE) XCALL AUI,AUI_MENU (or MIAMEX,71 or TAB(-10,21)) now support the creation of popup menus (aka "right-click" or "context" menus) for the main window and for dialogs. The syntax is the same the same as for the "traditional" method (where you use separate XCALLs for each menu item) rather than the "simplified" or "file-based" method, with the following differences:

There can be only one context menu for the main window and one for each dialog. When the menu is created, if there is a dialog active, then it becomes associated with the dialog; otherwise it becomes associated with the main window.
The menu ID of the context menu must be negative; typically -1 for the main window, -2 for the first dialog, etc.
To add clipboard operations copy and paste to the popup menu, use the MBF_CMDLIN format with the special commands "$COPY" and "$PASTE". ($CUT doesn't really apply in this context.
Defining a context menu does not automatically change the cursor to an arrow, but you can do that with the TAB(-1,160);chr(32); command and TAB(-1,160);chr(48) to set it back to an I-beam.
You can delete the context menu with a single xcall AUI,AUI_MENU with OPCODE=3 and TEXT="*".
The context menu will be active when the cursor is over the window or dialog, but not over a control which has its own click processing.

Two sample programs from EXLIB have been updated to illustrate this feature:

ASMENU.BAS adds a context menu to the main window, and even illustrates disabling a selection on the menu.
TABDLG shows a context menu attached to the dialog.