Commit Graph

193 Commits

Author SHA1 Message Date
Alex Wilson
50cc24b3f9 Add a Builder for BALMLayout. 2012-05-03 08:44:23 +12:00
Alex Wilson
b50d4ed8bd Add new methods to BALMLayout for adding multiple x/y tabs at once. 2012-05-03 08:44:22 +12:00
Alex Wilson
8b52747974 In Area, remove unused ItemFrame() method.
Also modify Frame() method to return a rect with rounded coordinates.
2012-05-03 08:44:21 +12:00
Alex Wilson
574533ef12 In BALMLayout, make AddView(...) consistent with other layouts.
If a BView is added which has a BLayout, use the layout as a BLayoutItem
to represent that view, as other layouts do.
2012-05-03 08:44:19 +12:00
Alex Wilson
75e2dcf8fe In BALMLayout, allow for more flexibility in spacing and insets.
* allow for independent left, top, right and bottom insets
* allow for independent vertical and horizontal spacing between tabs
* allow for the usage of Haiku's spacing constants such as B_USE_WINDOW_INSETS
2012-05-03 08:44:17 +12:00
Alex Wilson
fefa17f47e Remove unused 'PerformancePath' stuff. 2012-05-03 08:44:14 +12:00
czeidler
c3e57dc36d Give the area an id. 2012-05-03 08:44:13 +12:00
czeidler
b7630c4c98 Save and restore layout. 2012-05-03 08:44:11 +12:00
John Scipione
7c369a4b3f Fix gcc2 build on Mac OS X Lion.
The gcc2 cross-compiler built on Mac OS X Lion has a bug in it
where it is erroring with 'cast specifies signature type' when
assigning 0 or NULL to a pointer to a member fuction. NULL in this
instance is correctly converted to 0 since it is illegal to assign
((void*)0) to a pointer to a member function. However, it should
be legal to assign 0 to a pointer to a member function. Thus, there
is a bug.  Since I can't fix the gcc2 compiler I am working around
this bug by assigning the pointer to a do nothing function instead.

My host compiler version is
i686-apple-darwin11-gcc-4.2.1 (GCC) 4.2.1 (Apple Inc. build 5666) (dot 3)

The same error occurs using the default gcc-llvm compiler and
a standard gcc 4.61 built from source. This bug does not occur on
Mac OS X 10.6 gcc2 or gcc4, nor does it occur on Mac OS X 10.7 with
the gcc4 cross-compiler.

If and when we decide to finally leave gcc2 behind we can revert this
change.
2012-04-07 06:21:26 -04:00
Jérôme Duval
362efe0c9f freetype: builds against the 2.4.6 optional package.
* added optional feature package for freetype 2.4.6 gcc4/gcc2 x86 and gcc4 ppc.
* FT_CONFIG_OPTION_SUBPIXEL_RENDERING is disabled, --include-patented-code doesn't
  change this setting anymore. This would require different packages.
* drop freetype sources and headers from the tree.
* fix decorators, test app server and appearance to use feature package headers.
* hybrid build untested.
2012-03-17 20:37:00 +01:00
Alex Wilson
a84e14ca84 Merge branch 'master' of git://github.com/haiku/haiku 2011-12-15 20:50:28 -07:00
czeidler
57014d1ff7 Make tabs BReferenceable. Maintain a list of tabs. 2011-11-30 17:55:36 +13:00
Alex Wilson
17499672a0 Bring BALMLayout in line with changes to BLayout. 2011-10-28 14:16:46 -06:00
Ingo Weinhold
85b41b15d9 * Added bool and double BString::operator<<() versions.
* Removed the clashing operator in JobSetupDlg. Automatic whitespace
  cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42387 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-07-07 10:17:15 +00:00
Clemens Zeidler
6e1a22610f Add a comment about who is responsible to clean up.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42226 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-18 01:29:27 +00:00
Clemens Zeidler
ef93b55df4 - Areas with same tabs are put in a column/row automtically. Move preferred size constraint from Area to the column/row. This avoids a "spring" effect of the
quadratic solver if multiple Areas are in the same column/row.
- Replace GetString by ToString.
- some clean up



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40941 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-03-14 00:24:12 +00:00
Stephan Aßmus
4153964a10 Moved IconUtils.h to Interface Kit and therefor made it an "official" header. Since the class has no
virtual but only static methods, it is not so likely that binary compatibility issues may arrise
from using it in new apps. Adjusted all the Jamfiles that included the private libicon headers. Note
that it was never necessary to link against libicon.a, since it's part of libbe anyway. There was one
instance where that was done. Hopefully it does not break the build, but I did this change a while ago,
tested it and then the harddrive began failing.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40679 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-25 09:12:38 +00:00
Jérôme Duval
0812493886 merged freetype 2.4.4
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40534 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-16 17:55:28 +00:00
Clemens Zeidler
8286779101 Make kp_solve interface work again.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40384 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-08 09:01:11 +00:00
Clemens Zeidler
a0ad88e002 Fix min/ max calculation by removing all soft constraints before doing so. Smaller fixes.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40297 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-26 22:06:02 +00:00
Clemens Zeidler
7583db5a1e Add an alternative solver to lp_solve. The solver based on Ingo's active set solver but is able to handle arbitrary hard and soft constraints. The advantage to lp_solve is that the active set solver can optimize variable in respect to a quadratic objective function. This makes it possible to minimise the quadratic derivation to a desired value e.g. \Sum_i(x_i - x_{i,pref})^2 -> min.
The solver part has been refactored in this way that both solver can be used with the same layout specifications. The active set solver is default now; the performance is not as good as lp_solve, though.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40285 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-25 04:59:40 +00:00
Clemens Zeidler
f108cdbfab Merge all linear programming types in one file an rename them.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39832 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-12-13 19:23:33 +00:00
Clemens Zeidler
5440f6fee3 Refactor the linear programming class to use a minimal solver interface class and implement the interface for lp_solve. As a result lp_solve is not visible to the outside any more. This interface could be used to use other solvers as well. Rename operator constants to no clash with lp_solve constants.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39829 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-12-13 18:41:58 +00:00
Michael Pfeiffer
b13a0d5d32 * Bug fixed: WriteSpoolData didn't pass data to
transport add-on because ";" was missing after
  "return" statement.
* Removed unused getter methods from class GraphicsDriver.
* Implemented page rotation (closes #6965) in landscape.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39800 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-12-10 10:47:19 +00:00
Michael Pfeiffer
331c922016 * Renamed method PrinterCap::IsSupport() to Supports().
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39798 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-12-10 07:26:14 +00:00
Michael Pfeiffer
4a0c1e139d * Code style changes (missing header files from r39770)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39771 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-12-08 20:07:22 +00:00
Michael Pfeiffer
fefd3ba588 * Code style changed in class GraphicsDriver and and
child classes
* Removed namespace handling for Metrowerks compiler
* Initialize all fields in constructor


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39765 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-12-08 10:22:40 +00:00
Clemens Zeidler
510c618b96 gcc2 don't like INFINITY. Fix the build.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39682 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-11-30 03:35:15 +00:00
Clemens Zeidler
067f47a3ee Move lp_solve dependency completely into LinearSpec. Clean up and some more memory allocation checks.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39681 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-11-30 02:08:10 +00:00
Clemens Zeidler
e7de22dcff fUsingSummands was never used so remove it.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39679 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-11-29 21:08:26 +00:00
Clemens Zeidler
c97cd0f4da Also update the preferred size constraints correctly when replacing the tabs.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39644 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-11-26 04:33:06 +00:00
Clemens Zeidler
8fa4fd37b7 Keep the preferred size ratio into account. This make layout behaviour much more intuitive when resizing a window. Thanks Christof.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39641 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-11-26 04:20:38 +00:00
Jérôme Duval
ee72866293 merged freetype 2.4.3
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39524 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-11-19 21:01:29 +00:00
Jérôme Duval
d8c9110cb6 updated libpng to 1.4.4
avoids warnings for gcc2 (deprecated attribute)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39523 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-11-19 20:20:05 +00:00
Michael Pfeiffer
f14cab2d36 * Added support for the remaining Gutenprint setting types:
Boolean, Int, Dimension and Double.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39423 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-11-14 10:58:10 +00:00
Michael Pfeiffer
bc9665753b * Use Layout API
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39199 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-10-30 09:43:26 +00:00
Michael Pfeiffer
299710a731 * Style changes.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39198 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-10-30 08:54:52 +00:00
Michael Pfeiffer
54336e821e * Use Layout API.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39197 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-10-30 08:40:04 +00:00
Michael Pfeiffer
42c36e9fd3 * Style changes.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39196 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-10-30 08:06:55 +00:00
Michael Pfeiffer
239c0190af * Use namespace "std" to fix build-o-matic error.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39195 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-10-30 08:05:02 +00:00
Michael Pfeiffer
ae83b2f10a * Use check box to enable "Print preview" instead of a button.
The button did make sense in BeOS where there was no printer
  selection dialog. The dialog is enabled in Haiku per default
  and clicking the "Preview" button closes the job setup dialog
  and returns to the printer selection dialog.
  The preview is shown after the printer selection dialog is
  closed clicking on the "OK" button.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39192 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-10-30 07:06:55 +00:00
Michael Pfeiffer
de18d919e7 * Added driver specific settings to job data and job
setup dialog.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39191 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-10-30 06:54:16 +00:00
Michael Pfeiffer
961e35fb58 * Changed BaseCap ID type from int to int32.
* Removed unused printer ID from PrinterCap.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39156 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-10-26 13:06:29 +00:00
Michael Pfeiffer
56c20e828b * Style changes.
* Removed unused code.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39154 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-10-26 09:56:56 +00:00
Michael Pfeiffer
308f0e195d * Enable halftone configuration options if requested by printer driver
only.
* WIP: Driver specific generic capabilities.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39153 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-10-26 09:48:36 +00:00
Michael Pfeiffer
f412257ccb * Store resolution ID in libprint specific field in JobData;
as the pair of x/y resolutions might not be unique in all
  supported Gutenprint printer models 


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39142 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-10-25 14:46:26 +00:00
Michael Pfeiffer
f53abcbdf8 * Added field fKey to BaseCap (will be required for Gutenprint printer
driver add-on).
* Added ability to search for a PrinterCap by ID to class PrinterCap
  (for Gutenprint driver add-on).
* Moved code for searching a PrinterCap by name into class PrinterCap.
* Refactored code in JobSetupDlg to use the new method.
* Refactored duplicated code in JobSetupDlg.
* There is still a lot of refactoring potential in libprint.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39141 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-10-25 14:21:09 +00:00
Michael Pfeiffer
08d759feae * More style changes.
* Removed namespace handling for Metrowerks compiler.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39140 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-10-25 11:44:09 +00:00
Michael Pfeiffer
a7dde370f5 * Style changes.
* Unused code removed.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39139 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-10-25 11:34:31 +00:00
Clemens Zeidler
b23e9af5b5 Thanks to anevilyak, the previous approach was not thread safe. You can specify a friend layout now if you want to connect tabs of different BALMLayout's.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39041 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-10-21 11:19:18 +00:00