MSFN Forum: Version 3.2 - featuring program exclusions - MSFN Forum

Jump to content


  • 2 Pages +
  • 1
  • 2
  • You cannot start a new topic
  • This topic is locked

Version 3.2 - featuring program exclusions superceded by 3.3 Rate Topic: -----

#1 User is offline   hasi001 

  • Coder
  • PipPipPip
  • Group: Members
  • Posts: 324
  • Joined: 27-September 04

Posted 29 December 2004 - 09:36 AM

Hi. Version 3.2 will be dedicated to the 'most wanted' exclusion functionalty discussed in thread 'if A is selected then B should be ... what ?'

Right now I'm only on the way to it with Version 3.2.0 introducting the possibility to disable checkboxes, if their dependencies are not met. Exclusions do not work yet, but as 3.2 is dedicated to that ... just wait for it.

Please test that thing with your configs and post results. There could be some bugs. The new function can be switched on/off in options dialog - so the 'old' behaviour is still in there ...

Have fun.


#2 User is offline   hasi001 

  • Coder
  • PipPipPip
  • Group: Members
  • Posts: 324
  • Joined: 27-September 04

Posted 03 January 2005 - 04:35 AM

Version 3.2.2 is online.

There's been done a lot of things. Most important: exclusions should work now. I need some testers here.

Other changes/enhancements: see the WPI homepage.

#3 User is offline   a06lp 

  • Friend of MSFN
  • PipPipPipPipPip
  • Group: Members
  • Posts: 976
  • Joined: 19-August 04

Posted 03 January 2005 - 07:02 AM

hmm
i just downloaded this version to test it out.
i don't know how to mess with exclusions, but i have some dependencies in my programs.
in 3.0.3 (the version i currently use), if i check a box that has a requirement/dependency, it's parent (program it needs) is auto-selected.
in this new version 3.2.2, i cannot select the option until the parent is checked. that is kind of annoying - what was wrong with the old way? this way the user doesn't have to know whats dpenedent, it simply checks the parent for him. and if the parent is unchecked, so it the dependent prog.
the not-being-able-to-check-a-prog-without-parent-prog-selected-first idea is not good...

#4 User is offline   hasi001 

  • Coder
  • PipPipPip
  • Group: Members
  • Posts: 324
  • Joined: 27-September 04

Posted 03 January 2005 - 07:22 AM

I know you hate that options wizard, but there's an option there saying 'Disable, when dependencies not met' - set this to false and voila - 'old' behaviour (except for exclusions)

#5 User is offline   hasi001 

  • Coder
  • PipPipPip
  • Group: Members
  • Posts: 324
  • Joined: 27-September 04

Posted 03 January 2005 - 07:48 AM

How do exclusions work:

imagine 2 apps PA and PB with uid=PA and uid=PB

if PA should exclude PB and PB should exclude PA then
excl[PA]=PB and excl[PB]=PA

if only PA should exclude PB then
excl[PA]=PB

if program PC should exclude PA and PB then
excl[PC]=PA,PB

it wouldn't make sende to create contraproductive dependencies:
PA shouldn't exclude PB if it's dependent on it !!
deps[PA]=PB and excl[PA]=PB
or
deps[PA]=PB and excl[PB]=PA

the code used above is pseudo code - don't use it in your config. the right syntac would be: excl[pn]=['PA'], excl[pn]=['PA','PB']
in the config wizard you could just use PA,PB - the wizard makes the rest for you.

DON'T FORGET TO GIVE EACH APPLICATION USED IN DEPS or EXCL A UNIQUE IDENTIFIER (uid).

#6 User is offline   r2k02 

  • Newbie
  • Group: Members
  • Posts: 22
  • Joined: 23-December 04

Posted 03 January 2005 - 09:26 AM

Like I wrote in my first post, I'm upgrading from 3.0.3 to 3.2.2. In testing my configuration I noticed a changed behaviour of the dependencies.

In 3.0.3 when PB was dependend on PA I could klik on PB which in turn would select both PB and PA.
In 3.2.2 when PB is dependend on PA, I can only select PB if PA was selected before.

Needless to say that I prefer to see the 3.0.3 behaviour back in a future version of WPI.

I don't know if it is an undocumented feature (to minor to call it a bug :P ), but a box that is not available for selection is a bit larger than a normal checkbox. Would it be possible to keep it the same size, but only greyed out?

Regards,
r2k02

#7 User is offline   r2k02 

  • Newbie
  • Group: Members
  • Posts: 22
  • Joined: 23-December 04

Posted 03 January 2005 - 09:49 AM

Except for the behavioural problem described above the following code works perfect. Both exclusions and dependencies are used to select either MS Office or OpenOffice.org (in different flavours) and to fullfill the dependency of ORK to either Office (full or WEP).

Great job done hasi001 :thumbup

//------Office---------------------------------------------------------------------------------
prog[pn]=['Microsoft Office 2003']
desc[pn]=['Installeert Microsoft Office 2003 Professional met de standaard opties. <i>Aanbevolen</i>']
cmd1[pn]=['msiexec.exe /qb /i %cdrom%\\Software\\Office2003\\PRO11.MSI']
dflt[pn]=['no']
 cat[pn]=['<font color="FF9900">Office</font>']
 uid[pn]=['O2K3F']
excl[pn]=['O2K3WEP','OOO1','OOO2']
pn++

prog[pn]=['Microsoft Office 2003 (Word, Excel, PowerPoint)']
desc[pn]=['Installeert alleen Word, Excel en PowerPoint van Microsoft Office 2003 Professional. <i>Aanbevolen</i>']
cmd1[pn]=['%cdrom%\\Software\\Office2003\\setup.exe TRANSFORMS=%cdrom%\\Software\\Office2003\\Unattended.MST /qb']
dflt[pn]=['no']
 uid[pn]=['O2K3WEP']
excl[pn]=['O2K3F','OOO1','OOO2']
pn++

prog[pn]=['Microsoft Office 2003 Resource Kit']
desc[pn]=['Installeert Microsoft Office 2003 Resource Kit. <i>Voor ontwikkelaars</i>']
cmd1[pn]=['msiexec.exe /qb /i %cdrom%\\Software\\Office2003\\ORK\\ORK.MSI']
dflt[pn]=['no']
 uid[pn]=['O2K3RK']
deps[pn]=['O2K3F']
pn++

prog[pn]=['OpenOffice.org 1.1.4 NL']
desc[pn]=['OpenOffice.org is een opensource vervanger voor MS Office.']
cmd1[pn]=['%cdrom%\\Software\\OpenOffice\\setup.exe -alluser -r:%cdrom%\\Software\\OpenOffice\\response.txt']
cmd2[pn]=['%cdrom%\\Software\\OpenOffice\\OpenOffice.cmd']
dflt[pn]=['no']
 uid[pn]=['OOO1']
excl[pn]=['O2K3F','O2K3WEP','OOO2']
pn++

prog[pn]=['OpenOffice.org 1.9.65']
desc[pn]=['OpenOffice.org is een opensource vervanger voor MS Office.']
cmd1[pn]=['msiexec.exe /qb /i %cdrom%\\Software\\OpenOffice2\\openofficeorg1965.msi']
dflt[pn]=['no']
 uid[pn]=['OOO2']
excl[pn]=['O2K3F','O2K3WEP','OOO1']
pn++


#8 User is offline   hasi001 

  • Coder
  • PipPipPip
  • Group: Members
  • Posts: 324
  • Joined: 27-September 04

Posted 03 January 2005 - 10:11 AM

Quote

In 3.0.3 when PB was dependend on PA I could klik on PB which in turn would select both PB and PA.
In 3.2.2 when PB is dependend on PA, I can only select PB if PA was selected before.
Needless to say that I prefer to see the 3.0.3 behaviour back in a future version of WPI.
Would you please read the 4th post? Would help alot not to have to answer the same question a thousand times. Or just read through the descriptions in the options wizard page ?

Quote

but a box that is not available for selection is a bit larger than a normal checkbox

then change your windows theme. i've nothing to do with how your checkboxes look like. and if it was a cows head if it's deselected - it wouldn't be my fault.

Quote

... the following code works perfect. Both exclusions and dependencies are used to select either MS Office or OpenOffice.org (in different flavours) and to fullfill the dependency of ORK to either Office (full or WEP).

Good to hear that.

#9 User is offline   r2k02 

  • Newbie
  • Group: Members
  • Posts: 22
  • Joined: 23-December 04

Posted 03 January 2005 - 10:38 AM

Quote

Would you please read the 4th post? Would help alot not to have to answer the same question a thousand times. Or just read through the descriptions in the options wizard page ?
It's only the 2nd time for this question :wacko: , but I get your point. I'll make sure it won't happen again.

Quote

then change your windows theme. i've nothing to do with how your checkboxes look like. and if it was a cows head if it's deselected - it wouldn't be my fault.

I should have known this as well as I now remember that there were several posts asking how to get the nice checkboxes that a member had in his screenshot. Sorry again, but for n00bs it is not so obvious that you have nothing to do with those checkboxes. It would however be nice if you could turn these into cows :D

#10 User is offline   a06lp 

  • Friend of MSFN
  • PipPipPipPipPip
  • Group: Members
  • Posts: 976
  • Joined: 19-August 04

Posted 03 January 2005 - 11:00 AM

hasi001, on Jan 3 2005, 09:22 AM, said:

I know you hate that options wizard, but there's an option there saying 'Disable, when dependencies not met' - set this to false and voila - 'old' behaviour (except for exclusions)

Ok, i changed var disableOnDepsNotMet=false; in useroptions.js, and it's the old method, as you described (I still refuse to use the **** wizard! :P )

Now I'm trying to make my code work with the option var disableOnDepsNotMet=true; (thus allowing for the new coding, correct?):

It seems that exclusions don't have anything to do with what I am manipulating.
For example, LimewirePro requires J2SE. Therefore, Limewire has deps[pn]=['J2RE']. What I cannot understand is why this works any differently in the new version? What is the point of "disableOnDepsNotMet"? What else does "disableOnDepsNotMet" effect (just dependencies, or something to do with exclusions too)?
I see that the checkbox is not selectable until you select the dependency first. but why is that even an option, as opposed to the old method of auto-selecting the dependencies? Is it a simple matter of preference, or does it have to do with new coding?
(let me know if i am not making sense here, i feel like i am not typing clearly)

#11 User is offline   hasi001 

  • Coder
  • PipPipPip
  • Group: Members
  • Posts: 324
  • Joined: 27-September 04

Posted 03 January 2005 - 12:14 PM

Quote

It would however be nice if you could turn these into cows
:) I'll try next release ...

#12 User is offline   hasi001 

  • Coder
  • PipPipPip
  • Group: Members
  • Posts: 324
  • Joined: 27-September 04

Posted 03 January 2005 - 12:30 PM

Quote

(let me know if i am not making sense here, i feel like i am not typing clearly)
.. I know what you're speaking of. I'm suffering the same, when I look into the code of dependencies and exclusions. All of it sounds so easy, but it isn't.

Let me tell you this first: The option to automatically select a programs parent (the way you like it to work) was just a side effect of what I was trying to accomplish. My primary goal was to make the dependent program unselectable if its' parent wasn't selected. I wrote the code and saw 'hey - it's now possible to autoselect parents if I only change that single line of code' .... and now - after finishing the works on exclusions - it isn't a single line anymore. It's recursive functions calling themselves, and hard to keep track of (turn on debug and set it to level 5 - you'll see what I speak of).

What I do not understand in your posting is the following: You know that it would work, when you set disableOnDepsNotMet=false, and now you're trying to accomplish the same behaviour (autoselect), when setting the option to true, right ?
Note that disableOnDepsNotMet means 'DISABLE a programs checkbox, if its' DEPENDENCIES ARE NOT MET' - that means, a checkbox is disabled, if one of its parents is disabled or not selected.

Everything unclear ? Perhaps you found a bug I do not yet know of. Try to rethink, what you want to achieve. Recheck the config. Post if you found an error.
That's why I'm pleading all users to test it. The primary goal of a software test is destruction. Only bugs that are found can be fixed.....and the only good bug is a dead bug.

#13 User is offline   a06lp 

  • Friend of MSFN
  • PipPipPipPipPip
  • Group: Members
  • Posts: 976
  • Joined: 19-August 04

Posted 03 January 2005 - 02:15 PM

ok, my basic question earlier was this:
the function "disableOnDepsNotMet" - this ONLY controls the behavior of deps[pn]=['']? Basically, it says:
disableOnDepsNotMet=false = if child program selected, parent is auto-selected. if parent unselected, child is auto-unselected.
disableOnDepsNotMet=true = if parent selected, child is ALLOWED to be checked, but it's not done automatically. if parent unselected, child is greyed out, and not selectable.

i wanted to know if the function of "disableOnDepsNotMet" does ANYTHING else? will setting it to false (to get the control i like) effect ANY of the other configurable options (ex: exclusions)?

Sounds much clearer to me now, let me know if you understand me now.

#14 User is offline   hasi001 

  • Coder
  • PipPipPip
  • Group: Members
  • Posts: 324
  • Joined: 27-September 04

Posted 03 January 2005 - 03:17 PM

Ok - I understand.

disableOnDepsNotMet ONLY affects something that has to do with the deps property.

some checkboxes could still be disabled - if these programs were excluded by others, that were checked.

#15 User is offline   a06lp 

  • Friend of MSFN
  • PipPipPipPipPip
  • Group: Members
  • Posts: 976
  • Joined: 19-August 04

Posted 03 January 2005 - 03:19 PM

ok, great.

so what i wrote above was kind of a tiny tutorial on that function. :)

#16 User is offline   hasi001 

  • Coder
  • PipPipPip
  • Group: Members
  • Posts: 324
  • Joined: 27-September 04

Posted 03 January 2005 - 05:45 PM

Found a new way to speed up config wizard. Download Version 3.2.3 now.

#17 User is offline   Dynaletik 

  • Senior Member
  • PipPipPipPip
  • Group: Members
  • Posts: 652
  • Joined: 18-September 04
  • OS:none specified
  • Country: Country Flag

Posted 04 January 2005 - 03:00 AM

I think there is a problem with the configwizard.
The rega and regb lines are not displayed in the wizard, they are deleted by saving.

#18 User is offline   hasi001 

  • Coder
  • PipPipPip
  • Group: Members
  • Posts: 324
  • Joined: 27-September 04

Posted 04 January 2005 - 08:02 AM

Bug fixed. Download anew.

#19 User is offline   dlevens 

  • Member
  • PipPip
  • Group: Members
  • Posts: 101
  • Joined: 07-September 04

Posted 04 January 2005 - 01:09 PM

Hasi,

I am using 3.2.3 and for your testing here is my config.js file
config.js

Possible bug with exlcusions:

3 of 4 work but cannot get all 4 to work. For some reason 'Microsoft Office 2003 (Word Excel PowerPoint)' is always greyed out and can never be checked.
If I use the config wizard to put the exlusions and use this:
O2K3WEP,O2K3WE,O2K3W

Then after saving from config wizard and opening config wizard again it has been changed to this
O2K3WEP,O2K3WE','O2K3W

So I then bypassed using the config wizard and checked the config file itself and even though it looks odd in the config wizard it appears perfect when you view in notepad, see below
prog[pn]=['Microsoft Office 2003 (Word Excel PowerPoint Outlook)']
uid[pn]=['O2K3WEPO']
excl[pn]=['O2K3WEP','O2K3WE','O2K3W']
desc[pn]=['Installs Microsoft Word Excel PowerPoint Outlook.']
cmd1[pn]=['%cdrom%\\Install\\Software\\Office2003\\Office2003.exe']
cmd2[pn]=['%systemdrive%\\Support\\Applications\\Office2003\\setup.exe TRANSFORMS=Unattended.MST /qb-! /noreboot']
cat[pn]=['Office (Chooose Only One)']
pn++

prog[pn]=['Microsoft Office 2003 (Word Excel PowerPoint)']
uid[pn]=['O2K3WEP']
deps[pn]=['O2K3WEPO','O2K3WE','O2K3W']
desc[pn]=['Installs Microsoft Word Excel PowerPoint']
cmd1[pn]=['%cdrom%\\Install\\Software\\Office2003\\Office2003.exe']
cmd2[pn]=['%systemdrive%\\Support\\Applications\\Office2003\\setup.exe TRANSFORMS=WordExcelPowerPoint.MST /qb-! /noreboot']
cat[pn]=['Office (Chooose Only One)']
pn++

prog[pn]=['Microsoft Office 2003 (Word Excel)']
uid[pn]=['O2K3WE']
excl[pn]=['O2K3WEP','O2K3WEPO','O2K3W']
desc[pn]=['Installs Microsoft Word Excel']
cmd1[pn]=['%cdrom%\\Install\\Software\\Office2003\\Office2003.exe']
cmd2[pn]=['%systemdrive%\\Support\\Applications\\Office2003\\setup.exe TRANSFORMS=WordExcel.MST /qb-! /noreboot']
cat[pn]=['Office (Chooose Only One)']
pn++

prog[pn]=['Microsoft Office 2003 (Word)']
uid[pn]=['O2K3W']
excl[pn]=['O2K3WEP','O2K3WE','O2K3WEPO']
desc[pn]=['Installs Microsoft Word']
cmd1[pn]=['%cdrom%\\Install\\Software\\Office2003\\Office2003.exe']
cmd2[pn]=['%systemdrive%\\Support\\Applications\\Office2003\\setup.exe TRANSFORMS=Word.MST /qb-! /noreboot']
cat[pn]=['Office (Chooose Only One)']
pn++


So then I tried this on the exclusion line
'O2K3WEP','O2K3WE','O2K3W'


And then checked the config file itself but then it is really messed
prog[pn]=['Microsoft Office 2003 (Word Excel PowerPoint Outlook)']
uid[pn]=['O2K3WEPO']
excl[pn]=['\\','O2K3WEP\\','\\','O2K3WE\\','\\','O2K3W\\']
desc[pn]=['Installs Microsoft Word Excel PowerPoint Outlook.']
cmd1[pn]=['%cdrom%\\Install\\Software\\Office2003\\Office2003.exe']
cmd2[pn]=['%systemdrive%\\Support\\Applications\\Office2003\\setup.exe TRANSFORMS=Unattended.MST /qb-! /noreboot']
cat[pn]=['Office (Chooose Only One)']
pn++

prog[pn]=['Microsoft Office 2003 (Word Excel PowerPoint)']
uid[pn]=['O2K3WEP']
deps[pn]=['\\','O2K3WEPO\\','\\','O2K3WE\\','\\','O2K3W\\']
desc[pn]=['Installs Microsoft Word Excel PowerPoint']
cmd1[pn]=['%cdrom%\\Install\\Software\\Office2003\\Office2003.exe']
cmd2[pn]=['%systemdrive%\\Support\\Applications\\Office2003\\setup.exe TRANSFORMS=WordExcelPowerPoint.MST /qb-! /noreboot']
cat[pn]=['Office (Chooose Only One)']
pn++

prog[pn]=['Microsoft Office 2003 (Word Excel)']
uid[pn]=['O2K3WE']
excl[pn]=['\\','O2K3WEPO\\','\\','O2K3WEP\\','\\','O2K3W\\']
desc[pn]=['Installs Microsoft Word Excel']
cmd1[pn]=['%cdrom%\\Install\\Software\\Office2003\\Office2003.exe']
cmd2[pn]=['%systemdrive%\\Support\\Applications\\Office2003\\setup.exe TRANSFORMS=WordExcel.MST /qb-! /noreboot']
cat[pn]=['Office (Chooose Only One)']
pn++

prog[pn]=['Microsoft Office 2003 (Word)']
uid[pn]=['O2K3W']
excl[pn]=['\\','O2K3WEPO\\','\\','O2K3WEP\\','\\','O2K3WE\\']
desc[pn]=['Installs Microsoft Word']
cmd1[pn]=['%cdrom%\\Install\\Software\\Office2003\\Office2003.exe']
cmd2[pn]=['%systemdrive%\\Support\\Applications\\Office2003\\setup.exe TRANSFORMS=Word.MST /qb-! /noreboot']
cat[pn]=['Office (Chooose Only One)']
pn++


#20 User is offline   hasi001 

  • Coder
  • PipPipPip
  • Group: Members
  • Posts: 324
  • Joined: 27-September 04

Posted 04 January 2005 - 05:22 PM

shouldn't
uid[pn]=['O2K3WEP']
deps[pn]=['O2K3WEPO','O2K3WE','O2K3W']
be
uid[pn]=['O2K3WEP']
excl[pn]=['O2K3WEPO','O2K3WE','O2K3W']


for the wizard doing nonsense in the config, I'll need some more time ...

Share this topic:


  • 2 Pages +
  • 1
  • 2
  • You cannot start a new topic
  • This topic is locked

2 User(s) are reading this topic
0 members, 2 guests, 0 anonymous users



All trademarks mentioned on this page are the property of their respective owners
Copyright © 2001 - 2013 msfn.org
Privacy Policy