Commit Graph
100 Commits
Author SHA1 Message Date
Stephan Aßmus 9b4fa889fd * the path list view shows check boxes now when a shape is selected,
the marked paths are used in the shape
* a new path is auto-selected
* deselecting a shape still sends the selection message
* PathSource does not call agg::path_storage::start_new_path() for
  each subpath... a move_to() is sufficient and makes sure the
  subpaths are rendered even :-)
* updated NOTES
* moved IconView into gui subfolder


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18021 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-07-04 00:04:50 +00:00
Stephan Aßmus 8815fed657 * MultipleManipulatorState invalidates the area of an
added or removed Manipulator
* added a menu bar to the MainWindow
* undo/redo work from the menu now
* one can add a new path object
* the selected path will get focus for being manipulated
  (will be moved elsewhere later on...)
TODO: allow to connect paths to shapes


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18004 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-07-02 09:56:06 +00:00
Stephan Aßmus 2ce8d31d09 * added MoveShapesCommand and RemoveShapesCommand
* ShapeContainerListener also gets the index at which a Shape was added
* ShapeListView allows to drag-sort the shapes
* ShapeListView allows to remove shapes (untested)

* IconRenderer is independent of StyleManager now, the
  order of shapes is now correct
* disabled clipping for now, since clear() ignores it (clearing will
  be changed for a checker background anyways)
* added copy constructor to Shape (needs to clone the Transformers yet)

* Selectable optionally knows the global Selection, so that one
  could use Selectable::SetSelected() and it would add itself to
  the selection (not yet used)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17995 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-07-01 12:42:52 +00:00
Stephan Aßmus cfda5dd75b * work in progress on GUI classes
- added IconView which just uses an IconRenderer to display a preview
    of the icon at a certain size
  - PathListView and ShapeListView (very much work in progress)
* actually had the gamma correction applied in the wrong direction...
  now the anti-aliasing looks as smooth as planned
* added SetName() and Name() to Shape and VectorPath... will be in a
  common base class later on


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17988 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-06-30 21:39:18 +00:00
Stephan Aßmus 29c171b18f reverted my "build fix" since it actually breaks the build on R5
... the problem is local to my machine... sorry about that!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17937 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-06-27 14:14:37 +00:00
Stephan Aßmus 75acb8cbf8 synced with rev 1.12 from OT rep, fixed build on R5
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17931 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-06-27 09:18:25 +00:00
Stephan Aßmus f8262c2b19 sync to rev 1.62 from OT rep: use the event time instead of the current system time for appending or starting a new match when typing ahead to select a pose
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17930 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-06-27 09:16:31 +00:00
Stephan Aßmus e57995449d beginning to check up on gui components:
* added a group of controls to access and manipulate colors (incomplete)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17917 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-06-23 23:14:12 +00:00
Stephan Aßmus 5ca1108776 * fixed off by one errors when calculating min size
* added setter for internal spacing 


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17916 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-06-23 23:12:18 +00:00
Stephan Aßmus 31e2089106 * added a color picker panel
(heavily modified, but originally based on Colors! by Werner Freytag)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17915 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-06-23 22:09:53 +00:00
Stephan Aßmus ef355aa493 nice to have on BeOS as well...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17912 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-06-23 12:29:01 +00:00
Stephan Aßmus 56aceca439 updates NOTES
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17905 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-06-22 00:46:51 +00:00
Stephan Aßmus fd8b7ce55a one more small fix
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17904 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-06-22 00:30:39 +00:00
Stephan Aßmus ce181bb0cd * fixed memory leaks and display bugs
* VectorPath objects were released one two many times
  by the Shape PathContainers (they don't acquire when
  a path is added, the Shape does that for them) the
  PathContainer of the Icon needs to release though, as
  it "owns" the paths
* put the Selection class used by PathManipulator into
  the PathManipulator namespace, since the compiler seemed
  to use the wrong destructor (the one from the generic
  Selection class)
* uses a better mechanism to track and render
  changed parts of icon


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17903 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-06-22 00:22:23 +00:00
Stephan Aßmus f71eec5f41 added three more Transformer implementations:
* AffineTransformer - affine matrix transformation
* PerspectiveTransformer - perspective transformation
* ContourTransformer - extending the underlying VertexSource by a certain
  width (like "false bold" in text rendering)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17898 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-06-21 15:21:26 +00:00
Stephan Aßmus 0199e126e2 implemented a cool vertex transformation pipeline:
* VertexSource virtualizes the AGG "VertexSource" interface
* Transformer is an interface for building pipelines of
  VertexSource objects, each taking the output of the previous
  object and transforming it in some way
* StrokeTransformer is currently the only implementation and
  converts a path into an outline stroke
* PathSource implements the VertexSource interface on top of
  a VectorPath which it converts into an agg::path_storage
  and into an agg::conv_curve<agg::path_storage> to get smooth
  bezier curves
* added VertexSource() to Shape class, which returns the last
  object of the transformation pipeline, it uses a PathSource
  for the root object
* changed IconRenderer to use the new polymorphic VertexSource
  pipeline


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17896 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-06-21 14:38:13 +00:00
Stephan Aßmus 0f50089d87 implemented gradient rendering
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17892 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-06-21 12:14:19 +00:00
Stephan Aßmus f67876a0c5 some more "putting things together" for testing:
* add a VectorPath to Document->Icon()->Paths()
* add a Style to the global StyleManager
* actually add a Shape to the Document->Icon()->Shapes()
  which uses the style and the path from above

fleshing out of CanvasView:
* use an offscreen bitmap/view to avoid flickering
* use an IconRenderer to render the set Icon
* implement support for zooming

PathManipulator:
* use the conversion from/to Canvas space and View space
  in CanvasView (I would have liked to solve this in a
  more generic way, so that PathManipulator didn't have to
  know CanvasView, but I was not very creative...)



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17891 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-06-21 10:43:19 +00:00
Stephan Aßmus 3f6acee003 actually render all the shapes... TODO: gradients
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17890 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-06-21 10:36:39 +00:00
Stephan Aßmus 667973ad58 added more useful colors and some patterns
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17889 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-06-21 10:34:37 +00:00
Stephan Aßmus 362cd293d6 added IndexOf()
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17888 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-06-21 10:33:52 +00:00
Stephan Aßmus 781809a916 don't ignore the smoothing scale in Iterate()
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17887 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-06-21 10:33:14 +00:00
Stephan Aßmus 3639baa4b0 * add more classes:
PathContainer - a list of VectorPath objects
  ShapeContainer - a list of Shape objects
  Icon - the object contains VectorPaths and Shapes using these paths
  IconRenderer - renders an Icon into a BBitmap using AGG compound shape
  rasterization with additional gamma correction
* Shape has a PathContainer instead of a single VectorPath
* Document has an Icon instance
* changed the inheritance of some classes to us Referenceable more


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17873 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-06-18 19:05:44 +00:00
Stephan Aßmus 6ebf703166 * implemented more needed classes, Style, StyleManager, Gradient, Shape
* added Referenceable
TODO: Shape needs list of paths instead of one single path,
also transformers, and such stuff


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17867 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-06-17 19:02:32 +00:00
Stephan Aßmus e39da397f5 * long overdue update to AGG 2.4
* removed the useless parts of AGG (which are only needed for the
  interactive examples)
* make sure to jam -a libagg.a to solve any linking issues


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17838 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-06-14 14:30:17 +00:00
Stephan Aßmus 128277c969 the first steps towards Icon-O-Matic
* added a framework with many classes that I think will be useful
* currently, the StateView and Manipulator interface are used to
  allow editing a single VectorPath object, nothing more... the
  CommandStack framework is also used to support Undo/Redo


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17822 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-06-13 13:43:13 +00:00
Stephan Aßmus 1f84dba758 the finishing touches...
* now displays the calculator icon besides the text entry
when the keypad is off, also draws a frame around the text
entry and uses standard black on white...
* fixed a few other issues
* should hopefully be complete now
* on R5, there are sometimes rendering bugs with the 
  app_server (sometimes it doesn't invalidate views that
  are transparent and have been resized before the window is
  shown)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17777 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-06-08 00:34:02 +00:00
Stephan Aßmus d2176a2d86 * fix leading spaces after evaluating
* increase to 13 digits after decimal point
* load and save the expression history


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17776 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-06-07 22:42:00 +00:00
Stephan Aßmus 19f75b98e6 I hope Daniel is not upset, but Ingo and I have written a new parser:
* it supports white spaces
* it supports , and . for the decimal point
* it gives parse errors and where the error occured
* it supports more functions
I also added evaluating an expression given on the command line, it doesn't
show the UI then.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17774 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-06-07 22:05:03 +00:00
Stephan Aßmus 3866a1f6d2 Oops, I commited the destroyed version... but restoring the header
is not half as bad...


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17768 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-06-07 18:24:54 +00:00
Stephan Aßmus b4d21c8325 Quite a bunch of changes... but it doesn't work perfectly yet.
I ran into an obscure Pe bug which resulted in me overwriting
the wrong file... but then the machine KDLd, which it almost
never does... and I got lucky and the file was there again...
But this teaches me to commit more often.
* replaced expression area with a custom text view
* added expression string history (a bit dumb yet)
* added option to hide the keypad


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17767 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-06-07 18:14:55 +00:00
Stephan Aßmus e61b54a291 remembers option window position and avoids opening another instance of it, options window is not resizable anymore
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17742 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-06-06 16:43:42 +00:00
Stephan Aßmus b962260488 fixed build and applied yet more cleanup
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17741 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-06-06 16:25:46 +00:00
Stephan Aßmus a216b33aed more cleanup
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17740 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-06-06 16:21:02 +00:00
Stephan Aßmus d4c6f97c75 added DeskCalc to the image
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17738 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-06-06 16:09:31 +00:00
Stephan Aßmus 7cb395c433 adding DeskCalc by Timothy Wayper
huge cleanup of the DeskCalc code:
* applied style guide
* fixed any TODOs from timmy
* slightly nicer looking options window
* new way to store settings
* code should be more robust
* includes parser kindly donated by Daniel Wallner


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17737 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-06-06 16:07:47 +00:00
Stephan Aßmus 86f902c3ed save and restore menu and mouse settings, fixes bug 607
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17676 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-31 19:23:26 +00:00
Stephan Aßmus 25f03a7bd8 * avoid endless loop in some cases concerning scrolling with fractional coords
* detect invalid params to SetRange()


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17675 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-31 19:21:16 +00:00
Stephan Aßmus 95f766fa3e cleanup of archiving code
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17674 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-31 19:18:25 +00:00
Stephan Aßmus 693f381e83 Fixed a weird Tracker bug, fOkToMapIcons was initialized to "true", but
I have no idea what sense this makes. When switching from list mode to
icon mode, some poses had their locations set to location "infinity",
because MapToNewIconMode did a division by zero. This resulted in feeding
the scrollbars a totally insane range.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17673 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-31 19:16:10 +00:00
Stephan Aßmus 5dadd750c0 very small cleanup
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17672 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-31 19:09:24 +00:00
Stephan Aßmus b9535d8e52 * add two of the logos to /boot/beos/etc/artwork, suitable
for putting on your Desktop as background (manual placement!)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17633 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-29 14:45:45 +00:00
Stephan Aßmus 292027a476 use the new logo from the artwork folder
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17632 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-29 14:30:40 +00:00
Stephan Aßmus 3b2aa67bf2 * added "artwork" folder with variations of the Haiku logo (white on
blue and black on white in different sizes), all of which are pixel
  aligned for the crispest possible look. Both a PNG version and the
  original WonderBrush file are included.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17631 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-29 14:22:57 +00:00
Stephan Aßmus ef64b24102 added Siarzhuk Zharski to the list of contributors
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17626 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-29 10:01:46 +00:00
Stephan Aßmus b3d94504c2 * added a bunch of drivers by Siarzhuk Zharski
-> a USB Mass Storgage module (SCSI bus manager add-on)
-> a SiS 7018 AC97 driver (uses "old" audio driver interface)
-> a USB Serial driver
-> a USB Vision driver and media add-on (Haupauge WinTV USB)
* moved R3MediaDefs.h from usb_audio driver to common place
  headers/private/audio (also used by SiS 7018 driver)
* added TV tuner frequency defines to data/settings/media/usb_vision

Some of these drivers are in unfinished state, particularily the
USB Vision driver, the VideoProducer doesn't seem to use it yet,
the USB Mass Storage module is known to work though, it also includes
add-ons for itself that add support for some "special" hardware, these
are not integrated with the Jamfile build system though.

Also I didn't much much time with the "CVS package" targets, the
ReadMes are not added, someone with more knowledge about this could
add them...

None of this stuff is added to the Haiku image, it is simply included
to be maintained in the Haiku tree from now on.

* fixed a bug in Video Producer sample inherited from Be Sample
  code - the timing from the time source was not really used,
  on some systems this could cause in the producer not waking
  up at the correct time if the system time and audio card time
  are drifting apart



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17625 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-29 09:54:03 +00:00
Stephan Aßmus e229fcb239 nailed a view bugs concerning archiving BViews, the flags where restored 0 in most cases, which means B_WILL_DRAW was not set, I'm going to clean this up some more, ViewState::archiving_flags is bogus...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17612 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-27 21:57:54 +00:00
Stephan Aßmus a502e8cd6e sorry, forgot about this change... fixes build
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17604 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-27 09:28:59 +00:00
Stephan Aßmus c7b650c800 * because of my last change, the background was filled even though the app_server already did it
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17603 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-26 22:27:13 +00:00
Stephan Aßmus 12104c2eab synced with OT repository - I guess you knew what was comming,
Tracker saves and restores the window decorator settings on
Haiku.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17602 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-26 21:48:53 +00:00
Stephan Aßmus 56cedb9e81 sync to OT repository, simplify drawing code and remove dark edge at first attr column
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17601 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-26 21:41:55 +00:00
Stephan Aßmus d35ed1a6db fixed some remaining issues with tab sliding:
* the tab keeps the relative position when the
  window is resized (could be done nicer though,
  now it uses two members)
* tab offset is no longer reset in _DoLayout(), ie
  when any aspect of the decorator changes...
one issue that is left is sliding the vertical tab
of kLeftTitledWindowLook windows, but there might
be more... like when the look changes or stuff like
that


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17600 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-26 21:26:35 +00:00
Stephan Aßmus 8cd531a9ba As Axel correctly pointed out, but even Ingo overlooked, we need
to export the previously virtual slot to be binary compatible...


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17594 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-26 13:50:11 +00:00
Stephan Aßmus 39c991c0f3 Added BPositionIO::GetSize() and implemented it by means of Seek() and
Position(). This used up a virtual slot of BPositionIO. GetSize() needed to be
implemented in BFile, which uses the BStatable version as before. This should
hopefully be binary compatible. The only problem could be in source
compatibility when there are classes inheriting from BPositionIO implementing
their own GetSize().


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17593 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-26 13:27:53 +00:00
Stephan Aßmus b30e90211e added a way for BWindow to store and restore arbitrary decor settings,
currently those include only the tab location


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17583 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-25 12:01:28 +00:00
Stephan Aßmus 46fb2d73be sorry, I couldn't resist...
* added a few very small changes to make the tab sliding work perfectly
* added a comment on the purpose of WindowLayer::fLastMousePosition and
  how it is supposed to be used to have the mouse cursor stick to what
  is being dragged
* TODO: the tab offset doesn't necessarily have to be on [0..1], as long
  as we update it during window resizing to keep the relative position


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17577 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-24 11:05:25 +00:00
Stephan Aßmus a7f936aa14 * cleanup
* fixed SetViewColor() - I have no idea why it compiled before
* changed SetHidden() to make less of a difference between
  the top view and other views, the clipping is now always
  rebuilt


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17527 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-22 10:05:17 +00:00
Stephan Aßmus 8dc6e23650 cleanup
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17526 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-22 10:03:24 +00:00
Stephan Aßmus bd5ed534cf a fix to the file cache (done by Axel), that prevents a crash when
reading the file map of certain files (hope I got that more or less
right)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17525 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-22 09:59:07 +00:00
Stephan Aßmus a0c5ca01a5 using Draw(); Flush(); doesn't get a clean background to draw on, other controls should be fixed as well... this should fix the text becomming thick when repeatedly clicking a check box
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17524 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-22 09:55:39 +00:00
Stephan Aßmus bc685a6444 set_rgb_color() seemed useless
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17523 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-22 09:54:24 +00:00
Stephan Aßmus 52bc1e501f no need to delete fSelectMessage in the destructor after using SetSelectionMessage(NULL);
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17522 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-22 09:53:46 +00:00
Stephan Aßmus 431da4dd4b AddItem(..., frame) used AddItem(..., index) which
triggered a debugger call -> refactoring and cleanup


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17521 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-22 09:53:08 +00:00
Stephan Aßmus 75b7acdac8 * commented out the code to invalidate a view when
it is added our removed to another view, this is
  taken care of in View.cpp until we find something
  better


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17511 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-19 09:55:56 +00:00
Stephan Aßmus f5643345cd added an async version of MarkContentDirty(), which would clear the backgrounds in case an expose event had already happened earlier, however, it turned out I didn't need it yet, see next commit
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17510 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-19 09:53:01 +00:00
Stephan Aßmus 3e58cde6dc minor clean up
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17509 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-19 09:51:38 +00:00
Stephan Aßmus 5add574bc9 * invalidate in _Attach and _Detach - I still hope to
find a better solution, at least it fixes the problem
  that when views are added to already showing windows,
  and those views set their view color in
  AttachedToWindow(), the app_server will have already
  cleared the background with the previous view color
  (for example white check boxes problem in Tracker
   Settings window)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17508 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-19 09:45:01 +00:00
Stephan Aßmus ae749d90ce * updates fLastBounds in AttachedToWindow
* don't do the checks for invalid rect and Window(),
  because Invalidate() does this for you


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17507 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-19 09:43:06 +00:00
Stephan Aßmus 2a3de9bc1d * use new (nothrow) when checking the returned pointer
* better handling of errors in various versions of AddItem()


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17506 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-19 09:39:54 +00:00
Stephan Aßmus b0cdd6481d synced to 1.17 from OpenTracker CVS (fixed a deadlock when dragging something over Deskbar)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17497 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-17 17:08:26 +00:00
Stephan Aßmus 3702e4734e synced to 1.8 from OpenTracker CVS
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17496 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-17 17:07:41 +00:00
Stephan Aßmus 2c7fad579c synced to rev 1.9 and 1.4 from OpenTracker CVS
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17495 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-17 17:02:25 +00:00
Stephan Aßmus a2a6a329e8 a bunch of ListView fixes:
* removed weird stuff that seemed to have no purpose in life
* added more comments where I had to figure things out
* fWidth is now adjusted in FrameResized()
* ListView scrolls up when items are removed at the end and
  there would be empty room
* fixed SwapItems(), MoveItem() and ReplaceItem() by making
  DoMiscellaneous() use the private implementations instead
  of calling the public ones again resulting in an endless
  loop
* renamed private methods with underscore
* removed more unused/empty private methods
* some slight performance increases here and there
* more correct tracking of fFirstSelected and fLastSelected,
  at least I cannot reproduce one crash in the WonderBrush
  Layer list anymore

even more cleanup and testing would not hurt though...



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17487 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-17 00:12:14 +00:00
Stephan Aßmus fb36570967 * added a simple seeking slider for Marcus to play with...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17371 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-08 19:18:19 +00:00
Stephan Aßmus 19f441e575 the drawing code was optimized for bugs in Painter, no longer
necessary


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17330 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-05 09:04:14 +00:00
Stephan Aßmus 65abd9dff0 * Painter switches back correctly from using B_OP_COPY for text to
using the "normal" B_OP_COPY for lines and such that works more
  like B_OP_OVER actually (for example, the slider in VLC will look
  much better, but also other stuff)
* combined Stroke and FillEllipse() into DrawEllipse() and fixed
  some longstanding issues, ellipses are now correctly placed
  (aligned) and of the correct size
* removed locking in the DrawingEngine drawing functions, since
  you need to have the DrawingEngine locked anyways for the
  clipping to stay what it is (and that's already the case elsewhere
  in the code)
* simplified ConstrainClippingRegion, the NULL version was never
  useful and also locking is removed, see above

summary: slight speed improvements, cleanup and bugfixes...


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17329 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-05 09:03:09 +00:00
Stephan Aßmus e6b19d1f40 removed unnecessary call to ConstrainClipping(), the drawing functions that take a color are reserved for the server and ignore clipping
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17328 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-05 08:56:59 +00:00
Stephan Aßmus ee24641fee removed large chunks of dead code
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17327 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-05 08:55:28 +00:00
Stephan Aßmus 7e07723e68 added tracking the usage of the special B_OP_COPY version for text
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17326 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-05 08:54:15 +00:00
Stephan Aßmus 022cdecc8f simplified polygon and bezier drawing methods, made them more efficient
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17311 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-03 20:34:27 +00:00
Stephan Aßmus d96389c199 fixed BView::Stroke/FillPolygon(), the bounds were not converted to screen and the clipping decision was based on it
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17310 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-03 20:33:18 +00:00
Stephan Aßmus a9efee3047 * removed left over debug output, sorry about that
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17307 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-03 11:09:37 +00:00
Stephan Aßmus 6a8e3decde * compile fix for the test environment
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17306 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-03 11:08:52 +00:00
Stephan Aßmus d6aecd8934 should have fixed BView::StrokeBezier() and BView::FillBezier(), thanks to jan__64 for reporting
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17303 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-03 10:08:23 +00:00
Stephan Aßmus e1fcb5e4b8 added Carwyn Jones to the list of contributors, he seems to have been involved in writing BDirectWindow
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17286 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-01 10:18:52 +00:00
Stephan Aßmus 114752ff21 In FFM mode, clicking a window will not bring it to front
immediately. Only if the mouse is released within a certain
time window (half a sec) and if it was not dragged (as on R5).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17285 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-01 10:17:34 +00:00
Stephan Aßmus e647873a03 implemented TODOs from Desktop::ActivateWindow():
* If the window is on another workspace, the workspace will be
  activated or the window will come to the current workspace
  or nothing will happen depending on the windows flags. Tested
  with WonderBrush, but I just now realise that it will also
  fix activating a window in the Deskbar, which is on a different
  workspace.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17284 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-01 10:14:51 +00:00
Stephan Aßmus aaff012f00 Rudolf convinced me to enable WaitForRetrace() again, the ATI driver should be fixed instead (not to export the retrace semaphore when interrupts are disabled)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17274 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-04-30 10:48:02 +00:00
Stephan Aßmus 4da35ea940 * added IFS screen saver
* added Installer app
* added all Translators


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17271 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-04-29 20:14:26 +00:00
Stephan Aßmus 1224ddd152 whoops, accidentally had a broken makefile left there
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17270 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-04-29 20:10:51 +00:00
Stephan Aßmus bc679b6077 added a cool looking xscreensaver port, featuring BDirectWindow usage - looks smoother than the original
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17269 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-04-29 20:08:44 +00:00
Stephan Aßmus a075725845 another long overdue fix... CopyBits() is now taking
children of the view in question into account. Neither
are they included in the region being copied, nor are
views overdrawn by the copied contents. Also, the update
region is calculated from the region having been copied,
so that holes from children views are invalidated
correctly.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17268 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-04-29 18:19:54 +00:00
Stephan Aßmus 5ec797a76f * improved getting the retrace semaphore, now the PrivateScreen
will not try to retrieve the retrace semaphore again and again
  if the graphics cards doesn't support it for some reason
* disabled BScreen::WaitForRetarce() for now, since it will just
  hang on ATI Radeon at least


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17266 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-04-29 16:46:21 +00:00
Stephan Aßmus 9ac741b2d2 * small cleanup in AS_DIRECT_WINDOW_GET_SYNC_DATA
* added handling of AS_DIRECT_WINDOW_SET_FULLSCREEN
  (returns B_ERROR for now)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17265 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-04-29 16:40:29 +00:00
Stephan Aßmus 9d8ea7e417 modestly added myself to the authors of View.cpp
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17264 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-04-29 16:37:10 +00:00
Stephan Aßmus f87b5b9803 long overdue fix for BScrollBar. fValue is now set in SetValue()
instead of ValueChanged(). This fixes BScrollBar implementations
which don't call the inherited version of ValueChanged(). All kinds
of weird behaviour seems to be fixed by this: StyledEdit window
resizing, scrolling in Pe, WonderBrush, eXposer and maybe more.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17263 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-04-29 16:36:31 +00:00
Stephan Aßmus a1a536495a corrected slightly weird passing on of flags to the BControl constructor
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17262 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-04-29 16:34:10 +00:00
Stephan Aßmus 2e964229ed removed a tiny bit of code duplication
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17261 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-04-29 16:31:59 +00:00
Stephan Aßmus 109d4881b5 changed translator name to JPEG[2000] Images to be in line with all the other image translators
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17252 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-04-27 22:42:15 +00:00
Stephan Aßmus c98821ac71 * added GUI classes for the transport control panel implementation
* as noted by the headers, these originate from Be Sample Code or
  code that was written by myself alone for VLC (they have been
  updated in the meantime though)
* seek slider is missing yet as well playback position info view
  (could be taken from VLC as well, I still have the implementation
  that contains only my own code)
* fixed application quitting when only one of multiple player
  windows is closed (not it quits when the last player is closed
  or MediaPlayer->Quit is selected from the menu)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17222 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-04-24 16:49:19 +00:00