j1whalen@handel.helios.nd.edu (Jon Whalen) (06/25/91)
Dear Net.mac.gurus I have two novice Mac programmer questions. First my environment: SE/30, sys7.0, Think C 4.0.5, also Mac LC, sys7.0, and Think 4.0.5. 1) I'm trying to read in the contents of a data file from disk. In my project I have a subclass of the TCL CDocument class. In the OpenFile method I read in the contents of the file with: theFile->ReadAll(&theData); /* ReadAll() creates the handle */ Later on, I lock the handle, and de-reference it once to get a pointer to the data: HLock(theData); /* Lock the block of memory */ ptr = *theData; /* Dereference the handle */ My file contains a couple of 80-byte header records, followed by float data. I skip ahead past the header (ptr+=80 a couple of times) to get to the data. Now I interpret the data as floats for( i = 0, j = 0; i < itsNumSamples; i++, j+=4 ) { (*itsSamples)[i] = *(float *)&(ptr[j]); Now, this works fine on my SE/30 at work, but when I try the same thing on my LC, as soon as j passes 8191, the data is junk. This is obviously very suspicious (;-), so I gather I'm missing something obvious about pointer arithmetic on the LC (related to the 16-bit addressing?). Can anyone shed any light? 2) I have a Panorama which is Supervised by a ScrollPane, I would like to be able to resize the Panorama at some point in my program after installing it in the ScrollPane. I tried using SetBounds() on the Panorama object, which does appear to update the ScrollBars idea of the size of the Panorama, but I can't draw anything after that! It would appear that I'm mucking up the coordinate system, although I don't know how or why :-( In my Panorama::Draw() method: ... GetBounds( &bounds ); bounds.right = numSamps; /* top and left are 0 */ bounds.bottom = 156; SetBounds( &bounds ); ... If I can't use SetBounds, what should I use to resize the thing on the fly? Thanx in advance for any enlightenment! --jon (I should stick to Unix) whalen -- -------------------------------------------------------------------------------- Jon Whalen @ U. of Notre Dame | At the moment, I have absolutely nothing to j1whalen@handel.helios.nd.edu | say. (Which is probably for the best.) --------------------------------------------------------------------------------