Winamp & Shoutcast Forums

Winamp & Shoutcast Forums (http://forums.winamp.com/index.php)
-   NSIS Discussion (http://forums.winamp.com/forumdisplay.php?f=65)
-   -   InstallOptionsEx (http://forums.winamp.com/showthread.php?t=181087)

deguix 24th May 2004 23:34

InstallOptionsEx
 
1 Attachment(s)
I modified the original version of InstallOptions to add some controls (not supported by all OS, or with others special requirements) and to make some additional changes:

- Removed NumFields from INI File "Settings" section.
- Added Animation and ProgressBar controls.
- Added ability of ComboBox and DropList controls of supporting images for each item in their list boxes.
- Added TRANSPARENT, CENTER and NOAUTOPLAY flags for Animation controls and SMOOTH and VERTICAL flags for ProgressBar controls.
- Added support of NOTIFY flag for Text, Password and ComboBox controls.

This is just beta version, it probably has some bugs and I don't know, I'm not responsible for problems it gonna make, as even it's my first touch in C++.

Included the .dll and its readme.

Joel 25th May 2004 00:09

I'll test it :)

// edit by me

deguix 25th May 2004 00:19

For the next version I'll be targeting the easiest controls to implement, as Trackbar.

zimsms 25th May 2004 15:33

It would be cool if it supported the property grid control, very useful for pre-configuration setup....

deguix 25th May 2004 21:07

But one thing can be done even without C++, create an editor of InstallOptions pages which shows the page and edits it at the same time, using the great "Rect" page attribute (where you can assign a page with a part of the resource, if used correctly, it can even show several pages at the same time).

One problem is: how can I unload InstallOptions without going to other pages or quiting the program? Probably the idea of creating a .dll function called "Clear" (as I saw in another modification) would be great to add, but as you know, I don't have that kind of knowledge of how to do it (so help is appreciated here)...

deguix 31st May 2004 12:56

1 Attachment(s)
OK! New version beta 2 (5/31/2004):

- Added TrackBar and IPAddress controls.
- Added ability of Button controls of
supporting an image or icon.
- Added BACK_RECT, TOOLTIPS and NO_TICKS flags for
TrackBar controls and BITMAP and ICON flags for
Button controls.
- Added support of NOTIFY flag for IPAddress control.
- Removed TRANSPARENT and NOAUTOPLAY flags for Animation
control.

Included .dll and its Readme.

Main TODO -> Addition of new controls.

Any help to make this plugin even better is accepted at any times.

deguix 7th June 2004 10:01

1 Attachment(s)
OK! New version beta 3 (6/7/2004):

- Added DateTime and MonthCalendar controls.
- Added UPDOWN flag for DateTime controls and NOTODAY, NOTODAYCIRCLE and WEEKNUMBERS flags for MonthCalendar controls.

flizebogen 9th June 2004 09:22

Your additions sounds great. How about adding a few samples to your package?

deguix 9th June 2004 10:25

I'm planning it for the next or the following version. I didn't do any until now because I was trying to change more things of it!

Planned:

- Addition of UpDown control. (not attached with other controls)
- Add ability of it to make other controls as its buddy control (UpDown control).
- Remove FileRequest and DirRequest.
- Add flags for Button controls to make it act like same as FileRequest and DirRequest but using a buddy control (don't need to the a Text control). Makes the Text control free to use its NOTIFY flag and the Button control to be user customized.
- Implement NSIS style $\n,$\r and $\t. Try to implement common variables ($0-9 $R0-9) as input and output.

I ever wanted to make that change of splitting FileRequest and DirRequest Text control from the Button control since I discovered: after using those controls, to get a control handle you had to use a control number different than the InstallOptions one. Now it will be balanced.

deguix 11th June 2004 23:39

1 Attachment(s)
OK! New version beta 4 (6/11/2004):

- Added UpDown control.
- Removed FileRequest and DirRequest controls. Use Text and Button controls instead.
- Added FILEREQUEST and DIRREQUEST flags for Button controls and LEFT, HORIZONTAL and WRAP flags for UpDown controls.
- NSIS $\n, $\r and $\t imported to remove the need for conversions between NSIS characters and plugin's.

This version is about exactly as I planned before (except for the variables thing, I'm trying to implement that).

iceman_k 12th June 2004 01:53

How about the source code as well? Wouldn't hurt to get it peer reviewed.
A couple of questions-
a) What is the advantage of using NSIS style $\r $\n instead of \r \n?
b) What exactly are you trying to implement for the "variables" feature? I'm a little hazy on that.

deguix 12th June 2004 10:50

1 Attachment(s)
I wasn't posting the source because to don't boost much my post count for each version that is launched. Anyways, I posted it below.

(If you see, there are comments of what I added or changed, but I didn't comment removed parts)

a) Because before implementing that, if you would write and/or read Install Options INI files, you had to convert the string from NSIS -> Install Options and/or Install Options -> NSIS to be supportable with one another. For example:

NSIS string: "// NSIS string test \\$\r$\n// NSIS second line \\"

Putting this exact NSIS string into an INI file from Install Options and making it show, it would appear like this:

// NSIS string test \$$// NSIS second line \

So I think this explained it.

2) I don't know why I posted it! I should be saying before "not a good idea" instead of "I'm trying to implement that" by now. Sometimes I paste the information without changes and forget the spelling...:(

iceman_k 12th June 2004 14:05

1 Attachment(s)
Overall, I think this is pretty good. A couple of comments:
a) I still don't see any advantage of using "NSIS" syntax for special characters as opposed to the current "C" syntax that InstallOptions uses. In fact, I couldn't even get the "NSIS" syntax to work. Do you have an example showing how it works? See my attached script. It doesn't seem to work properly.
b) I agree with you, drop the whole "variables" thing. I don't see any advantage in implementing it.

deguix 12th June 2004 18:09

InstallOptionsEx version beta 4 - DLL
 
1 Attachment(s)
a) Fixed. Same version.

deguix 12th June 2004 18:11

InstallOptionsEx version beta 4 - DLL Source
 
1 Attachment(s)
...

iceman_k 13th June 2004 01:58

OK, I see that you have fixed the "NSIS" style escape characters. But I still don't see the advantage of it.
Either way I have do conversions- whether it uses the "C" style or the "NSIS" style.

deguix 13th June 2004 02:22

As you insist, I'll put a define in the Source Code to use the old "C" style.

bluenet 13th June 2004 05:08

Is these any sample to show the new feature?

bluenet 13th June 2004 12:56

Hi deguix
,NOTIFY flags in DropList control not work,Can you have a look?

iceman_k 13th June 2004 14:42

Don't get me wrong- I think you've done a good job. I don't want to insist that you change anything. But if something as basic as the escape character is going to be changed, I think we should see a clear advantage for it.
The other thing of course is that it will not be compatible with MUI.

Another suggestion is to document which OS the new controls do not work on- since you did say that the InstallOptionsEx is not 100% supported by all Windows OS'es.

deguix 13th June 2004 19:23

Quote:

Is these any sample to show the new feature?
Hmmm... I didn't launch any sample yet, I'm working on one.

Quote:

Hi deguix
,NOTIFY flags in DropList control not work,Can you have a look?
Yep, it happens when you use the new feature for it: 16x16 Image for each item. This happens because it doesn't use the normal DropList but a modified instead. But I'll try to put the NOTIFY as soon as possible.

Quote:

Don't get me wrong- I think you've done a good job. I don't want to insist that you change anything. But if something as basic as the escape character is going to be changed, I think we should see a clear advantage for it.
The other thing of course is that it will not be compatible with MUI.
I'm playing on conservative side now. I understand, everyone used "\r\n" way since InstallOptions had the MULTILINE support. I'll go back in that change, but I'll make a define for people who liked this change I made. As a matter of fact this project continues with the name "InstallOptions" at front of it, isn't it? The discussion of that ends here.

Quote:

Another suggestion is to document which OS the new controls do not work on- since you did say that the InstallOptionsEx is not 100% supported by all Windows OS'es.
Thanks for the suggestion, I'll put this on the next version of InstallOptionsEx.

Joost Verburg 13th June 2004 20:43

Isn't the problem with NSIS style escaping that NSIS converts them before writing to the INI file using WriteIniStr?

deguix 14th June 2004 02:07

Ohhh :eek: ... that's why he doesn't see an advantage of that... How I am stupid! I have to punch my face after that. Anyways, I was going to back up that change...

iceman_k 14th June 2004 03:27

Yep. The NSIS style escaping works if the text is already in the INI file. However, if you want to dynamically write to the INI file, you will have to convert everything.
Thanks Joost for explaining it better than I could.

deguix 14th June 2004 23:20

InstallOptionsEx version beta 5 (before next version launching) - DLL
 
1 Attachment(s)
Just to fix that, I made a version "before the launching of the next version". But I made some small additions that will have in the next version:

- NOTIFY flag for MonthCalendar, DateTime and UpDown controls.
- Returned to old "C" style escape characters.

These changes are undocumentated.

I'm making this version because of the full week of school work on me (because the school year is ending) and the final tests. Next version is planned to be launched next week (after Tuesday).

deguix 14th June 2004 23:24

InstallOptionsEx version beta 5 (before next version launching) - DLL Source
 
1 Attachment(s)
...

bluenet 14th June 2004 23:43

Thanks deguix,I like this EX version very much.

deguix 14th June 2004 23:51

If you know, Ex is for "Expanded". Generally I did put for my functions the "Adv" for "Advanced". I just didn't put "Adv" on the plugin name because it doesn't have dramatic changes comparing with the normal InstallOptions. It just adds more controls and new features.

deguix 27th June 2004 22:27

InstallOptionsEx version beta 5 - DLL
 
1 Attachment(s)
- Added HotKey control.
- Added support of NOTIFY flag for MonthCalendar, DateTime, UpDown and HotKey controls.
- Added information to controls and options their minimum supportable OS.
- C style escape characters restored again.
- Fixed problems with new controls about the TabStop not working.

HotKey control doesn't have a 100% correct translation Input->Control-Control->Output: If you type "Ctrl + +" as input it will convert to "Ctrl +", and if you type some keys that I don't know their VK_ names (like some numpad keys) it won't output these. But for most of the keys the control will work correctly.

deguix 27th June 2004 22:29

InstallOptionsEx version beta 5 - DLL Source
 
1 Attachment(s)
...

bluenet 3rd July 2004 12:13

I found that droplist can not list item,but InstallOption can.

deguix 3rd July 2004 18:38

What do you mean by that?

bluenet 3rd July 2004 22:50

This same code in here: http://forums.winamp.com/showthread....24#post1399824
When change InstallOptions:: to InstallOptionsEx:: the droplist items missing.

deguix 4th July 2004 06:37

Everything is working fine for me.

InstallOptionsEx v.2.4 beta 5
NSIS 2.0 -> latest development snapshot
Windows XP Home Edition -> latest updates

What InstallOptionsEx, NSIS and Windows version do you use?

bluenet 4th July 2004 09:09

1 Attachment(s)
InstallOptionsEx v.2.4 beta 5
NSIS 2.0 Specail(Open LogSet command)
Windows Server 2003 Simplified Chinese

I upload the script and exefile here,would you have a look what wrong for me.

deguix 4th July 2004 21:56

Remove Text=DropList lines inside your .ini file for now.

bluenet 5th July 2004 08:03

OK.Thanks deguix,the ini file create by HM NIS Edit,I forgot this.

AlexBienheureux 9th July 2004 13:26

could you put an example which one sees all the possibilities?

thank you

deguix 10th July 2004 01:48

If I do it now, I have to change it for every version I launch as you know that it's a beta version. When it becomes stable I'll do one. This is not the right time to do that.

Now, about the changes for the next version, I've done some fixes to it, like that one from bluenet. But I'm not giving more details on it right now.

VegetaSan 10th July 2004 15:18

OMG .. that's some nice shit ^^


All times are GMT. The time now is 17:46.

Copyright © 1999 - 2010 Nullsoft. All Rights Reserved.