Commit Graph

35 Commits

Author SHA1 Message Date
Jean-Paul Chaput 56b2abb260 - Change: In CellWidget & Command, rewrite of the active command mechanism.
Now a command is associated to one CellWidget exactly, the active flag
        was shared among all CellWidget which was an error (do not show unless
        we start to multithread).
    - New: In SelectCommand/SelectionPopup/SelectionPopupModel now there are three
        selection mode:
          Mode 0: Select all Component under point.
          Mode 1: Select whole nets whose at least one component is under point.
          Mode 2: Same as 1, but hide all cluttering "*nymous*" nets.
          Rotation through the mode is done by pressing repeadedly the 'N' key.
          The various select modes are implemented through "sub" Collections.
2009-10-19 17:17:21 +00:00
Jean-Paul Chaput fee6e4c593 * ./hurricane/src/hurricane :
- New: In DbU, create a "onCustomGrid(point,step,round)" method to place
        a point on an arbitrary grid. That different from the real or symbolic
        ones.
    - Bug: In DbU, all the snap function where bugged when passed negatives
        coordinates.
    - New: In DbU, new conversion function, DbU::getPhysical() to translate into
        physical (metric) system.
    - New: In CellWidget, separate the "Snap Grid" (real or symbolic) from the
        cursor position. The cursor position will now be displayed in half-lambda
        (symbolic mode) or founder grid unit (real mode).
          That can be changed trough the CellWidget::setCursorStep(DbU::Unit)
        method.
    - New: In CellViewer/ControllerWidget, the CTRL+I keys toggle the visibility
        of the Controller instead of systematically showing it.
2009-10-14 08:20:08 +00:00
Jean-Paul Chaput dbe871fe7e * In All top level CMakeList :
- Adds a CMAKE_POLICY CMP0003 has we've upgraded to cmake 2.6.

  * ./hurricane/src/hurricane :
    - Bug: In Interval, the merge method wasn't working if the "other"
        Interval was empty (doing merge) instead of nothing. This was
        a non-symetrical behavior.

  * ./hurricane/src/hviewer :
    - New: In CellViewer, adds an accessor to the ControlerWidget widget.
    - Bug: In CellViewer::imageDisplay(), when using GtkStyle the file
        dialog seems to core dump if the directory is not specified.
        Now systematically starts with the current working directory.
2009-08-11 10:43:55 +00:00
Damien Dupuis 54219843d6 - Modified 'copy to image' :
o added bool noScale to hide colorScale (only useful for congestionMap)
        o respect the cellWidget aspect ratio when saving

    - Adding 'Save to image' functino which call a QFileDialog to choose file name

    - Highlight a masterCell's abutmentbox when it's selected (there is a bug in this)
2009-07-24 10:32:14 +00:00
Jean-Paul Chaput e0c9f0ba3f * ./hurricane/src/hviewer :
- Bug: In CellWidget, the drawRulers was copying an enlarged redrawArea into
        the Selection Plane causing the selection to deseapear gradually when
        slowly shifting.
2009-05-06 13:11:03 +00:00
Jean-Paul Chaput ee828cb19f * ./hurricane/src/viewer :
- Change: Consistent encapsulation of "_active" in Command and all it's derived
        classes.
    - New: support for Rulers. Start drawing by pressing Shift+L.Button, finish
        by pressing it again. To cancel a Ruler press Shift+R.Button.
          Drawing style support also added : "text.ruler". Rulers are always
        visibles (display threshold sets to zero), only the numbers of graduations
        displayeds changes (at least 5 pixels between two graduations).
2009-04-15 16:09:18 +00:00
Jean-Paul Chaput ecc9c5402f * ./hurricane/src/hviewer :
- Bug: in CellViewer::setCell(), do not try to get the name of the cell if
        it's a NULL pointer... Solve the cyclop "empty cell" coredump problem.
    - New feature : dbo_destroy<> a shared_ptr<> that calls the destroy method
        of an object, specially tailored for DBo. Application in Cyclop.
2009-02-03 17:58:06 +00:00
Jean-Paul Chaput 78be633226 * ./hurricane/src/hviewer :
- Change: modifie GraphicsWidget, PaletteWidget, NetlistWidget &
        SelectionWidget to comply to the "star" model.
2009-02-03 15:05:05 +00:00
Jean-Paul Chaput 3d6ebdda92 * ./hurricane/src/hviewer :
- Change: simpler implementation of the occurence selection mechanims
        between SelectionPopup, SelectCommand, SelectionWidget & CellWidget.
        Consistent (identical) names of signal/slots : selectionToggled() and
        toggleSelection().
    - Change: disable QApplication::processEvent() has it seems to slow down
        display refreshment on Mac OS. This may be a side effect of another
        problem not yet diagnosed.
    - New feature: CellWidget internal state enhancement : now manage an
        history of scales (through 'u' & 'd').
    - New feature: hierarchical exploration through 'CTRL+u' & 'CTRL+d'.
        On second though, what a bad key mapping. To be corrected soon...
2009-01-30 14:52:05 +00:00
Jean-Paul Chaput 8961968b8b * ./hurricane/src/hviewer :
- New feature: CellWidget now store it's internal state in a separate
        nested object CellWidgetState. The State is work in progress, currently
        is store the Cell*, showSelection, cumulativeSelection, selection
        criterions and showBoundaries. showBoundaries may evolve to be stored
        as part of the Palette's state.
    - Change: implement the "start" propagation model signal/slot for
        showSelection, cumulativeSelection & showBoundaries. The main concern
        is to avoid signals loop. See SelectionWidget::setShowSelection(bool)
        for an example.
    - Change: supress the minimumSize of the SelectionWidget (200 pixels is a
        waste of space when the Path is empty).
2009-01-27 10:14:46 +00:00
Jean-Paul Chaput 9edbed80ae * Merry Christmas & Fuck Numericable.
* ./hurricane/src/hurricane :
    - New feature: Display support for Rubber, three modes of representation : centric,
        barycentric and (pseudo) steiner.
    - New feature: ability to generate pdf/ps snapshot using QPrinter. Can perform
        an exact snapshot or print a synthetic A4 (choice hard-wired for now).
    - Change: display styles reorganisation, recreation of the "Alliance Graal" look.
    - New feature: darkening managment at CellWidget level, to allow Extension to
        darken when unselecteds.
    - New feature: ExtentionGo are now managed by the selection redraw function.
    - New feature: Selector set is now sorted by object type, this allow to speedup
        the redraw function which will now perform only one loop.
2008-12-25 10:27:58 +00:00
Jean-Paul Chaput b725e49732 * ./hurricane/src/hurricane :
- New feature : remove Hurricane's original basic Timer and replace it with
        the one from Coriolis/crlcore. Added ability to get the elapsed time
        without stopping the timer.
  * ./hurricane/src/hviewer :
    - New feature : complete redesign of the drawing refreshment loop. Now there's
        a "secondary" loop managed by the "RedrawManager" object which bufferize
        the redraw requests. The "_redraw()" function has been made interruptible
        at coarse level (between layer).
          Important note about the redrawing design : the QApplication::processEvents()
        function cannot be called inside the paintEvent() functions/sub-functions.
        So the drawing is separated from the paintEvent. The paintEvent() performs
        only quick pixmap buffer copy. The _redraw() is triggered by the move/refresh
        events bufferized by the RedrawManager, flush periodically the loop event 
        and send direct (not posted) paint events (repaint() call).
          Another constraint is that the displayed Widget can only be painted during
        the paintEvent(). Otherwise the painter refuses to initialize.
    - Ergonomy : adopt more standard key/mouse bindings. No more CTRL key for zooming
        (too small zooms are rejecteds, thresold at 10x10 pixels). Continuous move
        is enabled with SPACE+mouse.

  * ./coriolis/src/unicorn :
    - Reorganisation : Unicorn is now supplied as a separate library. Due to a limitation
        of cmake the binary can no longer be named "unicorn" as it conflicts with the
        library name. So it's been renamed into unimain (better candidates?)
2008-12-20 16:56:05 +00:00
Jean-Paul Chaput 88c2d138ad * ./hurricane/src/hviewer :
- Cleanup (part 2) : changing file names.
2008-11-26 10:13:31 +00:00
Jean-Paul Chaput 01ddcf4279 * ./hurricane/src/hviewer :
- New feature : first try at a more ergonomic interface. The "Controller",
        a simple Tabbed window for managing all settings.
          Reorganize the way things are selected (Nets, Area, single), aglomerated
        selection.
          Use a "logical" progression Netlist -> Selection -> Inspector.
    - In CellWiddget, new Selection managment mecanism to ensure persistent
        Selection across cell modifications.
          New signals/slots to manage Cell modification :
          a. - cellPreModificated() : must be launched *before* the Cell modification
               by the tool about to modify it.
          b. - cellPostModificated() : must be lauched *after* the Cell modification
          This mecanism may be amended to automatically fit with the UpdateSessions.  
    - Cleanup (part 1) : more consistent name for widgets, replace the 'H' prefix by
        a "Widget" suffix. Objects are modified by not filenames yet (due to svn not
        liking file renaming and modications at the same time).
    - Improved support for static building in CMakeList.txt.
2008-11-26 09:35:07 +00:00
Jean-Paul Chaput 26d07794ca * ./hurricane/src/hurricane :
- New : Mask object to manage masks.
    - New : BasicLayer ordering & connectivity is managed.
2008-10-21 13:49:48 +00:00
Jean-Paul Chaput d669774d84 * ./coriolis/src/crlcore/src/ccore/Banner.cpp
./coriolis/src/crlcore/src/ccore/crlcore/Banner.h
   - Moved "CBanner" to "Banner", cleaned up, relooked, renamed functions, reorganised. 

 * ./coriolis/src/crlcore/src/ccore/ToolEngine.cpp
   ./coriolis/src/crlcore/src/ccore/crlcore/ToolEngine.h
   ./coriolis/src/crlcore/src/ccore/crlcore/ToolEngines.h
   - Renamed CEngine to ToolEngine, cleaned up, relooked. All fonctions as static
       members.

 * ./coriolis/src/crlcore/src/ccore/Memory.cpp
   ./coriolis/src/crlcore/src/ccore/crlcore/Memory.h
   - Renamed CMemory to Memory (as for Timer), minimal cleanup.

 * ./coriolis/src/crlcore/src/ccore/crlcore/*.h
   - Change anti-double inclusion constants from __XX_H__ to __CRL_XX_H__
       (that is: include namespace) to avoid potential constant clashes with
       other pieces of software.

 * ./coriolis/src/crlcore/src/ccore/Utilities.cpp
   ./coriolis/src/crlcore/src/ccore/crlcore/Utilities.h
   - Finish porting of all features from CUtils. Simplificated mstream using
       member templates. Speedup mstream by using static_cast instead of
       dynamic_cast.

 * ./coriolis/src/crlcore/src/ccore/Environment.cpp
   - Now read CORIOLIS_TOP from UNIX environment instead of hard-coded
       directory (to my personnal installation...). See new method
       "loadFromShell()", needs to be extended to all other variables.

 _____________________________________________________________________________


 * ./hurricane/src/hurricane/BasicLayer.{h,cpp}
   - Suppress all graphics related members from Layer.
   - Adding realName member for symbolic to real transformation.

 * ./hurricane/src/hviewer/CellWidget.cpp
   Bug: Now uses display threshold from Graphics (DisplayStyle) instead
     of layer. Now layers appears/diseapears while zooming/unzooming.

 * ./coriolis/src/crlcore :
   - Separating clearly symbolic technology form real technology.
   - Various file renaming.

 _____________________________________________________________________________


 * ./hurricane/src :
   - Complete include re-organisation.
       include/hurricane/*.h            : kernel.
       include/hurricane/viewer/*.h     : hviewer.
       include/hurricane/inspector/*.h  : hinspector.
     Includes have been moved into subdirectories of .cpp files (as in
       crlcore).
   - Now you must include files like this :
       #include  <hurricane/Layer.h>
       #include  <hurricane/viewer/CellViewer.h>
       #include  <hurricane/inspector/HInspector.h>  
   - Suppressed viewer specific include path in FindHURRICANE.cmake.
   - Re-enabled documentation, with dot disabled as it seems to slow down
      doxygen.

 * ./crlcore/src/crlcore :
   - Adapted to new Hurricane include scheme. Corrected bugs in it's own
       include files (noticeably "Utilities.h").

 _____________________________________________________________________________


 * ./hurricane/doc/hurricane :
   - Added (empty) directories "html" & "latex". Those directories are
       created by doxygen, but as they are used in the CMakeList.txt, they
       must be present even before the fisrt run of cmake (otherwise cmake
       choke on them).
   - Doxygen sets to only generate html & pdf (through LaTeX) documentation.
   - All ".dox" files corrected to suit the new function members naming
       scheme (some work may remains in code examples).

 _____________________________________________________________________________


 * ./hurricane/doc/hurricane/src/hurricane/Layer.{h.cpp}
   ./hurricane/doc/hurricane/src/hurricane/BasicLayer.{h.cpp}
   - Changed "Type" to "Material" to fit better the OpenAccess semantic.
       Introduce Material meanings : pWell, nWell, pImplant, nImplant
       active, metal, cut, obstacle & other.

 * ./coriolis/src/crlcore :
   - Switched to the generic layer model. Updated technology XML configuration
       files, technology parser & AP parser/driver.
   - Note that the representation of transistors visually changes as it's now
       modelled with Implant + Active.

 _____________________________________________________________________________


 * ./hurricane/src/hurricane :
   - CompositeLayer replaced by 5 kind of symbolic layers :
       RegularLayer     (1 BasicLayer)
       DiffusionLayer   (2 or 3 BasicLayers: active+implant,well)
       TransistorLayer  (3 or 4 BasicLayers: poly+active+implant,well)
       ContactLayer     (4 or 5 BasicLayers: metal+cut+active+implant,well)
       ViaLayer         (3 BasicLayers: metal0+cut0+metal1)
   - To better follow the OpenAccess semantic, the "obstacle" Material type
       is renommed to "blockage".
   - NB: doxygen documentation is not up-to-date and issue warnings.

 * ./coriolis/src/crlcore :
   - Migrate from CompositeLayer to the various SymbolicLayers.
   - Symbolic rules are now closer to the reality so that a Cell displayed
       with Hurricane should look identical to the Graal one.
   - Complete rewrite of the AP parser. Much simplificated, do not try to
       merge/articulates segments. This ensure a true rendering of the
       Cell. Especially do not create contact to anchor diffusion segments,
       which leads to very strange randering (DRC error as well).

 _____________________________________________________________________________


 * ./hurricane :
   - Unit evolution to allow Symbolic (lamda) and Real (grid founder) mixing.
       All functions related to Unit translations are now grouped under
       the "DbU" class (another tribute to OpenAccess). "DbU" contains
       only static attributes (constants) and methods. Unit itself becomes
       a typedef inside this class, hence the file renaming from Unit.{h,cpp}
       to DbU.{h.cpp}. Have to replace all instances of "Unit" by "DbU::Unit".
   - Doc will be updated shortly.

 _____________________________________________________________________________


 * ./coriolis/src/crlcore :
   - New AP parser : simplificated, no longer try to re-articulates segments.
       More accurate representation of standart cell innards.
   - More accurate symbolic extentions rules.
   - Propagated changes from Hurricane about Unit/DbU.

 _____________________________________________________________________________


 * ./hurricane/src :
   - Rename "pyext" to "isobar".


 _____________________________________________________________________________


 * ./hurricane/doc/hurricane :
   - Documentation of DbU, replacing documentation of Unit.

 * ./hurricane/src/hurricane/hurricane/DBo.h :
   - Property set is now a mutable member, allowing const DBo to changes
       their properties. Strange side effect on SlotAdapter in which we
       need to declare two separate templates, one for const type and
       another for non-const type.
   - _getTypeName() defined to prevents noisy error message when a
       derived class (from DBo) do not want to implement support for
       the inspector.


 _____________________________________________________________________________


 Derrick Release !!

 * ./hurricane/src
   - Simplification of the Inspector internal mechanism. Simple, but with
       more templates, means a slower compilation.
   - The DbU::Unit problem : DbU::Unit are only typedef over long type,
       so we cannot create a specific overload for them. Uses "getValueRecord()"
       instead of "getRecord()"
   - For HInspectorWidget add a "getClone()" method. Also add a global
       object counter (for Record too) to track down memory leaks.
   - Big rewrite of the HInspectorWidget : now do not leak memory like hell,
       and only kept allocated the current Record and not the full stack
       of them (instead, we stack Slots which are ligthweigh objects).
   - Rename of "real" unit to "grid" unit.
   - New conversion function "getPhysicalsPerGrid()" and associated
       mechanism.

 * ./coriolis/src/crlcore :
   - Synchronise with the Hurricane modifications.


 _____________________________________________________________________________


 * ./hurricane/src/hurricane/DbU.{h,cpp} :
   - Add forgotten converter function physicalToGrid(), physical units to
       founder grid units.

 * ./hurricane/src/hinspector :
   - Added history support, and ability to move through the history stack.
   - Fork support : by typing 'O' (capitalized 'o' letter)  you can open
       a new inspector on the current record.


 _____________________________________________________________________________


 * ./hurricane/src/hinspector :cla
   - No more extra arguments in HInspectorWidget & RecordModel constructors.
       Valid values have to be sets through setRootRecord() & setSlot().
   - Key for forking sub-inspector is now *minus* 'o'.


 _____________________________________________________________________________


 * ./hurricane/src/hviewer :
   - Bug: very tricky one. Do not emit "layoutAboutToChange()" signal
       after destroying the Record used by the RecordModel but before
       setting a new one and not setting the _record field to NULL.
       Now setRootRecord() should work more than once.


 _____________________________________________________________________________


 * ./hurricane/src/hviewer :
   - API : in CellWidget & CellViewer constructors now only takes the
       parent QWidget.
   - Renaming coordinates translation functions for more clarity.
   - Adding a StatusBar showing mouse coordinates.


 _____________________________________________________________________________


 * ./hurricane/src/hviewer :
   - Grid & Spot support (adjusted display threshold).
   - Added new copyToScreen() functions for _drawingBuffer to screen refreshment
       or partial copy (useful for Spot).


 _____________________________________________________________________________


 * ./hurricane/src/hviewer :
   - New Widget policy : a widget do not generate other widget : applied to
       CellWidget which no longer supplies Palette & StatusBar.
         API note: to associate a HPalette to a CellWidget (that is be able
       to select layer) you have to call "bindToPalette()" on the CellWidget.
   - Hurricane reusable widget names prefixed by 'H' : HMousePosition and
       HPalette.


 _____________________________________________________________________________
   

 * ./hurricane/src/hviewer :
   - New feature : support for highlighted selection with decent refresh time.
       To active selection mode, use the 's' key or the "View" menu.
   - New feature : HNetlist to browse a Cell's Netlist. HNetlist can be used
       with any NetInformations derived class, allowing the user to enrich
       the HNetlist displayed fields. For an example, have a look at
       SimpleNetlistWidget.
   - Added proper licence header to all file.


 _____________________________________________________________________________


 * ./hurricane/src/hurricane :
   - New feature : geometrical Query with callback fonctions "a la" OpenAccess.

 * ./hurricane/src/hviewer :
   - Uses Query to draw display.
   - Bug : when drawing segments as lines (width inferior to 1 pixel)
       uses an alternate Pen which is one pixel wide and SolidLine styled,
       avoiding strange orange lines... Mechanism implemented in sub-class
       DrawingPlanes.
   - Make selection always visible regardless the zoom level.
   - CellWidget names it's most importants childs QWidget (mostly menus)
       for later retrieval in customized sub-classes.

 * ./coriolis/src/crlcore/src/cyclop :
   - Created a simple derived class from CellViewer. Example of customisation
       of CellWidget.


 _____________________________________________________________________________


 * ./hurricane/src/hviewer :
   - Bug : now CellViewer can start with a NULL Cell, note that in this
       case all displacement/zooming function of CellWidget became uneffective.
       (display only a black screen)
   - New widget : HGraphics to select the layout graphic's theme.
   - New widget : HDisplayFilter to select displayed hierarchical levels.
   - Distinguish between Close (one viewer) & Exit (all viewers).
   - Small enhancments of DisplayStyle (Description & darkening).

 * ./coriolis/src/crlcore/src/ccore :
   - Xml display parser takes account of DisplayStyle description & darkening.

 * ./coriolis/src/crlcore/src/cyclop :
   - Enhanced COpenCellDialog : ability to open in a new Viewer.
   - Bug : now Cyclop can start on a NULL Cell.
   - Half Bug : when a Cell is loaded at start, call show() *before* setCell()
       so all internal widget resizing due to the insertion of the toolbar,
       menbar palette ... takes places before the Cell fit. Now the loaded
       cell appears correctly fitted.


 _____________________________________________________________________________


 * ./hurricane/src/hviewer :
   - New feature : Command support. Move command is now implemenented as a
       Command and no longer built into the CellWidget. ZoomCommand implemented.
   - New feature : SelectCommand support along with new HSelection widget to
       browse the current selection. Selection is automatically kept up to
       date.
   - Note : Selection Browser & Netlist Browser pointer in the CellViewer are
       resets to NULL on widget destruction by closing. We do not want to keep
       big widget hiden. The are allocateds on demand.
   - New feature : progessive grid. First display 5x5 then 5x5 + 1x1.


 _____________________________________________________________________________
       

 * ./hurricane/src/hviewer :
   - Bug : default argument to setWeight() sould be QFont::Normal and not "-1".
       Shows in Qt debug mode (catched by an assert).
   - Bug : SelectCommand now keep the Selection check button in sync.
   - Change : Palette doesn't show at start.

 * ./hurricane :
   - Now choice between static and dynamic linking. Note that thoses options are
       mutually exclusives.

 * ./coriolis/src/crlcore :
   - New choice between static and dynamic linking.
   - New feature : XmlParser optional warning when file not found (default is
       to warn).
   - New feature : now read environment from user's optional configuration file :
       ~/.environment.alliance.xml
   - Potential bug : when loading/parsing file, the XmlReader hangs if the opened
       file is a directory, and QFile allows directory opening :-(


 _____________________________________________________________________________


 * ./hurricane/src/viewer :
   - New features : advanced selection widget/commands. Communications between
       CellWidget, HSelectionPopup, HSelection & SelectCommand mostly done
       through signal/slots (better undersdanding of the possibilities).
   - Change : debug menu is hidden by default.
   - Change : in all the QTableView rows are now correctly resized, even when
       filtering is active (new forceRowHeight() slot). I'm pretty sure there's
       a better way to handle this, but I haven't found it for now.
   - Change : small naming normalisation in all those TableView.
2008-09-14 15:48:37 +00:00
Jean-Paul Chaput 7bce78379c * ./hurricane/src/hviewer :
- Bug : default argument to setWeight() sould be QFont::Normal and not "-1".
       Shows in Qt debug mode (catched by an assert).
   - Bug : SelectCommand now keep the Selection check button in sync.
   - Change : Palette doesn't show at start.

 * ./hurricane :
   - Now choice between static and dynamic linking. Note that thoses options are
       mutually exclusives.

 * ./coriolis/src/crlcore :
   - New choice between static and dynamic linking.
   - New feature : XmlParser optional warning when file not found (default is
       to warn).
   - New feature : now read environment from user's optional configuration file :
       ~/.environment.alliance.xml
   - Potential bug : when loading/parsing file, the XmlReader hangs if the opened
       file is a directory, and QFile allows directory opening :-(
2008-09-08 08:46:18 +00:00
Jean-Paul Chaput f6eee66fcb * ./hurricane/src/hviewer :
- New feature : Command support. Move command is now implemenented as a
       Command and no longer built into the CellWidget. ZoomCommand implemented.
   - New feature : SelectCommand support along with new HSelection widget to
       browse the current selection. Selection is automatically kept up to
       date.
   - Note : Selection Browser & Netlist Browser pointer in the CellViewer are
       resets to NULL on widget destruction by closing. We do not want to keep
       big widget hiden. The are allocateds on demand.
   - New feature : progessive grid. First display 5x5 then 5x5 + 1x1.
2008-09-01 14:47:50 +00:00
Christophe Alexandre a387532310 size_t -> int ... this time 2008-08-29 14:48:23 +00:00
Jean-Paul Chaput 7752e70a05 * ./hurricane/src/hviewer :
- Bug : now CellViewer can start with a NULL Cell, note that in this
       case all displacement/zooming function of CellWidget became uneffective.
       (display only a black screen)
   - New widget : HGraphics to select the layout graphic's theme.
   - New widget : HDisplayFilter to select displayed hierarchical levels.
   - Distinguish between Close (one viewer) & Exit (all viewers).
   - Small enhancments of DisplayStyle (Description & darkening).
2008-08-29 09:32:52 +00:00
Christophe Alexandre e39e6f714a size_t -> unsigned, Qt QVariant has not constructor with size_t, at least
on OSX. I guess there is a typedef size_t unsigned somewhere on Linux...
2008-08-27 19:48:22 +00:00
Jean-Paul Chaput d42cf11ec6 Small adjustements. 2008-08-27 16:27:46 +00:00
Jean-Paul Chaput dfdb2ec2d5 * ./hurricane/src/hurricane :
- New feature : geometrical Query with callback fonctions "a la" OpenAccess.

 * ./hurricane/src/hviewer :
   - Uses Query to draw display.
   - Bug : when drawing segments as lines (width inferior to 1 pixel)
       uses an alternate Pen which is one pixel wide and SolidLine styled,
       avoiding strange orange lines... Mechanism implemented in sub-class
       DrawingPlanes.
   - Make selection always visible regardless the zoom level.
   - CellWidget names it's most importants childs QWidget (mostly menus)
       for later retrieval in customized sub-classes.
2008-08-27 14:06:06 +00:00
Jean-Paul Chaput 9637ebc58b * ./hurricane/src/hviewer :
- New feature : support for highlighted selection with decent refresh time.
       To active selection mode, use the 's' key or the "View" menu.
   - New feature : HNetlist to browse a Cell's Netlist. HNetlist can be used
       with any NetInformations derived class, allowing the user to enrich
       the HNetlist displayed fields. For an example, have a look at
       SimpleNetlistWidget.
   - Added proper licence header to all file.
2008-07-10 09:22:36 +00:00
Jean-Paul Chaput 2607d8d94c * ./hurricane/src/hviewer :
- New Widget policy : a widget do not generate other widget : applied to
       CellWidget which no longer supplies Palette & StatusBar.
         API note: to associate a HPalette to a CellWidget (that is be able
       to select layer) you have to call "bindToPalette()" on the CellWidget.
   - Hurricane reusable widget names prefixed by 'H' : HMousePosition and
       HPalette.
2008-07-04 15:33:11 +00:00
Jean-Paul Chaput a743cf53a3 * ./hurricane/src/hviewer :
- Grid & Spot support (adjusted display threshold).
   - Added new copyToScreen() functions for _drawingBuffer to screen refreshment
       or partial copy (useful for Spot).
2008-07-03 14:31:20 +00:00
Jean-Paul Chaput 3c7d1b2e62 * ./hurricane/src/hviewer :
- API : in CellWidget & CellViewer constructors now only takes the
       parent QWidget.
   - Renaming coordinates translation functions for more clarity.
   - Adding a StatusBar showing mouse coordinates.
2008-07-02 13:31:50 +00:00
Jean-Paul Chaput 5328240c21 * ./hurricane/src/hviewer :
- Bug: very tricky one. Do not emit "layoutAboutToChange()" signal
       after destroying the Record used by the RecordModel but before
       setting a new one and not setting the _record field to NULL.
       Now setRootRecord() should work more than once.
2008-06-20 15:36:36 +00:00
Jean-Paul Chaput 0066a1fa5e * ./hurricane/src/hinspector :
- No more extra arguments in HInspectorWidget & RecordModel constructors.
       Valid values have to be sets through setRootRecord() & setSlot().
   - Key for forking sub-inspector is now *minus* 'o'.
2008-06-19 16:51:11 +00:00
The Coriolis Project d17ecda179 move hinspector to hviewer
to avoid cycles between libraries
2008-06-18 15:51:45 +00:00
Jean-Paul Chaput a8b40f3b5c Derrick Release !!
* ./hurricane/src
   - Simplification of the Inspector internal mechanism. Simple, but with
       more templates, means a slower compilation.
   - The DbU::Unit problem : DbU::Unit are only typedef over long type,
       so we cannot create a specific overload for them. Uses "getValueRecord()"
       instead of "getRecord()"
   - For HInspectorWidget add a "getClone()" method. Also add a global
       object counter (for Record too) to track down memory leaks.
   - Big rewrite of the HInspectorWidget : now do not leak memory like hell,
       and only kept allocated the current Record and not the full stack
       of them (instead, we stack Slots which are ligthweigh objects).
   - Rename of "real" unit to "grid" unit.
   - New conversion function "getPhysicalsPerGrid()" and associated
       mechanism.

 * ./coriolis/src/crlcore :
   - Synchronise with the Hurricane modifications.
2008-06-17 15:30:00 +00:00
Jean-Paul Chaput 2d757752a9 * ./hurricane/src :
- Complete include re-organisation.
       include/hurricane/*.h            : kernel.
       include/hurricane/viewer/*.h     : hviewer.
       include/hurricane/inspector/*.h  : hinspector.
     Includes have been moved into subdirectories of .cpp files (as in
       crlcore).
   - Now you must include files like this :
       #include  <hurricane/Layer.h>
       #include  <hurricane/viewer/CellViewer.h>
       #include  <hurricane/inspector/HInspector.h>  
   - Suppressed viewer specific include path in FindHURRICANE.cmake.
   - Re-enabled documentation, with dot disabled as it seems to slow down
      doxygen.

 * ./crlcore/src/crlcore :
   - Adapted to new Hurricane include scheme. Corrected bugs in it's own
       include files (noticeably "Utilities.h").
2008-05-21 22:45:47 +00:00
Jean-Paul Chaput f34b13a292 The new Viewer (h). 2008-05-16 15:28:39 +00:00
Jean-Paul Chaput 26b932683c Prior to new hviewer 2008-05-16 15:27:43 +00:00
Christophe Alexandre 4e645a28aa introducing hinspector widget 2008-04-25 14:15:42 +00:00