Commit Graph

927 Commits

Author SHA1 Message Date
Vadim Zeitlin
b1314bbca4 Fix display of PNG images in wxHTML when GIF is disabled
Too much code was taken in "#if wxUSE_GIF" check, move Layout() out from it to
make PNG images work even if GIF support is disabled.

Closes #17181
2015-10-10 23:32:17 +02:00
Vadim Zeitlin
5c72e0c354 Fix for "Fix handling of relative URLs starting with "/" in wxHTML"
Commit 7e8c2cc4a5 fixed handling of http:// URLs
but completely broke the handling of file:// ones under MSW where the file
paths contain colons and so are different in escaped and unescaped forms and
so passing the unescaped "myfullurl" to wxFileSystem::OpenFile() simply didn't
work at all.

Fix this while still continuing to use "myfullurl" by keeping "myfullurl"
itself escaped and only unescaping it right before passing it to
OnHTMLOpeningURL() so that this public virtual method is still called with the
same value as before, but "myfullurl", and hence "myurl" passed to OpenFile()
later, is kept escaped.

Closes #17148.
2015-10-10 23:32:17 +02:00
Tobias Taschner
8282c1be0f Remove Windows CE support
Windows CE doesn't seem to be supported by Microsoft any longer. Last CE
release was in early 2013 and the PocketPC and Smartphone targets supported by
wxWidgets are long gone.

The build files where already removed in an earlier cleanup this commit
removes all files, every #ifdef and all documentation regarding the Windows CE
support.

Closes https://github.com/wxWidgets/wxWidgets/pull/81
2015-09-23 00:52:30 +02:00
Rick Nelson
7e8c2cc4a5 Fix handling of relative URLs starting with "/" in wxHTML
Don't interpret them relatively to the current path, so that an URL like
"/pictures/foo.png" in the file "/webpages/bar.html" is resolved correctly and
not as "/webpages/pictures/foo.png" as it was previously.

See #17148.
2015-09-16 00:26:33 +02:00
Paul Cornett
845444f35f Fix null pointer check from 198d7c6c (r40919)
operator '?:' has lower precedence than '+'
2015-09-06 20:56:59 -07:00
Vadim Zeitlin
5fabf7e60d Add a debug check for HTML tag handlers being available.
This helps to detect the situation when HTML tag handlers are not linked in at
all, as it can happen with MSVC when using static libraries, as this doesn't
prevent wxHTML from parsing HTML, it just doesn't render it correctly at all
and it can be difficult to understand why exactly does this happen, so try to
detect this situation and provide a hint.
2015-07-17 14:38:48 +02:00
Vadim Zeitlin
bede8a3296 Ensure we never create empty bitmap in wxHtmlWindow::OnPaint().
Doing this resulted in an assert from wxBitmap ctor and was useless anyhow,
just skip the drawing code if the window is reduced to empty client area.
2015-06-21 15:38:31 +02:00
Dimitri Schoolwerth
8f8d58d193 Use wx-prefixed macros throughout the repository.
Change {DECLARE,IMPLEMENT}_*CLASS and {DECLARE,BEGIN,END}_EVENT_TABLE
occurrences to use the wx-prefixed version of the macros.
2015-04-23 22:00:35 +04:00
Artur Wieczorek
0091246427 Only use wxDateTime in wxHtmlPrintout::TranslateHeader() if available.
Code using wxDateTime when preparing header should be active only if
wxUSE_DATETIME==1.

See #16939.
2015-04-05 19:57:20 +02:00
Vadim Zeitlin
def2bcb8cd Minor changes in wxChmTools: add const, remove semicolons.
Also fix a typo in a comment.

Closes #16836.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@78442 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2015-02-04 16:17:20 +00:00
Vadim Zeitlin
39da0824d3 Don't skip wxHtmlContainerCell layout, even when the width is 0.
This ensures that wxHtmlContainerCell height is set to some reasonable value
instead of 0 and fixes infinite loop which occurred in some circumstances in
wxGTL when trying to allocate size for wxHtmlListBox as it oscillated between
having a vertical scrollbar with bigger width and not having it with smaller
width. The latter was wrong as decreasing the width to 0 didn't really obviate
the need for the vertical scrollbar and was just an artefact due to not
setting wxHtmlContainerCell height at all in this case.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77663 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-10 16:52:04 +00:00
Julian Smart
4dd04d475e Removed commented out window variant lines
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77555 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-08 07:51:42 +00:00
Julian Smart
ed8d062426 Use the small variant for help contents etc. since normal is a little outsized for this on Mac.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77554 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-07 18:26:43 +00:00
Vadim Zeitlin
0f60be60a2 Don't leave wxHtmlWinParser with a dangling wxDC pointer.
Call SetDC(NULL) to prevent wxHtmlWinParser from using a pointer to the
already destroyed wxDC object.

See #16501.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77504 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-08-29 11:56:33 +00:00
Vadim Zeitlin
88e808c9ac No changes, just avoid unnecessary heap allocation in wxHtmlWindow.
Create the temporary wxClientDC on the stack, not the heap, there is no need
for the latter.

See #16501.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77503 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-08-29 11:56:27 +00:00
Stefan Csomor
53fc25b609 one call is enough
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77053 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-08-11 07:07:46 +00:00
Vadim Zeitlin
fb99672f62 Hopefully finish removing the old wxCocoa port.
Get rid of the rest of __WXCOCOA__ tests in the sources.

Drop configure option for using it.

Also remove the documentation for this port.

This should have also been part of r76735.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76815 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-07-03 22:03:21 +00:00
Vadim Zeitlin
01f9accd19 Remove wxPM, wxWidgets port to OS/2.
This port is not used and is not being worked on, so remove it to reduce the
amount of the code which needs to be updated for every global change.

Also remove tests for VisualAge compiler which isn't used since ages.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76533 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-05-15 23:56:58 +00:00
Stefan Csomor
f18d7097da adding wxFALLTHROUGH where until now we had comments, allows for code-analysis support
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76399 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-04-26 17:36:32 +00:00
Vadim Zeitlin
7238d2761f Don't use %i format specifier for size_t values.
In 64 bit build, size_t can be 64 bits while %i expects a 32 bit value.
Fix this by just avoiding the unnecessary use of size_t, the number of entries
in the index is not going to be greater than 2^32.

Closes #16163.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76287 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-04-05 10:44:54 +00:00
Stefan Csomor
4399637c4c adding correct return type
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76234 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-03-31 12:34:48 +00:00
Vadim Zeitlin
33ad33d447 Add wxOVERRIDE and use it in common and wxOSX code.
Make overriding virtual methods more explicit and enable additional checks
provided by C++11 compilers when "override" is used.

Closes #16100.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76173 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-03-20 13:26:28 +00:00
Vadim Zeitlin
99d3a4f4d2 Speed up wxHtmlHelpWindow startup time by freezing font choices.
Appending the names of all fonts could take a significant amount of time if
there were a lot of them, freeze the controls while doing it to speed it up.

Closes #15978.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75907 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-02-17 23:53:20 +00:00
Vadim Zeitlin
8e828674c4 Set wxHtmlHelpFrame title format before creating it.
This ensures that it's always set before it can be used, fixing assert
introduced in r75748.

Closes #15977.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75906 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-02-17 23:53:15 +00:00
Julian Smart
9733b78862 Return true from OnCellClicked if the event was processed, otherwise further processing will use default behaviour which may negate the effect of the event handler.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75793 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-02-04 19:10:22 +00:00
Vadim Zeitlin
67cbb04051 Try to detect invalid wxHtmlWindow title format earlier.
Assert directly in wxHtmlWindow::SetRelatedFrame() instead of doing it much
later, hopefully people will read the comment at the assert point.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75748 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-01-31 16:06:43 +00:00
Vadim Zeitlin
448a4ac22a Reduce the number of realloc() calls in wxHtmlTableCell.
Don't call realloc() after adding each row, this is horribly inefficient, so
preallocate more memory to avoid this.

Closes #15931.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75746 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-01-30 19:40:40 +00:00
Vadim Zeitlin
bd30752410 Just deprecate but don't schedule for removal wxNORMAL and friends.
Deprecate the use of the old untyped constants but don't schedule them from
removal in a future wx version by removing "#if WXWIN_COMPATIBILITY_3_0" tests
around their definition and use. Provoking deprecation warnings in the code
using these constants is worth it as they are unclear and it's easy to make
mistakes when using them, but breaking this code compilation outright can't be
justified -- even in the future.

Also use more informational wxDEPRECATED_MSG() instead of a simple
wxDEPRECATED() as it might not be obvious at all how should the code be
updated exactly.

Finally, avoid the use of deprecated constants inside the library itself.

As a side effect, this closes #15814.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75565 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-01-06 12:42:37 +00:00
Vadim Zeitlin
a49d3f4161 Fix tons of warnings in wxMSW after deprecating wxPen/wxBrush int styles &c.
Replacement of FUTURE_WXWIN_COMPATIBILITY_3_0 with WXWIN_COMPATIBILITY_3_0 in
r75532 resulted in tons of warnings as all code using wxSOLID and similar
constants now uses the deprecated methods taking int instead of the preferred
ones taking wx{Pen,Brush}Style (and similarly for wxFont{Style,Weight,Family}).

Fix all of them but this also would seem to mean that this change might not be
such a good idea at all.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75547 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-01-04 22:20:36 +00:00
Paul Cornett
967a94c91a remove WXWIN_COMPATIBILITY_2_6, add WXWIN_COMPATIBILITY_3_0
closes #15792

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75532 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-01-04 20:07:33 +00:00
Vadim Zeitlin
fba8b37345 Add wxHtmlWindow::SetDefaultHTMLCursor().
This allows to change the cursors used by any HTML windows, before creating
them.

Closes #15324.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75398 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-12-18 16:00:43 +00:00
Vadim Zeitlin
853ee8bf12 Get rid of compile- and run-time checks for OS X < 10.5.
As 10.5 is the minimal supported version, it doesn't make sense to check for
it (or even earlier versions) during the build or run-time.

Closes #15580.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75028 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-10-17 12:34:12 +00:00
Vadim Zeitlin
534f87c6c4 Avoid using wxHtmlTag::HasParam() unnecessarily.
Use GetParamAsXXX() accessors instead as they combine the calls to HasParam()
and GetParam() and make the code shorter and avoid the duplication of the tag
name.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74881 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-09-30 23:48:46 +00:00
Vadim Zeitlin
6d2190fcb4 Store HTML "id" parameter value in wxHtmlCell.
Pass on the value of the ID to the cell object when adding a new cell.

Closes #15535.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74880 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-09-30 23:48:41 +00:00
Vadim Zeitlin
486a0fa75f Add wxHtmlTag::GetParamAsString() convenience method.
This is more convenient to use than HasParam() + GetParam() and also slightly
more efficient as we search for the tag name only once.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74879 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-09-30 23:48:38 +00:00
Vadim Zeitlin
0d53638f71 Fix wxHtmlHelpData::SetTempDir() to behave correctly without trailing slash.
The path passed to this function is always a directory, so use
wxFileName::AssignDir() instead of the default constructor of wxFileName which
considers the name to be a name of a file unless it ends with a path separator.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74696 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-08-23 16:37:09 +00:00
Vadim Zeitlin
3f66f6a5b3 Remove all lines containing cvs/svn "$Id$" keyword.
This keyword is not expanded by Git which means it's not replaced with the
correct revision value in the releases made using git-based scripts and it's
confusing to have lines with unexpanded "$Id$" in the released files. As
expanding them with Git is not that simple (it could be done with git archive
and export-subst attribute) and there are not many benefits in having them in
the first place, just remove all these lines.

If nothing else, this will make an eventual transition to Git simpler.

Closes #14487.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74602 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-07-26 16:02:46 +00:00
Vadim Zeitlin
e24c4e1238 Set mouse cursor correctly over image map links in wxHTML.
The cursor didn't change to a link one when the mouse was over link areas in
an image map.

Fix this by generalizing wxHtmlCell::GetMouseCursor() into GetMouseCursorAt().

Closes #15350.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74570 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-07-17 17:27:14 +00:00
Vadim Zeitlin
2767360fa8 Check the number of points in the image map in wxHTML.
Don't crash if an <area> element is incorrect and doesn't have the required
number of coords attributes.

Closes #15348.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74569 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-07-17 17:27:09 +00:00
Vadim Zeitlin
4cdb8e430c No changes, just remove an extra pair of braces in wxHTML code.
See #15348.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74568 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-07-17 17:27:04 +00:00
Vadim Zeitlin
88343ddae9 Allow resetting background colour of wxHtmlContainerCell.
Don't use m_UseBkColour flag which remained always set once
SetBackgroundColour() had been called, but just rely on m_BkColour itself
being valid to determine whether we should use it. This allows to reset the
background colour after setting it.

Closes #15287.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74306 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-06-29 12:50:37 +00:00
Julian Smart
c901a24c2a Removed 3D style for splitter on Mac since it looks bad
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74281 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-06-25 07:23:48 +00:00
Julian Smart
d5bfe58482 Fixed loading of whole file:... specification of a page
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74250 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-06-17 20:21:54 +00:00
Vadim Zeitlin
ce7fe42e84 Provide shorter synonyms for wxEVT_XXX constants.
Use the same short names as are used by the event table macros for the event
type constants themselves. This makes them much more comfortable to use, e.g.
Bind(wxEVT_BUTTON) compared to Bind(wxEVT_COMMAND_BUTTON_CLICKED).

The old long names are still kept for backwards compatibility and shouldn't be
removed as it doesn't really cost anything to continue providing them, but all
new event types should only use the short versions.

Closes #10661.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73850 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-04-25 10:11:03 +00:00
Julian Smart
6a63bdc860 Corrected code that re-encodes the book title.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73762 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-04-01 19:38:54 +00:00
Vadim Zeitlin
4340a145d8 Fix background corruption in scrolled wxHtmlWindow.
Draw the background on the entire virtual size, not just the currently shown
client size.

Closes #15047.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73543 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-02-19 23:13:21 +00:00
Vadim Zeitlin
be9cae51e6 Improve appearance of text with background colour in wxHTML.
Use wxHTML_CLR_TRANSPARENT_BACKGROUND instead of wxHTML_CLR_BACKGROUND for the
bgcolor attribute of the body tag to prevent clipping of the text cells by the
next cell with opaque background.

Closes #14986.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73412 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-01-20 12:53:22 +00:00
Paul Cornett
784d9056f4 sizeof(char) is 1. By definition.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73407 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-01-20 03:08:33 +00:00
Vadim Zeitlin
4bfa6c94c8 Really fix the background colour used for the cells in wxHTML tables.
Respect "bgcolor" attributes of <td> tags, they were ignored since the changes
of r72589 (see #14443).

Closes #14909.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73393 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-01-20 02:09:09 +00:00
Vadim Zeitlin
1084433147 No changes, just remove unneeded variable initialization.
Don't initialize htmlWindowBorder in wxHtmlHelpWindow::Create() just to
overwrite it with another value on the next line.

Closes #14933.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73315 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-12-29 20:15:50 +00:00