|
|||||||||||||
November 2007 "The Developer News" | |||||||||||||
|
| ||||||||||||
It's the perfect time
| |||||||||||||
|
Pricing through the MESI online Portal ( https://www.multieditsoftware.com/meorder)
is as follows: |
|
|
|
|
| Multi-Edit 2006 NEW USER: (shipped) |
$99.00 US dollars PLUS shipping **price includes ME2006 download |
| Multi-Edit 2006 UPGRADE: v9 and 9.10 users ONLY (shipped) |
$69.00 US dollars PLUS shipping **price includes ME2006 download |
| Multi-Edit 2006 ELECTRONIC NEW USER: |
$79.00 US dollars |
| Multi-Edit 2006 ELECTRONIC UPGRADE v9 and 9.10 users ONLY |
$49.00 US dollars |
Introduction from the CEO
Welcome again to another edition of The Developer News!
- Chad W. Williams
![]()
Give us a shoutout :)
Since it's creation, Multi-Edit has been developed on the suggestions of its users. "Designed by programmers for Programmers," our mantra since Day 1. The resulting 20 years have seen Multi-Edit evolve to the Super IDE it is today. Why? Simply because of your involvement. Whether you are a programmer, report writer, debugger or just a plain text editor, contributions have been provided from a diverse group of people who have varying purposes, all over the globe. Today we would like to encourage your feedback once again.
Currently, our team is working on your suggestions for a selection between the full release and a less robust Lite version. Other items are in the pike and while we have been tinkering inside the engine, we knew to send a call out to you. Please take a few minutes, voice your opinions via shout-out, email, the forums, the phone (you get the idea) just drop us a line.
Let us know what ME version you are currently using, what feature of that version is a 'must have,' what feature you'd like to see in your next ME upgrade and what improvements you'd recommend. Long or short, the reply is what we're looking for so hit those links below to access us...
- email: COMMENTS: comments@multieditsoftware.com
- forum: http://www.multiedit.com/forums/viewforum.php?f=21
- phone: 480-610-2700 speak to the lovely Michele and she'll note your comments down for us and she's always handy with a compliment in return.
...and take advantage of the moment! We would love to hear from you and the spectrum of discussion is open from Network enhancements, release subscription options, documentation updates, enhanced or new language support, installation wizards or even simple macros.
Don't hesitate,
help us to continue to be the best editor for you
and voice your opinion today!On to the programming side of things now...have you been monitoring Dan’s article on the CMac Language? It is a four part series and he is on the last installment. Be sure to view his article Exploring CMac Part 4 to learn how these four CMac Code segments will pull together and the benefits it will provide you as a Multi-Edit user. Good stuff, easy to consume and a load of help for anyone attached to their keyboard during the working hours.
And if/when you are working with Multi-Edit in a Multi-Display setup, there will be times when you switch back to a single display and suddenly find that your dialogs may not all be visible within your viewable screen. In the recent 10.05 patch wewe havee created an easy method of quickly restoring all those dialogs back to their default location. Be sure to view David Deley’s article for more information on Restoring Dialogs to Default Locales.
Even the Office has some small news this week. If you could please note that our offices will be closed November 22nd and the 23rd for the Thanksgiving Holiday. We will resume normal operating hours on Monday November 26th.
Until the next installment,
Chad Williams, CEO
Multi Edit Software, Inc.
Chad Williams: chadw@multieditsoftware.com
News from Dan Hughes
Exploring CMac
- Dan Hughes
![]()
Part 4 of 4 : ...
In Part 1 of our Exploring CMac series, we covered some supporting macros for the Delimited String Editing Dialog we are developing. In Part 2, we covered creating the dialog itself. In Part 3 we added code to make the dialog function. In this the final part of this series, we write the code that other dialogs can use to access our Editing Dialog.
Now, on to the article...
There are basically two more steps that need to be done to allow our Edit Delimited Strings dialog to be fully functional:
- 1) Write a macro that can be assigned to buttons to retrieve the data from a specified string field of a dialog and show our dialog.
- 2) Add a button control to the dialogs that will call this new macro.
For the purpose of writing the button macro, there are two basic methods of creating dialogs that we have to handle, the older Db method and the newer Dialog.s method. They both use the same lower level structures to implement the data layer but are using them in incompatible ways. Thus we will have to revert back to using direct Windows API message processing to implement code that will work for both cases. What our macro will need to do is obtain the id of the dialog control that contains the delimited string so that it can read the string, call our EditDelmitStrDlg dialog and replace the current string with the updated string returned by our dialog.
Dialogs created using the Dialog.s macros are the easiest to modify to add support for our Delimited String Edit dialog. All that it requires is a button control be added and when specifying the macro to run when the button is pressed, we pass two additional parameters, the id of the delimited string control and delimiter character. These parameters would be specified as:
/DELIM=; where ; is the delimiter character
/ID=# where # is the control id of the delimited string control.Thus with these two parameters we could write the following code to handle the button press:
void EditDelimitStrBtn( )
{
int Dlg = Parse_Int( "/DLGHANDLE=", MParm_Str );
int StrCtrlId = Parse_Int( "/ID=", MParm_Str );
str Delimiter = Parse_Str( "/DELIM=", MParm_Str );
if ( Dlg ) {
str TStr[ 2048 ];
GetDlgItemText( Dlg, StrCtrlId, TStr, 2048 );
TStr = EditDelimitStrDlg( TStr, Delimiter );
SetDlgItemText( Dlg, StrCtrlId, TStr );
}
Return_Int = False;
} // EditDelimitStrBtnOne thing to note about the above macro is the Return_Int = False; statement at the end of the macro. This is required so that the dialog will not be closed automatically when we hit the OK button of our Delimited String Edit dialog.
The Db method causes a dialog to be built based upon a list of sequential controls that are used to describe the dialog. Each control is not assigned a control Id until it is build so there is no way of knowing the control Id of the string field so it can be passed to our macro. What does get passed to a button macro when a button is pressed in a Db created dialog, are the following common parameters:
/DATAHANDLE= The handle of the dialog
/DLGHANDLE= The window id of the main Windows dialog
/DATAID= The data index id of the control being accessed.In most Db created dialogs the button would be the control following the delimited string, so we can get the control id for the delimited string field by subtracting one from the DATAID= value and retrieving the control id from the internal structure. The following macro shows the additional code needed to support both types of dialogs.
void EditDelimitStrBtn( )
{
int Dlg = Parse_Int( "/DLGHANDLE=", MParm_Str );
int Menu = Parse_Int( "/DATAHANDLE=", MParm_Str );
int DataId = Parse_Int( "/DATAID=", MParm_Str );
int StrCtrlId = Parse_Int( "/ID=", MParm_Str );
str Delimiter = Parse_Str( "/DELIM=", MParm_Str );
if ( Dlg ) {
str TStr[ 2048 ];
if ( StrCtrlId == 0 ) {
StrCtrlId = Menu_Item_Int( Menu, DataId - 1, 3 );
}
GetDlgItemText( Dlg, StrCtrlId, TStr, 2048 );
TStr = EditDelimitStrDlg( TStr, Delimiter );
SetDlgItemText( Dlg, StrCtrlId, TStr );
}
Return_Int = False;
} // EditDelimitStrBtnOne dialog that we will change to add the above support to is in the Project.s file under the _Project_DirDlg( ) macro. around line 4404 change the code to read as follows:
// DlgAddCtrl( dlg, Dlg_DirButton, '...',
// 70, Dlg_PosOffset, 4, 1,
// Id_Project_Searchbrowse, 0, "/SID=" + str(Id_Project_Searchdir));
DlgAddCtrl( dlg, Dlg_PushButton, '...',
70, Dlg_PosOffset, 4, 1,
Id_Project_Searchbrowse, 0, "/M=StrTools^EditDelimitStrBtn /ID=" +
Str( Id_Project_Searchdir ) + "/DELIM=;" );Another change that we found we needed to make was to the EditDelimitStrDlg macro where we set the return value to the input string so that if a user canceled the edit dialog, the original string value was returned instead of an entry string.
There are still a number of features that could be added to our macros
- support for passing the dialog title
- support for changing the Path field button to return files instead of just path via option
but we have tried to give you a good idea of how a relatively complex macro library is created.
The above code is available for downloading from:
http://www.multieditsoftware.com/TheDev/article-files/StrTools4.zipUntil next time, Happy Coding!
Dan Hughes, VP
Multi Edit Software, Inc.
Dan Hughes: danh@multieditsoftware.com
------------------------------Multi-Edit Partners---------------------------- ![]()
Welcome to Provantage Technology Superstore!
Even the busiest professionals do their Christmas shopping at Provantage! With over $1 billion of available inventory, you're sure to find the right holiday gifts delivered quickly, efficiently, and at the lowest prices. Check out some of our great Holiday Gift Ideas.
Contact us today!
USA & Canada: 800-336-1166
International: 330-494-8715
Fax: 330-494-526
Provantage
North Canton, Ohio
Sales: sales@provantage.com
------------------------------Multi-Edit Partners----------------------------
![]()
Visit http://www.programmersparadise.com or Call 1-800-599-4388
Programmer’s Paradise is a reseller of select, quality computing products and services to software developers and other IT professionals. Leveraging our relationships with all the leading hardware and software vendors enables us to build best-of-breed solutions that provide optimal return on your investment.
Powerful Programming in a Portable Environment mobileMETM provides an innovative approach to Portable Programming.
Give us a call and we will discuss what we can do to help your business.
Visit:
http://www.programmers.com/ppi_us/Product.aspx?sku=A30%2008101A02
or Call 1-800-441-1511Programmer's Paradise, Inc.
1157 Shrewsbury Ave.
Shrewsbury, New Jersey 07702-4321
Telephone: 800-441-1511
Fax: (732) 460-9317
David Deley's Support Tip
Losing view of dialogs with Multi-Displays
- David Deley
![]()
ResetDialogPos
Have your dialogs gone off the edge of your screen because you switched from dual monitors to a single monitor? With Multi-Edit 10.05 you can fix this by running the ResetDialogPos macro.
1. go to MACRO -> RUN
2. Enter ResetDialogPos
3. click 'OK'This will reset all the dialog positions to the default position.
Also, to reset the position of the Open File dialog, go to your Config directory and delete file MEW32X.INI . (See the previous newsletter for an explanation of where to find the Config directory. This will be added to ResetDialogPos in the next release.)
David Deley, Developer
Multi Edit Software, Inc.
David Deley: davidd@multieditsoftware.com
Customer Service
Tech Support - Quick and Easy
- Michele Hegwood
![]()
Hasten the response time to your inquiries by successfully contacting the correct department
Technical Support
The easiest & quickest method used in receiving answers to your Support questions is to go through our Support Page http://www.multieditsoftware.com/support.php. Many of the questions forwarded to Support have been addressed previously, & we have an in-depth record of the solutions well documented in our Forum http://www.multieditsoftware.com/forums/index.php. A simple search often produces the answers you seek, & if one is not found or you have additional issues needing to be addressed email Support directly support@multieditsoftware.com. Our Support Team works closely together to ensure you receive the quickest & most helpful assistance possible, & to help add to this level of service we ask that when you do send Support emails to please include:
- Complete contact information
- A well-explained description of the problem you are seeking support for (include screen shots to aid in your explanation if you like)
- & registration information, i.e. serial number(s), company & contact information
The first line of action taken when receiving Support mail is to establish you as a registered client, thus it is important to register http://www.multieditsoftware.com/register.php your product at the time of installation or purchase.
- We recommend including a copy of your Meconfig.db & Wcmdmap.db files. This helps to quickly track down the problem you have encountered, thus lessoning the overall time spent trouble-shooting.
How To Find The Meconfig.db & Wcmdmap.db Files - http://www.multieditsoftware.com/TheDev/v04_i08_2007.htm#CMC Our Support page http://www.multieditsoftware.com/support.php provides useful links & information to our Online Forum, Support Articles, Product Registration, Updates (Macros & more), & Email Support.
Sales | Customer Service | Account Information
Contact the Customer Service & Sales Department sales@multieditsoftware.com with questions regarding product purchases & pricing, the loss of a serial number and/or release code, to have a new download/installation link emailed to you for re-installation, and to verify or change registration information.
- Product Pricing: http://www.multieditsoftware.com/prodcho.php
- Upgrade Policy: http://www.multieditsoftware.com/upgrade-policy.php
Still not sure which department is needed? Contact the Sales Desk sales@multieditsoftware.com for direction.
Michele Hegwood
Multi Edit Software, Inc.
Michele Hegwood: sales@multieditsoftware.com
Multi Edit was lucky enough to be part of the Farmington Robotics team as a sponsor this past spring. Being a development tool, Multi-Edit is a part of many products and corporations so having the opportunity to help out some students... well we were grateful for the opportunity. Below we've included a brief snippet about the team and links to their website. Please take a moment and see what the next generation is up to and if you might be able to help as well.
Brief Team History
This is our 10th year in the FIRST robotics program. Our first robot, Gizmo, helped us win rookie of the year at the New England Regional. We are proud to say that our robots are student built with the guidance of resourceful and supportive engineers and adult mentors. We always attend the UTC sponsored New England Regional and then either the Nationals or another regional. Two years ago (2004-2005) we went to the UTC New England Regional and made it to the semifinals. Last year, we received the Engineering Inspiration Award at our local regional, and impressed the judges with our unique three chamber cannon and overall design. However, what sets us apart from other teams is our nnovative Dream FIRST idea.
We certainly appreciated the flexibility of being able to carry mobileME with the students between home and the robot workshop and not be dependent upon using fixed computers all the time, and I think that's one of the areas where the product really shines for teams like ours.
Considering that on average we will lose 25% of our "workforce" each year, not having to track license codes and worry about losing / damaging installation CDs is a huge bonus when using mobileME.
Jason Armistead
Volunteer Mentor for the Robotics Team
Staff Software Engineer
Otis Engineering Centre, FarmingtonAbout FIRST
FIRST (For Inspiration and Recognition of Science and Technology) is a series of collaborative programs which seek to channel the natural creativity of children and young adults into the fields of science, technology, and engineering.
Founded in 1991 by inventor Dean Kamen, FIRST was originally created as a program with the ultimate goal of promoting “science literacy”. The primary component of FIRST became the FIRST Robotics Competition (FRC) – a program wherein high-school students were presented with a challenge and were then given the task of constructing a robot to complete said challenge. The program sought to emulate a real-life engineering challenge, and with the aid of teachers, engineers and corporate sponsors, teams were able to succeed in their own unique ways, and the FRC was able to flourish. Now, 16 years later, FIRST has grown into a broad effort to spread its core values – enthusiasm for science, technology, and engineering, and the all-encompassing ideal of gracious professionalism.
Gracious professionalism is a concept which underlines FIRST’s core values, encouraging all teams to work together in a professional, cooperative manner conducive to productivity and friendship. As FIRST senior mentor and MIT professor Woodie Flowers put it, gracious professionalism is intended “to encourage doing high quality, well informed work in a manner which leaves everyone feeling valued.” Teaching students the importance of cooperation and collaboration in high-stress situations, gracious professionalism is the true embodiment of all the core values of FIRST.
In recent years FIRST has expanded its outreach efforts through its LEGO League and Junior LEGO League, incorporating younger children into FIRST programs, encouraging them to investigate the exciting worlds of science and technology. As FIRST continues to grow, it is ever expanding its influence, bettering the lives of countless individuals and building a brighter future for all those whom it effects.
If your e-mail application has trouble viewing this
in an HTML format,
you can also view it online at:
http://www.multieditsoftware.com/TheDev/v04_i09_2007.htm