Hi all,

This is WinAsm Studio V3.0.0.8

What's new

-Add/Edit/Delete Resources toolbar always available if there is an RC File in Visual mode open. Also Grayed bitmaps are used if not(Thanks Forever, Marwin).

-remove button on Resources tab can also be used to remove dialogs/controls as appropriate now.(Thanks Marwin)

-If Auto Toolbox/RC Options is enabled now made to work in all appropriate cases (Thanks Marwin, Qvasimodo, TheOne)

-right-clicking on the dialogs tree selects the appropriate dialog/control and popups the context menu(Thanks Marwin)

-This context menu:
-has more options: Style, ExStyle for dialogs/controls plus Font for dialogs for even easier access (based on similar requests by Marwin)
-Send To Back/Bring To Front are disabled if Selection is a dialog (i.e. not a control)

-A rebar resize problem fixed(Thanks PhoBos)

-Some flickering on resource dialogs under certain cases removed

-A minor issue with Docking windows fixed.

-Minor improvements

Regards,

akyprian

ps. EDIT: 39 dl, Mar 23, new upload
Posted on 2004-03-22 05:20:24 by akyprian
Hi,

a bug when menuitem shortcuts were saved has been fixed (Thanks santa). New upload at the top

regards,

akyprian
Posted on 2004-03-23 01:55:58 by akyprian
Whoa! You're posting updates really quickly! :)
This is the bugs/suggestions list I made from version 3.0.0.7, please check if they still apply...

Bugs:

1. Some controls have a default caption (same as default ID name), even when the control itself doesn't support one. For example, listview controls. This is not needed, and bloats a little the resource section in the PE file.

2. While WinAsm supports it, you cannot enter a negative number as an ID value (well, actually you can't type a "minus" sign).

3. In the "invoke" autocomplete popup, some macro names are showing! :confused:

4. The version resource dialog has a multiline edit box, but does not take the "enter" key. So hitting enter closes the dialog instead of entering a new line.

5. Using a mouse wheel when the autocomplete popup is visible causes the text to scroll, but the popup remains there (should be hidden). Same thing happens with the "invoke" tooltip. Please note that I haev a "Genius" mouse, with a special software to enforce mousewheel support.

6. Mouse wheel again: when used on some docked windows (RC Options & ToolBox, maybe others), it scrolls the listview in the resource tab in Project window. Additionally, it causes an horizontal scroll bar to appear, covering the tabs. I've attached a picture that shows this effect.

7. The TCM_FIRST message should not appear in the autocomplete popup.

8. Autocomplete should not pop up to show local variables for the "offset" keyword (MASM does not support it).

9. Macros beginning with "$" (like NaN's $invoke) are not collapsible. They are also not recognized by the AddMacro addin, but I suppose this is a consequence of the same bug.

10. The "invoke" autocomplete doesn't work when the function name is unknown.

11. Tab controls with TCS_VERTICAL style are not displayed properly.

12. When a static text control has the SS_RIGHT style and you change it's width, the text is not displayed correctly. Forcing WinAsm to redraw solves the problem.

13. There is no way to switch to/from visual mode when you double click on an RC file from Explorer.

14. When two controls have the same ID (even on different dialogs) and one of them is deleted, the ID is deleted as well.

15. When changing the code editor font, you can't change it's style (normal, bold, italic, etc.). This is bad, because some fonts only have one of this styles (for example, only bold), and once you've selected one of those fonts that style is kept until WinAsm is restarted.

16. If a compiling error occurs on a line that has a "proc" statement, that procedure can't be collapsed again until a successful build is made.


Suggestions:

1. It would be great to have a "safe" subclassing method for all WinAsm windows, to avoid conflicts with multiple addins trying to subclass the same window. Maybe something like CodeHi's CHM_SUBCLASS, but with some way to remove the subclassing to avoid a GPF when the addin unloads. An idea (I hope you like it :) ):
WAM_CAPTURE:

wParam: Window handle to capture (subclass).
lParam: Pointer to window procedure that will receive messages.
Returns TRUE if successful or FALSE on error.
WinAsm keeps a linked lists of subclassed windows and all the WndProc pointers.

WAM_RELEASE:
wParam: Window handle to be released.
lParam: Pointer to window procedure (as passed to WAM_CAPTURE).
Returns TRUE if successful or FALSE on error.

WAM_NEXTWNDPROC:
wParam: Handle of window subclassed with WAM_CAPTURE.
lParam: Pointer to window procedure (as passed to WAM_CAPTURE).
Returns pointer to next window procedure in chain, or NULL on error.
Use CallWindowProc to call this window procedure.


2. An easier (but less general) way to accomplish suggestion #1 is to simply add more addin functions for other WinAsm dialog boxes and windows, like the "new project" dialog, the "browse for folder" dialog, the project properties window, etc.

3. How about an "open collapsed" option? :)

4. Another option: "visual mode on by default". Would be useful when double clicking on RC files (I prefer to use visual mode only for RC files created by WinAsm).

5. It could be useful to have a way to decide which resources are discardable and which ones aren't. Then again, the "DISCARDABLE" switch isn't all that useful anyway (I've never noticed the difference?) :confused:

6. How about this: a user-defined keyfile category. That way we can add the names of our favorite macros into the keyfile, without messing with actual MASM keywords. Would be cleaner IMHO.
Posted on 2004-03-23 15:55:23 by QvasiModo
The picture I mentioned in bug #6.
Posted on 2004-03-23 16:32:51 by QvasiModo
Hi,

I 'll try comment on all of your points in several posts (and using time space between them because of my limited time and also I want to check well and think first)



Bugs:

1. Some controls have a default caption (same as default ID name), even when the control itself doesn't support one. For example, listview controls. This is not needed, and bloats a little the resource section in the PE file.

2. While WinAsm supports it, you cannot enter a negative number as an ID value (well, actually you can't type a "minus" sign).

3. In the "invoke" autocomplete popup, some macro names are showing! :confused:

4. The version resource dialog has a multiline edit box, but does not take the "enter" key. So hitting enter closes the dialog instead of entering a new line.

5. Using a mouse wheel when the autocomplete popup is visible causes the text to scroll, but the popup remains there (should be hidden). Same thing happens with the "invoke" tooltip. Please note that I haev a "Genius" mouse, with a special software to enforce mousewheel support.

6. Mouse wheel again: when used on some docked windows (RC Options & ToolBox, maybe others), it scrolls the listview in the resource tab in Project window. Additionally, it causes an horizontal scroll bar to appear, covering the tabs. I've attached a picture that shows this effect.

7. The TCM_FIRST message should not appear in the autocomplete popup.



1.Ok. Could you post the appropriate controls here for me? (save me some time)
2.YES You can (provided you try to enter valid negative numbers)
3.I already knew that!
4.It is very easy to prevent this but I don't want to do it! Use \r\n to force a new line in the compiled application and let the edit box scroll automatically (if needed). I think this is the best way to be handled. Think about it!
5.OK
6.I 'll try to reproduce it!
7.Delete it from MasmApiConst.vaa and it will be OK

Regards,

akyprian

ps. to be continued...
Posted on 2004-03-23 17:36:07 by akyprian
Quick reply, I have to go now...

1. Ok :)
2-3. Sorry, old buglist :grin:
4. Ok, I'm not sure it's the best way but I can get used to it ;)
5-6. Thanks! :)
7. I'll do that and post the file here.
Posted on 2004-03-23 17:57:25 by QvasiModo


a bug when menuitem shortcuts were saved has been fixed (Thanks santa). New upload at the top



You're welcome :grin:
Posted on 2004-03-23 18:27:46 by santa
Hi again,

Originally posted by QvasiModo


Bugs:
8. Autocomplete should not pop up to show local variables for the "offset" keyword (MASM does not support it).

9. Macros beginning with "$" (like NaN's $invoke) are not collapsible. They are also not recognized by the AddMacro addin, but I suppose this is a consequence of the same bug.

10. The "invoke" autocomplete doesn't work when the function name is unknown.

11. Tab controls with TCS_VERTICAL style are not displayed properly.

12. When a static text control has the SS_RIGHT style and you change it's width, the text is not displayed correctly. Forcing WinAsm to redraw solves the problem.

13. There is no way to switch to/from visual mode when you double click on an RC file from Explorer.

14. When two controls have the same ID (even on different dialogs) and one of them is deleted, the ID is deleted as well.



8.This is not a bug. It simply doesn't check the previous word

9.Nothing can be done. $ is a wildcharacter equal to * for WinAsm Studio. You must use some other character

10.This is by design to show that there is no such a function. Let me see if it is worth the change

11.This is not a bug. From MSDN:
TCS_VERTICAL
Version 4.70. Tabs appear at the left side of the control, with tab text displayed vertically. This style is valid only when used with the TCS_MULTILINE style. To make tabs appear on the right side of the control, also use the TCS_RIGHT style. This style is not supported if you use ComCtl32.dll version 6

12.OK, I'll fix this

13.You can switch to visual mode if you choose Window-Filename. I may need to do it to work the other way round too.

14.OK, I'll fix this

Thanks!

akyprian

ps. To be continued...
Posted on 2004-03-24 04:20:43 by akyprian
When I first run ver 3.0.0.8 i have observed multiply max, min, close window button. Previous version don't have that error. So I downgrade to 3.0.0.7 and again upgrade to 3.0.0.8 and the problem disapear.
I have w2k+sp4+IE6.0
Image is in attachment.
Posted on 2004-03-26 07:24:41 by Tomasz
Thanks Tomasz,

I 've never observed this. If you could reproduce it then I can see where the problem is.

Regards,

akyprian
Posted on 2004-03-26 07:41:26 by akyprian
Hi akyprian,
I have the same problem as Tomasz (multiply max, min, close window button and system menu).
I have w2k+sp4+IE6.0 too.

WBR,
Relic
Posted on 2004-03-26 08:45:53 by Relic
Thanks Tomasz and Relic,

Unfortunately I haven't been able to reproduce it so only guessed. Can you please try the attachement and let me know?

akyprian

ps. If it is not ok then could you please describe what I must do to reproduce the bug?
Posted on 2004-03-26 11:48:53 by akyprian
Witch difficulty, but I reproduced this error.

All windows maximized.

1.Open project
2.Click (in explorer) on some files. (base.asm, data.inc)
3.Click on rsrc.rc
4.Close rsrc.rc

Error in UI. A multiple icons are also in top-left side of window.

In attachment is my project in which I have observed that bug.

Notify If this didn't help you.
Posted on 2004-03-26 13:12:52 by Tomasz
Thanks Tomasz,

Unfortunately I can't reproduce the bug. Could you please try this?

akyprian
Posted on 2004-03-26 16:13:49 by akyprian

8.This is not a bug. It simply doesn't check the previous word

9.Nothing can be done. $ is a wildcharacter equal to * for WinAsm Studio. You must use some other character

10.This is by design to show that there is no such a function. Let me see if it is worth the change

11.This is not a bug. From MSDN:
TCS_VERTICAL
Version 4.70. Tabs appear at the left side of the control, with tab text displayed vertically. This style is valid only when used with the TCS_MULTILINE style. To make tabs appear on the right side of the control, also use the TCS_RIGHT style. This style is not supported if you use ComCtl32.dll version 6

13.You can switch to visual mode if you choose Window-Filename. I may need to do it to work the other way round too.


12, 14: thanks :)

8. Ok.

9. Well, hope you don't mind my criticism... but using a valid MASM character as a wildcard wasn't such a good idea... :( (granted, few people use it anyway). Any chance of changing the $ to something else in Winasm in some future version?

10. IMHO if the user tries to build the project and the function *really* doesn't exist, he's going to find out real soon... :grin: so it's worth the change. Maybe you can replace that feature with something more explicit, like drawing the function name ni italics, for example. Or with a little icon in the margin (something like a question mark) when any line doesn't seem to follow the MASM syntax, or has any other similar problem, like unknown symbols. (Let me dream a bit ;) ).

11. Sorry, I didn't make myself clear... the problem is not in the compiled program (worked just fine) but the resource editor. In particular, the tabs themselves aer displayed vertically, but the labels are still horizontal.

13. Ok. Please enable the item in the Project menu too, IMHO it's more intuitive like that. :)
Posted on 2004-03-28 13:17:53 by QvasiModo
Hi Qvasimodo,

I don't mind criticism at all. I do want it actually.

10.May all your dreams come true :grin:

11.One of the many controls' peculiarities. Too much work for little gain. Put into the "to do" list

13.I am not sure for the project menu item since we are talking about external files to the project.What do you say?

15 & 16 Put into the "to do" list

Suggestions:

1 & 2. When I designed the Add-Ins interface I had in mind that, most probably, the Add-Ins developers would want to create their own dialogs instead of using the existing ones....

3.OK

4. do you prefer this on a per project basis or on application basis?

5.OK

6.The number of categories is fixed. You could utilize one of the existing ones for your own needs.

Regards,

akyprian
Posted on 2004-03-29 02:19:35 by akyprian
I have tested last version of your program (March 26, 2004, 20:45:02) and I have not found the bug with multiply max, min, close window button. All is ok (i hope :-)

Thanks.
Relic
Posted on 2004-03-29 08:31:57 by Relic
@akyprian: Thanks a lot for listening to my comments and suggestions. :)

Bugs:

10, 11, 15, 16: Ok. :)

13. Well, I said it was intuitive, not logical :grin:
Perhaps you can add a button in the RC options window?

Suggestions:

1 & 2. True, but it could be useful to subclass as well. For example, I was thinking of an extension to the project properties dialog by adding extra tabs with more options. It would be so much simpler to subclass the dialog than having to implement the whole thing myself!

I can't think of many other uses for the subclassing feature. At first I just thought of suggesting a "ProjectPropertiesProc" function in addins, but I figured a generic solution might turn out to be useful in the future.

3, 5: Thanks :alright:

4. Good question. How about both? :)
For example, you could make projects "remember" the last used RC editing mode. Then you can also have a global setting (something like "RC editor defaults to visual mode"), overridden by the per-project one.

6. But when I get the next update by PhoBos I'll lose my custom keywords... it would be easier to have them in a separated category, so I can just copy & paste. It's just an eye candy anyway, I can live without it... but also it doesn't cost me anything to make suggestions, right? :grin:
Posted on 2004-04-01 15:42:50 by QvasiModo
Hi QvasiModo,


@akyprian: Thanks a lot for listening to my comments and suggestions. :)

I have to listen and think very well about everything from all users. Thanks again


13. Well, I said it was intuitive, not logical :grin:
Perhaps you can add a button in the RC options window?

Discussions always lead to good resulrs. Nice idea.


Suggestions:
1 & 2. True, but it could be useful to subclass as well. For example, I was thinking of an extension to the project properties dialog by adding extra tabs with more options. It would be so much simpler to subclass the dialog than having to implement the whole thing myself!

good points...


4. Good question. How about both? :)
For example, you could make projects "remember" the last used RC editing mode. Then you can also have a global setting (something like "RC editor defaults to visual mode"), overridden by the per-project one.

I was sure that this would be your answer... :grin: :grin: :grin:


6. But when I get the next update by PhoBos I'll lose my custom keywords... it would be easier to have them in a separated category, so I can just copy & paste. It's just an eye candy anyway, I can live without it... but also it doesn't cost me anything to make suggestions, right? :grin:

NOOO! Nothing to do with PhoBos. If I understood well, you wanted a keyword category for highlighting purposes. If so, you only need to edit MASM.vas

Thanks,

akyprian
Posted on 2004-04-02 01:29:05 by akyprian

I was sure that this would be your answer... :grin: :grin: :grin:

:tongue:

NOOO! Nothing to do with PhoBos. If I understood well, you wanted a keyword category for highlighting purposes. If so, you only need to edit MASM.vas

My mistake, I thought PhoBos was also doing the MASM.vas updates.
Anyway, that file isn't going to be changed anytime soon (I suppose it's complete by now). :)
Posted on 2004-04-06 16:37:27 by QvasiModo