Hello Scott. I made some changes into "Macintosh" specific source code. As I wrote earlier, I don't have really Macintosh, so I has executed certain programmer pseudo emulation of Macintosh for Kaboodle. Now I see VNC halo on my "Macintosh" emulation device. But that programmer pseudo emulation is not quite safely. Therefore I ask you about following: - please check results of my changing (please clear Kaboodle registry key before that check), - please ask the author of "Macintosh" specific source code to check my source code changing. Please see my inline comments. - Igor
----- Original Message ----- From: "Scott C. Best" <[EMAIL PROTECTED]> To: "Igor Kotelevsky" <[EMAIL PROTECTED]> Cc: "mailbox" <[EMAIL PROTECTED]>; <[EMAIL PROTECTED]>; "Kaboodle-devel" <[EMAIL PROTECTED]> Sent: Wednesday, July 10, 2002 8:32 PM Subject: Re: [Kaboodle-devel] Re: Bog Report, 4 July > Igor: > Let me try to explain (I'm CC'ing Oleg too, who > sometimes has better luck understanding my english). > > My Macintosh is running VNC. The Macintosh IP address > is 192.168.123.128. I'm running Kaboodle on a WinNT machine. It > has IP address 192.168.123.130. There is nothing else on this > LAN. When I start Kaboodle, it correctly puts a Macintosh icon > into the "My Macs" icon group. But the icon does not have a VNC > halo. When I open the Property Panel for the Macintosh, and go > to the VNC Property Tab, Kaboodle auto-detects the VNC server > correctly. I can enter a password and hit Connect and VNC starts > like it should. But if I open the VNC Service Property Panel, > the Macintosh is not listed in the list of servers. And although > the VNC server has been detected, there is no halo on the > Macintosh icon. If I change the icon to a Windows PC icon, the > halo still does not appear. ******************************************************************** It was before changing: Please see the function void CNetworkLocalView::RebuildNIDTopology(int nIndex) in the file UI\NetworkLocalView.cpp. In that function exists block case EF_NID_PC: ... That block checks both binary flags 1) - bool bIsIndependentVncListner, which indicate that independent Vnc Server is running on PC. 2) - bool bKaboodleRunning, which indicate that Kaboodle is running on PC, Then that block creates a PC icon - AddPC( ..., ..., bKaboodleRunning, bIsIndependentVncListner, ...); The PC icon knows data #1, #2 and can show "VNC halo" or "Kaboodle halo". In the function void CNetworkLocalView::RebuildNIDTopology(int nIndex) also exist block case EF_NID_MAC: ... That block doesn't checks flags #1, #2 directly. This block immediately creates a MAC icon - AddMacintosh(pDevAttribs->m_DeviceID,pDevAttribs->m_strAlias, pDevAttribs->m_iconIndex);//@VK9 The MAC icon doesn't knows data #1, #2 and can not show "VNC halo" or "Kaboodle halo". ******************************************************************** It is now: In the function void CNetworkLocalView::RebuildNIDTopology(int nIndex) exist common block for PC and MAC devices case EF_NID_PC: case EF_NID_MAC: ... That block call the function CEFIcon * CNetworkLocalView::AddPC_or_Macintosh(..., bool bKaboodleRunning, bool bVncListner,int iconIndex, int iType) for both types of device. ******************************************************************** > If I replace the Macintosh with a Windows98 PC that is > running VNC but is not running Kaboodle, it works correctly. > The VNC halo appears when it should, and the VNC Server list > shows the IP address of the Win98 PC. Also, the Property Panel > for PC's show four tabs: System Info, Components, VNC Setup, > and Icon Properties. For Mac's, there are only three (the > Components one is missing). If I change the Win98 PC's icon > to a Macintosh icon, the VNC halo still works correctly. > > I think this behavior is due to Kaboodle treating > Macintosh's different from the Win98 PC. That is, it seems to me > that the NID identifier which tells Kaboodle to put the Macintosh > into the "My Macs" icon group is *also* telling Kaboodle to not > treat the device like a Windows PC with regards to VNC and in > regards to what tabs to show in the Property Panel. Kaboodle > should treat Macintosh PC's and non-Kaboodle PC's the same in > *every way* except for the icon group and the "System Info" tab > in the Property Panel. > > Put another way, Kaboodle should treat all devices that > are not Printers or Appliances in the same way. Any one of these > PC's (running Windows, MacOS, Linux, whatever) can have a VNC > halo. All of these PC's which are not running Kaboodle should > have the same list of Property Tabs: System Info, VNC Setup, and > Icon Properties ("Components" should only appear on machines that > are running Kaboodle). All of these PC's which are not running > Kaboodle should be able to get a Kaboodle halo if a user on > that PC started up the application. > > Put another way, Kaboodle should treat the other devices > that it detects on the LAN in one of four ways: the device is > either a computer running Kaboodle, a computer not running > Kaboodle, a printer, or an appliance. For the second group > (PC's not running Kaboodle), the *only* reason that Kaboodle > tries to detect what operating system is running is so that > it can give the device a good icon. After assigning the device > a default icon and putting the icon into an icon group, Kaboodle > should stop treating a Macintosh differently from a Linux PC > or from a Windows PC not running Kaboodle. > > Please let me know this "bug report" makes any more > sense now. Thanks! > > -Scott > > > On Wed, 10 Jul 2002, Igor Kotelevsky wrote: > > > Hello Scott. > > I don't understand the bug. > > Your sounds is like > > - "my Macintosh running VNC, but other Kaboodle don't know that" or, > > - "my Macintosh running Kaboodle, ...". > > May be you install some kind of OS Windows emulator on Macintosh? > > Please send me: > > - LAN configuration, including type of computer and type of OS, > > - description what computers running Kaboodle, > > - your screen shot (the image that you see); > > - description what you _must_ see on the screen; > > - Igor > > > > ----- Original Message ----- > > From: "Scott C. Best" <[EMAIL PROTECTED]> > > To: "Igor Kotelevsky" <[EMAIL PROTECTED]> > > Cc: "mailbox" <[EMAIL PROTECTED]>; "Kaboodle-devel" > > <[EMAIL PROTECTED]> > > Sent: Wednesday, July 10, 2002 8:52 AM > > Subject: Re: [Kaboodle-devel] Re: Bog Report, 4 July > > > > > > > Igor: > > > I checked today, and my Macintosh is still not being > > > treated like a PC in regards to VNC. Perhaps we should fix > > > this again, this time from the "icon code" or "NID type" point > > > of view. > > > > > > -Scott > > > > > > > > > On Tue, 9 Jul 2002, Scott C. Best wrote: > > > > > > > Igor: > > > > Okay, I think you've found the problem then. Macintosh PC's > > > > really should be treated as just a subset of PC's. The *only* > > > > difference should be that, at startup, they are given a different > > > > icon and put into a different Icon group. But *that's all*. So > > > > it sounds like your changes to CEnumAllDevice are correct. It > > > > may have been easier to just have changed the "icon code" instead. > > > > > > > > Really, there are only three types of devices: PC's (ie, > > > > something that can run Kaboodle *or* VNC; Windows, MacOs, Linux, > > > > whatever), Printers, and Appliances (eg, a LinkSys router). This > > > > "type" field should be one of the first-most fields of the NID, > > > > I would think. > > > > > > > > Ideally, the user should be able to *change* the auto- > > > > detected type of a device in the "Icon Property" PropTab. If they > > > > change, say, what we detected as a Printer to a PC, not only should > > > > they be able to change the icon, but the "VNC Tab" should appear > > > > in the PropPanel the next time it's opened. > > > > > > > > -Scott > > > > > > > > > > > > On Tue, 9 Jul 2002, Igor Kotelevsky wrote: > > > > > > > > > Hello Scott. > > > > > You wrote: > > > > > > > > 3. If I startup a VNC server on a PC not running Kaboodle, I > > > > > > > > can go the the PropPanel for that device and connect. No > > > > > > > > problem. But the VNC Service icon is not listing the device > > > > > > > > as a server, and the VNC halo is not being put on the device > > > > > > > > correctly. > > > > > > > > > > > > > > I saw similar bugs. > > > > > > > It was several days earlier. > > > > > > > > > > > > I've some more data. It only happens for me now if the > > > > > > VNC server is running on a Mac. I've got two other machines on > > > > > > my LAN that run VNC: a Mac and a WinNT laptop. The WinNT box > > > > > > is treated correctly by Kaboodle: it gets a VNC halo and it gets > > > > > > listed in the VNC servers in the VNC service icon. The Mac, > > > > > > though, doesn't get either. I can use Kaboodle to VNC into it, > > > > > > but only if I go thru the device's icon. > > > > > > > > > > > > Perhaps some of the code is looking at the "type" field > > > > > > of the NID, and only reacting to PC's, not Mac's? > > > > > ***************************************************** > > > > > I don't know "MAC" part of Kaboodle's specification, > > > > > so all my discourses carry the approximate nature. > > > > > ***************************************************** > > > > > Kaboodle source code has 30 strings which contain "type" field > > *EF_NID_PC*. > > > > > If your assumption is valid, then I think following. > > > > > Please see the class CEnumAllDevice in the file > > EF\ModifyRegWinVNC.cpp. > > > > > In the header file you can found following: > > > > > // This class enumerates all local object CNIDDevice which is PC. > > > > > // Own PC non include in this list. > > > > > That class enumerated PC device only. > > > > > The MAC objects were absent in Kaboodle when I wrote that class. > > > > > It seems to me that now the class CEnumAllDevice has to enumerate MAC > > > > > device also. > > > > > I added that enumerating into the class CEnumAllDevice. > > > > > But I must to underline next. > > > > > Current Kaboodle source code uses the class CEnumAllDevice in > > following > > > > > cases: > > > > > 1) - for VNC autodetection; > > > > > 2) - for filling list of VNC service icon; > > > > > 3) - for filling list of "Modify list" dialog > > > > > (please see "VNC setup" prop tab on server side); > > > > > 4) - for filling list of File Transfer service icon; > > > > > 5) - for filling list of "Accept files only from machines in..." > > dialog > > > > > (please see "Receive file" prop tab in File Transfer service icon). > > > > > Now all of #1-#5 will include not only PC devices, but also MAC > > devices. > > > > > Please let me know if it is not correct. > > > > > ***************************************************** > > > > > Sorry, I didn't have a MAC PC in my LAN, so I cannot check above. > > > > > ***************************************************** > > > > > Some other developers (I and Oleg) saw that bug on non MAC PC. > > > > > So I think that source code have also other NID updating bug. > > > > > ***************************************************** > > > > > -Igor > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > ------------------------------------------------------- > > > > This sf.net email is sponsored by:ThinkGeek > > > > Stuff, things, and much much more. > > > > http://thinkgeek.com/sf > > > > _______________________________________________ > > > > Kaboodle-devel mailing list > > > > [EMAIL PROTECTED] > > > > https://lists.sourceforge.net/lists/listinfo/kaboodle-devel > > > > > > > > > > > > > > > > ------------------------------------------------------- This sf.net email is sponsored by:ThinkGeek PC Mods, Computing goodies, cases & more http://thinkgeek.com/sf _______________________________________________ Kaboodle-devel mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/kaboodle-devel