From: Stephan B. <ste...@ei...> - 2001-04-11 09:25:04
|
=46rom the ChangeLog: (http://qub.sourceforge.net/ChangeLog) =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D 0.6.0 (10 Apr 2001) =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D IMPORTANT: Build and Install instructions have changed a bit. PLEASE see the user's guide (http://qub.sourceforge.net/usersguide/) for full details, and INSTALL for the short version: With *normal user account*: ./configure && make switch to *root*: make install Switch back to *normal user*: make userinst ALSO IMPORTANT: Objects saved in 0.5.3 and earlier will NOT load with this version, and are likely to cause crashes! This includes ALL saved objects, even those created with the gmaker which shipped with 0.5.3. This is the first version since 0.4.9 which I consider to be stable enough and feature-rich enough to be usable. 0.5 was a 100% complete rewrite from the 0.4.x architecture, and has brought with it new bugs.=20 But it's much cooler and it's a thousand times more flexible than earlier versions. =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D Crashes Fixed: - Crash caused by dropping a template onto itself when in drag/move mode. - Apparently fixed crash caused by a miniscule pixmap cache size. The=20 crash happened way down in QPixmapCache. (This crash was elusive and funny=20 because it would only happen during a timed event, when the cache would flush=20 itself, and always not during user interaction.) - Worked around a crash somewhere deep in the Qt event handler, which=20 often happened when closing large games (like 200+ pieces). This crash can=20 still happen, but see a workaround below, in New Bugs. =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D Other bugs/annoyances fixed= : - The object/DLL/class selection list is now correctly saved/load=20 in/from the config object. It does not save from the combo-box, though (sorry!), but from the configuration value for QUB.default_piece_class. - Pieces which have no parent to come into play to will go to the=20 default piece tray now, instead of bitching about it and going nowhere. - I dunno what happened, but the color dialog is working correctly=20 again. - Moved the scratchpad back into it's own tab. It wasn't big enough=20 where it was. - Property lists and config files and such won't have duplicate keys any more. - Finally: clicking the window manager's close button will close=20 gracefully. - Fixed resizing futz-uppedness in MDI windows. They should no longer=20 resize outside of the min/max bounds set by the content widget. =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D The Glaringly Obvious new b= ugs: - GroupPieces with pixmaps incorrectly size themselves after=20 deserializing (being dropped or after loading from an XML file). Double-clicking them twice will work around this, restoring their size. - When removing lots (hundreds) of pieces from a board at once it will sometimes crash in Qt's event handler with a null pointer. Don't know a way around this completely. If you have _lots_ of pieces to remove (the most tested so far is 2833), closing the top-level object (e.g., the=20 board) will not (in my experience) cause a crash, but using the "remove=20 contents"=20 popup menu may very well cause one deep down in Qt. - When browsing HTML files, clicking a link to something in that same=20 page causes the page to disappear. This appears to be specific to certain Qt versions, and is certainly a Qt bug (sorry!). =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D New Features: - New DLLs: * CalculatorGCom - 100% stolen from the Qt/Palmtop Edition code. Gawd Bless Open Source. * TheMultiplier - Drop game components on this thing to create N=20 copies of them. Use the spinbox to set the number of clones to make. Set=20 config option QUB.toolbar=3D"TheMultiplier" to get this in your toolbar on=20 startup. Click the Rebuild Toolbox button to recreate the toolbar to include=20 your changes without restarting QUB. - SAVE button no longer saves the current object, but the whole MDI=20 desktop. Double-clicking a ".GComWorkspace" file will restored the desktop. You will be asked if you want to close all windows before restoring. - More toggles added to the gcom editor. - Rotation is back. Use the popup menu to set the angle. It only rotates the background image, and not child components inside the=20 rotated component. It is not available for GComs which let Qt do their=20 drawing for them (e.g. GComBasicBoard, GComBasicTray...). - Can now autoload GComs (even from dlls) into a separate toolbar. Set=20 the configuration key QUB.toolboxbar to something like "TheMultiplier" and=20 restart QUB to see it in action (will only work if your dlls got installed=20 correctly). The toolbar starts out with some objects already in it. - Added a classloader selection to the new toolbar. Took the load button away from the dir view's list, as it was just confusing (I thought). - You can no drop templates onto each other, though their usage is=20 opposite that of their normal usage: drop a template onto another, and the=20 dropped template will force it's appearance on the other. (This reversal is a side-effect of the drag/drop implementation). - New configuration keys which do cool things: * QUB.autoload =3D List of classes which will automatically be=20 instantiated=20 and added into play. Classes specified here can still go to the toolbar=20 if QUB.prefer_toolbar is set on that gcom. * QUB.toolboxbar =3D List of classes specifically for the new toolbar,=20 which is set aside just for toolbar-sized game components. - Now looks for certain properties in all new objects and does the=20 following: * QUB.prefer_tab =3D If true, this object is loaded into a tab. * QUB.prefer_toolbar =3D If true, this object is loaded into the toolbar.= =20 This should obviously only be set for small gcoms, but will actually=20 work for a CalculatorGCom, too. If none of these are set then the normal=20 actions=20 are taken for determining where to add the object. - Added partial save on exit support to the base game components. Any=20 object which toggles this on will be saved to: <gameroot>/lib/<classname>/<name>.<file extension for this class> Calling GCom::load() will try to load the object's state from a file=20 with that name. It doesn't completely work yet, but some classes make use of=20 it so to provide persistant data across QUB sessions. - New core GComs: * GComWidgetWrapper - not really visible, but is used to wrap up=20 widgets for sticking them into places where normally only GComs go (like the GComWorkspace). Note that this object is currently only lightly=20 tested, and may still have significant bugs. - Added -stdout option to gmaker to output the XML data to stdout. This is now the default behaviour if -o is not specified. - If you have the file <gameroot>/QUB/QUB_UsersGuide.html, QUB will=20 automatically load it on startup. ----- Stephan |