Commit Graph

948 Commits

Author SHA1 Message Date
Damien Dupuis 0107042e04 ADDS
- setRealSnapGridStep on CellWidget useful to set snapGridStep to DbU::grid(1.0) when I want to debug layout (misalignment)
2009-10-26 12:15:47 +00:00
Damien Dupuis eacc908861 Adding CellWidget::State::getCursorStep(). I needed it to debug, may be useful. 2009-10-21 11:06:28 +00:00
Jean-Paul Chaput a72131367e * ./hurricane/src/hurricane :
- Change: In RulerCommand, allow the ruler to be on the cursor grid, not the
        snap grid (usesul for the real mode where the snap grid is much bigger
        than the cursor grid).
2009-10-21 09:18:12 +00:00
Jean-Paul Chaput e5c4402395 * ./hurricane :
- New: In Occurrence, new method getBoundingBox(const BasicLayer*). Returns
        a different value from getBoundingBox() only if the Entity is a Component.
          Long awaited by the Solstice extractor.
    - Change: In ExtensionSlice, keep track of the created ExtensionSlice by name
        to avoid consuming a new bit each time an ExtensionGo slice is deallocated/
        re-allocated (happens often in Solstice/Equinox).
    - Backtrack: In SelectCommand, do not uses::boost regex as their library have
        not been compiled for 32 bits support under OSX Snow Leopard ?!$#.
    - Bug: In Command.h, include and uses std::string has in some rare case no one
        has done it before.
2009-10-20 10:52:52 +00:00
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 7f9c707871 * ./hurricane/src/hurricane :
- Bug: In DbU, do not multiply by _physicalPerGrid in getGrid(), was causing
        all coordinates to appear as zero...
2009-10-15 14:06:06 +00:00
Damien Dupuis 297e58d535 CHANGES
- export MousePositionWidget.h so pharos can use it (displays the (x,y) mouse position in status bar)
    
    ADDS
    - add a getOnPhysicalGrid() in DbU
    - add getPhysical and getOnPhysicalGrid functions in PyDbU and also defines useful CONSTANTS
2009-10-15 13:46:29 +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
Damien Dupuis 4365b6cefb Don't ask me why but the simple test : "^10\\.[012345]*" believes that 10.6.1 is < 10.6
I changed the test to : "^10\\.[012345]\\.?" and tested it with 10.5 10.5.8 10.6 10.6.1 everything is ok
2009-10-01 09:42:04 +00:00
Jean-Manuel Caba 093a51ddb3 Wrapping SET(CMAKE_OSX_ARCHITECTURES "i386;ppc") to compile on older version than Snow Leopard 2009-09-30 21:49:33 +00:00
Damien Dupuis 3b9f8cbd7b I did suppress the constructor (new) system christophe build since it seemed bugged.
I rewrited everything like it was in Coriolis-1 (PyType_create) and reuse the precedent hierarchical system (PyTypeInheritedObjectDefinition)
    With all these changes Pharos is able to run the same script several times without any error (and not only 7 times before crash)
    Maybe there are still some bugs but it seems ok for the moment :D.
2009-09-30 15:11:49 +00:00
Damien Dupuis 689b8cd722 In case of multiple addType with same type :
does not throw Error anymore but cerr and return
        this way it is possible to execute python script more than one time

    Adding trace information for DirectDeleteMethod
2009-09-25 13:51:09 +00:00
Damien Dupuis 98df102f5d Adding SET(CMAKE_OSX_ARCHITECTURES "i386;ppc") to compile with QT4.5 on Snow Leopard 2009-09-25 13:45:49 +00:00
Jean-Paul Chaput bfe6228828 * In All top level CMakeList :
- Adds a CMAKE_POLICY CMP0003 has we've upgraded to cmake 2.6.
2009-08-23 20:24:14 +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
Jean-Paul Chaput cc98bd541d * ./hurricane/src/hurricane :
- Change: In Technology::getViaBetween(Layer*,Layer*) if the two layers
        are identicals, return the layer instead of NULL (mostly for mono-
        metallic VIAs).
  * ./hurricane/src/hviewer :
    - Bug: In CellWidget::redrawSelection(), correct calculation of the
        selected Instances abutment box. We must apply the occurrence path
        transformation to the instance transformation and not the other way
        around.
    - Bug: In SelectorLess(), Instance must be *inferior* to Components as
        they are drawed after in CellWidget::redrawSelection().
2009-07-25 15:10:46 +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 66cbe976c3 * ./hurricane/src/hviewer :
- Change: Small size adjustments on the cartouche.
2009-06-04 18:28:46 +00:00
Jean-Paul Chaput 46ab139ef9 * ./hurricane/src/hviewer :
- New: Adds a nice cartouche on printed snapshots.
2009-05-14 11:39:31 +00:00
Jean-Paul Chaput 0c3c37066d * ./hurricane/src/hurricane :
- New: Utility functions to manage float rounding errors.
2009-05-13 14:58:53 +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 609772dcc3 * ./hurricane/src/hviewer :
- New: In PaletteWidget: allow to select the number of rows of the grid
        widget (up to "infinite", meaning one column). Allow to hide entire
        groups in the widget.
2009-04-21 11:41:10 +00:00
Jean-Paul Chaput 4b8f79bc29 * ./hurricane/src/hurricane :
- Putting LGPL headers.
2009-04-17 16:36:02 +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 a404498be5 * ./hurricane :
- Bug : In Timer.h, forgot to declare the specialized getString()
        template, thus preventing the timer to be correctly display in
        output streams.
    - Bug : In CellWidget::_redraw(), uses "paintersBegin()" instead of
        "painterBegin()" (whithout the "s"). The former open painters for
        both normal & selection planes which are subsequently accessed by
        "setPen()". The laters opens only the normal plane painter resulting
        in warnings for the selection plane painter (shows only from Qt 4.5).
    - New : In CellWidget, ability to support the physical grid (not only the
        symbolic grid). Added selection symbolic/real in the DisplayFilter.
    - Change : add to Technology and all the Layers sub-classes a
        "_onDbuChange(float)" method.
          This is due to the fact that the symbolic technology is loaded first
        into the DataBase (needed for defining the BasicLayer ordering) along with
        all the symbolic dimensions for the symbolic Layers. Only afterward, we
        load the real technology (hcmos9 for instance) which will sets the
        "grids per lambda" factor to it's true value, changing the meaning of
        the already loaded symbolic values. Then, it is necessary to scale those
        values so they are coherent with the new "GPL" factor, hence the
        "_onDbuChange()" function.
          NEVER USE THIS FUNCTION AFTER THE TECHNOLOGY HAS BEEN LOADED, it would
        render all symbolic coordinates false...
2009-04-12 21:05:51 +00:00
Christophe Alexandre 617e5db177 export PaletteWidget 2009-04-10 09:53:47 +00:00
Jean-Paul Chaput d1ce1ce975 * ./hurricane :
- New: ability to shrink bounds of an Interval.
2009-04-07 15:22:04 +00:00
Jean-Paul Chaput f2fa2bf4c1 * ./hurricane/doc/hurricane :
- Bug: In the various Property sub-types dox file the Hurricane namespace
        wasn't closed, resulting in the deseapearance of thoses classes in the
        documentation (painful to diagnose).
          Still, the doc for the derived Property mostly remains to be written.
    - Bug: clearing some remnants of a merge conflict in DataBase.dox.
2009-04-03 14:21:04 +00:00
Jean-Paul Chaput 57a0035247 * ./hurricane/src/hurricane :
- Bug: strange interraction between template, const Data and getString().
        Must const_cast<> to const datas before calling getString().
2009-03-30 21:26:37 +00:00
Jean-Paul Chaput abbc94ea90 * ./hurricane/src/hviewer :
- Change: more ergonomic selection mode commands. Now clicking on "nothing"
        automatically switch off selection displaying.
2009-03-18 15:33:08 +00:00
Jean-Paul Chaput f102af2832 * ./hurricane :
- Cleanup debug messages.
    - New: in NetExternalComponents, adds a static method "isExternal(Component*)",
        used in AP driver.
2009-03-09 09:59:13 +00:00
Jean-Paul Chaput 634af2196f * ./hurricane :
- Change: in CellWidget::DrawingPlane, complete replacement of hard-coded
        numeric indexes by the PlaneId enum values.
    - Change: in SelectionWidget, filter on the Occurrence name instead of the
        path name. Todo: add a radio button to select on witch column we sort.
    - Bug: in SelectionWidget, when the filter is active, remap the index
        of the toggled occurrence through the filter.

  * ./hurricane,
    ./coriolis/src/katabatic,
    ./coriolis/src/kite :
    - Change: documentation building with doxygen is now optional and disabled
        by default. To enable documentation generation run cmake with the
        following argument :
          -D "BUILD_DOC:STRING=ON"
        Or edit the cmake cache variable "BUILD_DOC".
2009-03-03 22:27:03 +00:00
Jean-Paul Chaput b8e5f9073a * ./hurricane :
- Bug: destructor of Technology was destroying some Layers twice. Destruction
        of Layer was done by a loop over a multimap<> that could contains more
        than one entry of a Layer... Now using a loop over the IntrusiveMap.
    - Change: Reorganization of NetExternalComponents property, all functions
        are now static functions members as the property name.
2009-02-23 16:07:09 +00:00
Damien Dupuis d877893e75 - adding export of colorScale as a legend of the image 2009-02-23 16:18:21 +00:00
Damien Dupuis 79b14361c5 - adding copyToImage function to generate jpg file (thanks to JPC) 2009-02-23 13:43:36 +00:00
Jean-Paul Chaput c3f4af9cbf * ./hurricane/src/hviewer :
- Bug: corrected memory leak in RedrawManager, events weren't freed.
    - Bug: various attributes reordering in constructors.
2009-02-13 16:30:27 +00:00
Forgotten Author (labiadh) cb3d9cb835 tests in progress 2009-02-12 15:02:35 +00:00
Damien Dupuis b8a763d69a - Add Temperature ColorScale from dark blue to red (mid color is at 80% of the scale)
the goal was to test it with edge in global routing

      But fireScale is better -_-
2009-02-11 12:48:42 +00:00
Damien Dupuis 035bf7bc44 - Minor corrections for g++ 4.3 2009-02-09 12:57:38 +00:00
Damien Dupuis b3aeaa5a6f - report imageOnly boolean in copyToPrinter function as an optional argument
- adding the RainbowColorScale
2009-02-04 16:11:53 +00:00
Jean-Paul Chaput 00e01d50c8 * ./hurricane/src/hviewer :
- Feature: ability to hide/show layer of the palette from the code, needs
        the CellWidget to be bound to a palette to work.
2009-02-04 13:30:39 +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
Christophe Alexandre 35e8d30026 bug in last commit
tests directory is at the root
2009-02-02 16:51:23 +00:00
Jean-Paul Chaput 4067a363dc * ./hurricane/src/hviewer :
- Bug: correction of the bad keyPress event handling in InspectorWidget
        (had to press twice the key for the action to be transmitted).
          Uses an eventFilter() at InspectorWidget instead of a keyPressEvent()
        overload. The keyPress event is first received by the QTableView then
        transmitted to the upper level. The eventFilter allows the InspectorWidget
        to catch the event *before* it gets to QTableView (but let pass thoses
        it don't want).
    - Bug: idem for SeletionWidget.
    - Change: do not draw the rectangular area of AreaCommand until it is bigger
        than a given threshold (programmable). Affect ZoomCommand and
        SelectCommand. ZoomCommand no longer issue a warning when the zoom is
        to small.
    - New feature: fit to net in the NetlistWidget. Uses simple contextual menu,
        another way to avoid overloading keyPressEvent().
    - Change: in Query, the filter has now it's own subtype: Query::Mask.
    - Change: enhancement for the "start" model of signal propagation, used to
        re-implement the DisplayFilterWidget.
    - Change: more clear policy for signal emission: a signal must be emitted
        by any "setter" method (setStartLevel(), setStopLevel(), ...). Has to
        be enforced for all setter (work in progress).
    - Change: re-implemenation of the delayed refresh mechanism. No more flags
        propaged througout the functions calls but a session mechanism instead.
        See CellWidget::openRefreshSession() & CellWidget::closeRefreshSession().
        Nothing is actually drawn until the last session is closed.
          Session mechanism can be invoked by signals/slots, see NetlistWidget.
    - Change: less dangerous key mapping:
        'z'          : zoom in.
        'm'          : zoom out.
        'CTRL+z'     : previous zoom level.
        'CTRL+m'     : next zoom level.
        'CTRL+Up'    : back in hierarchy.
        'CTRL+Down'  : go down in hierarchy.
        'SHIFT+Up'   : back in hierarchy stack.
        'SHIFT+Down' : go down in hierarchy stack.
2009-02-02 14:45:48 +00:00
The Coriolis Project a2e1fd4d97 HTest library testing part 2009-02-02 11:14:03 +00:00
The Coriolis Project 42dfa164c7 Initiating Hurricane Tests 2009-02-02 10:20:29 +00:00
Christophe Alexandre 78140e5feb new doxyfile 2009-01-30 16:19:55 +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