Changelogs
Overview
These changelogs reflect the history of all files in the Subversion repository. The changelog has been generated at 2016-05-09 08:38:04
Changelog for wxWidgets (70435 changes):
2014-08-23 03:02 VZ, revision 773402014-08-23 03:02 VZ, revision 77339Implement item & subitem rect/pos in wxQT list ctrl
2014-08-23 03:02 VZ, revision 77338Implement get next list item (adapted from generic) in wxQT
2014-08-23 03:02 VZ, revision 77337Implemented item state getter and setter in wxQT list ctrl
2014-08-23 03:02 VZ, revision 77336Implemented items and column deletion in wxQT list ctrl
2014-08-23 03:02 VZ, revision 77335Implement item data in wxQT list control
2014-08-23 03:02 VZ, revision 77334Refactor qt list item handling (check if not null)
2014-08-23 03:02 VZ, revision 77333Implemented item text setter and getter
2014-08-23 03:02 VZ, revision 77332Refactor get Qt list ctrl item to its own method
2014-08-23 03:02 VZ, revision 77331Fix font in listctrl row
2014-08-23 03:01 VZ, revision 77330Fix row colours (fg/bg) in wxQT list ctrl
2014-08-23 03:01 VZ, revision 77329Implemented column getter and setter in listctrl
2014-08-23 03:01 VZ, revision 77328Refactory the list ctrl signal handler
2014-08-23 03:01 VZ, revision 77327Implement simple listctrl methods in wxQT
- M /wxWidgets/branches/wxQT/include/wx/qt/window.h
- M /wxWidgets/branches/wxQT/src/qt/control.cpp
- M /wxWidgets/branches/wxQT/src/qt/window.cpp
2014-08-23 03:01 VZ, revision 77326Improve erasing issues (let Qt handle them)
2014-08-23 03:01 VZ, revision 77325Fix default wxTextCtrl color background due PostCreation
2014-08-23 03:01 VZ, revision 77324Implement missing wxQT helpers for QLabel This now is needed to correctly paint the background, allows the static text / bitmap to handle events and signals, and maybe a better destruction process.
2014-08-23 03:01 VZ, revision 77323Fix default widget fore/background colour
- M /wxWidgets/branches/wxQT/include/wx/qt/window.h
- M /wxWidgets/branches/wxQT/src/qt/anybutton.cpp
- M /wxWidgets/branches/wxQT/src/qt/calctrl.cpp
- M /wxWidgets/branches/wxQT/src/qt/checkbox.cpp
- M /wxWidgets/branches/wxQT/src/qt/choice.cpp
- M /wxWidgets/branches/wxQT/src/qt/combobox.cpp
- M /wxWidgets/branches/wxQT/src/qt/control.cpp
- M /wxWidgets/branches/wxQT/src/qt/dialog.cpp
- M /wxWidgets/branches/wxQT/src/qt/frame.cpp
- M /wxWidgets/branches/wxQT/src/qt/gauge.cpp
- M /wxWidgets/branches/wxQT/src/qt/listbox.cpp
- M /wxWidgets/branches/wxQT/src/qt/listctrl.cpp
- M /wxWidgets/branches/wxQT/src/qt/menu.cpp
- M /wxWidgets/branches/wxQT/src/qt/msgdlg.cpp
- M /wxWidgets/branches/wxQT/src/qt/notebook.cpp
- M /wxWidgets/branches/wxQT/src/qt/radiobox.cpp
- M /wxWidgets/branches/wxQT/src/qt/radiobut.cpp
- M /wxWidgets/branches/wxQT/src/qt/scrolbar.cpp
- M /wxWidgets/branches/wxQT/src/qt/slider.cpp
- M /wxWidgets/branches/wxQT/src/qt/spinbutt.cpp
- M /wxWidgets/branches/wxQT/src/qt/spinctrl.cpp
- M /wxWidgets/branches/wxQT/src/qt/statbmp.cpp
- M /wxWidgets/branches/wxQT/src/qt/statbox.cpp
- M /wxWidgets/branches/wxQT/src/qt/statusbar.cpp
- M /wxWidgets/branches/wxQT/src/qt/textctrl.cpp
- M /wxWidgets/branches/wxQT/src/qt/tglbtn.cpp
- M /wxWidgets/branches/wxQT/src/qt/toolbar.cpp
- M /wxWidgets/branches/wxQT/src/qt/window.cpp
2014-08-23 03:01 VZ, revision 77322Simplificate QWidget* assignment (new PostCreation method) Also reducing the redundant m_qtWindow code, this could help to unify application of background style and default colors (for painting, that was not being enforced and could cause issues). Window style code is commented in the original, maybe it belongs to wxFrame. PostCreation method name was taken from wxGTK, that has similar features.
2014-08-23 03:01 VZ, revision 77321improve clipboard to not include qt headers in it's headers
2014-08-23 03:01 VZ, revision 77320Improve flags emitted from wx-config for building external programs
2014-08-23 03:01 VZ, revision 77319improve top level window initialization
- M /wxWidgets/branches/wxQT/include/wx/qt/clipbrd.h
- M /wxWidgets/branches/wxQT/include/wx/qt/dataform.h
- M /wxWidgets/branches/wxQT/include/wx/qt/dataobj.h
- M /wxWidgets/branches/wxQT/src/qt/clipbrd.cpp
- M /wxWidgets/branches/wxQT/src/qt/dataobj.cpp
2014-08-23 03:01 VZ, revision 77318clipboard support
2014-08-23 03:01 VZ, revision 77317Fix crash caused when exiting. The lost focus event was triggered to the central widget. Since this widget does not map to a qt widget, there is no wxWindow derived destructor for it, so the handler must be set to NULL from the frame.
2014-08-23 03:01 VZ, revision 77316Implement selection event and get item in list ctrl
2014-08-23 03:01 VZ, revision 77315Add colour support for list ctrl items
2014-08-23 03:01 VZ, revision 77314Implement set item in list ctrl (and item count and insert item return value)
2014-08-23 03:01 VZ, revision 77313Implement basic item insertion in list ctrl
2014-08-23 03:00 VZ, revision 77312Implement column insertion basics in wxQT list ctrl
2014-08-23 03:00 VZ, revision 77311Use the correct widget QTreeWidget and helper for list control
2014-08-23 03:00 VZ, revision 77310Derive list control from wxListCtrlBase in wxQT This fixes missing methods compilation errors: EnableBellOnNoMatch, EnableAlternateRowColours, AppendColumn and OnGetItemAttr
2014-08-23 03:00 VZ, revision 77309Block Qt signals if widget is being deleted This avoid most of the problems caused by receiving a signal if the wxWindow is deleted (for example, notebook changing the default page, see previous commits). I've tried two other methods without success: * m_qtWindow::disconnect() should do the disconnection of all signals but returns false * QApplication::instance()->removePostedEvents(m_qtWindow); seems to have no effect (also, installEventFilter could be used)
- M /wxWidgets/branches/wxQT/src/qt/anybutton.cpp
- M /wxWidgets/branches/wxQT/src/qt/calctrl.cpp
- M /wxWidgets/branches/wxQT/src/qt/checkbox.cpp
- M /wxWidgets/branches/wxQT/src/qt/choice.cpp
- M /wxWidgets/branches/wxQT/src/qt/combobox.cpp
- M /wxWidgets/branches/wxQT/src/qt/listbox.cpp
- M /wxWidgets/branches/wxQT/src/qt/notebook.cpp
- M /wxWidgets/branches/wxQT/src/qt/radiobox.cpp
- M /wxWidgets/branches/wxQT/src/qt/scrolbar.cpp
- M /wxWidgets/branches/wxQT/src/qt/slider.cpp
- M /wxWidgets/branches/wxQT/src/qt/spinbutt.cpp
- M /wxWidgets/branches/wxQT/src/qt/spinctrl.cpp
- M /wxWidgets/branches/wxQT/src/qt/textctrl.cpp
- M /wxWidgets/branches/wxQT/src/qt/tglbtn.cpp
2014-08-23 03:00 VZ, revision 77308Avoid crash if a control is deleted and a signal is received For example, this could happen if the wxNotebook was deleted and there were pending singals (i.e., emmited due the removal of the current page). This should not happen, signals will be blocked in the destructor in following commits, but this is in place just in case to avoid segmentation fauls (debug message will be print by the wxQT helper)
- M /wxWidgets/branches/wxQT/include/wx/qt/private/winevent.h
- M /wxWidgets/branches/wxQT/src/qt/window.cpp
2014-08-23 03:00 VZ, revision 77307Add sanity checks for Qt event/signal handlers * Use the window pointer to detect if the class is dead or alive to avoid crashing caused by deleteLater() being processed in the event loop * Print debug messages if the handler (wxWindow) is NULL (deleted), just for safety and debugging as that code should not be reached if Qt signals are blocked or Qt events are filtered / removed (comming in future commits) * Set the window pointer immediatelly in wxQt helper template constructor to avoid problems if wxWindow base class was not fully initialized and a Qt event/signal is received GetHandler will return NULL if the wxWindow object was deleted, so it should be verified in the signal handlers in each derived class (events are automatically verified by the helper)
2014-08-23 03:00 VZ, revision 77306Fix uninitialized value causing 'Painter not active', thanks @seandepagnier
2014-08-23 03:00 VZ, revision 77305Fix missing __WXQT__ guard in include, thanks @seandepagnier
2014-08-23 03:00 VZ, revision 77304Postpone the shortcut handler destruction to avoid seg. faults
- M /wxWidgets/branches/wxQT/include/wx/qt/window.h
- M /wxWidgets/branches/wxQT/src/qt/anybutton.cpp
- M /wxWidgets/branches/wxQT/src/qt/calctrl.cpp
- M /wxWidgets/branches/wxQT/src/qt/checkbox.cpp
- M /wxWidgets/branches/wxQT/src/qt/choice.cpp
- M /wxWidgets/branches/wxQT/src/qt/combobox.cpp
- M /wxWidgets/branches/wxQT/src/qt/dialog.cpp
- M /wxWidgets/branches/wxQT/src/qt/frame.cpp
- M /wxWidgets/branches/wxQT/src/qt/gauge.cpp
- M /wxWidgets/branches/wxQT/src/qt/listbox.cpp
- M /wxWidgets/branches/wxQT/src/qt/msgdlg.cpp
- M /wxWidgets/branches/wxQT/src/qt/notebook.cpp
- M /wxWidgets/branches/wxQT/src/qt/radiobox.cpp
- M /wxWidgets/branches/wxQT/src/qt/radiobut.cpp
- M /wxWidgets/branches/wxQT/src/qt/scrolbar.cpp
- M /wxWidgets/branches/wxQT/src/qt/slider.cpp
- M /wxWidgets/branches/wxQT/src/qt/spinbutt.cpp
- M /wxWidgets/branches/wxQT/src/qt/spinctrl.cpp
- M /wxWidgets/branches/wxQT/src/qt/statbmp.cpp
- M /wxWidgets/branches/wxQT/src/qt/statbox.cpp
- M /wxWidgets/branches/wxQT/src/qt/statusbar.cpp
- M /wxWidgets/branches/wxQT/src/qt/textctrl.cpp
- M /wxWidgets/branches/wxQT/src/qt/tglbtn.cpp
- M /wxWidgets/branches/wxQT/src/qt/window.cpp
2014-08-23 03:00 VZ, revision 77303Removed GetHandle (virtual) call from wxWindow dtor in wxQT
2014-08-23 03:00 VZ, revision 77302Implemented wxBitmap::GetRawData in wxQT (similar to wxGTK)
2014-08-23 03:00 VZ, revision 77301Fix cairo image buffer paint DC in wxQT * do not destroy the image as it holds the pixel data buffer * hence, do not create a new image as it isn't necessary This solution is similar to cairo qt surface internals, that stores image and image_equiv -the cairo image surface-.
2014-08-23 03:00 VZ, revision 77300Fix wxQtDCImpl::GetHandle() to return QPainter This is needed by the grahpic context
2014-08-23 03:00 VZ, revision 77299Fix font face name getter (using actual info from Qt) It was returning an empty string (if no facename was given at the font ctor), and that caused a segmentation fault in cairo_show_text
2014-08-23 03:00 VZ, revision 77298Fix font weight and underline setters
2014-08-23 03:00 VZ, revision 77297Implement missing font family, weight & style getters
2014-08-23 03:00 VZ, revision 77296Implement missing font info constructor in wxQT (This is also needed by the drawing sample)
2014-08-23 02:59 VZ, revision 77295Added basic Cairo paint DC for wxQT (tentative) This is a very minimal approach (drawing to a cairo image surface and not a qt surface), but will help to avoid crashing (for example, in drawing sample, even if qt surface is not available).
- M /wxWidgets/branches/wxQT/build/bakefiles/files.bkl
- M /wxWidgets/branches/wxQT/configure
- M /wxWidgets/branches/wxQT/configure.in
- M /wxWidgets/branches/wxQT/Makefile.in
- M /wxWidgets/branches/wxQT/src/generic/graphicc.cpp
- D /wxWidgets/branches/wxQT/src/qt/graphics.cpp
2014-08-23 02:59 VZ, revision 77294Removed dummy Graphic Context in wxQT If available, use Cairo like in wxGTK and other ports, but cairo qt surface not implemented yet.
- M /wxWidgets/branches/wxQT/include/wx/qt/msgdlg.h
- M /wxWidgets/branches/wxQT/src/qt/frame.cpp
- M /wxWidgets/branches/wxQT/src/qt/msgdlg.cpp
2014-08-23 02:59 VZ, revision 77293Fix SIGSEGV on children destruction (frame and msgdlg)
2014-08-23 02:36 VZ, revision 77292Remove Qt's libraries dependency from wxBase
2014-08-23 02:36 VZ, revision 77291implement wxToolBar from QToolBar
2014-08-23 02:36 VZ, revision 77290fix memory leak/crash in wxFrame
2014-08-23 02:33 VZ, revision 77289fix memory leak (which also fixes crashes from events that were triggered after the message box is destroyed)
2014-08-23 02:33 VZ, revision 77288Fix DC device clipping region in wxQT Qt only uses logical coordinates for clipping methods, so this workaround removes temporarily the transformation (translation / scale) to match the physical device coordinates.
2014-08-23 02:33 VZ, revision 77287Instantiate correct DC class in Qt paint handler Uses wxPaintDC instead of wxWindowDC directly, as now it prepares the Qt painter
2014-08-23 02:33 VZ, revision 77286Fix cell editor positioning Qt seems to place slightly bigger control that will be drawn outside cell area, so then the remaining space will be not fully repainted when the editor is hidden.
2014-08-23 02:33 VZ, revision 77285Added some __WXQT__ guards in grid The size of the cell should not substract the grid line to be drawn correctly. Also, the highlight rect should not be reduced to cover all the cell like in wxGTK (if not, it left white pixel line surrounding it). The other guards (set background and layout direction) are for consistency with wxGTK. There are still some painting issues related to the clipping regions and cell editor positioning.
- M /wxWidgets/branches/wxQT/include/wx/qt/dc.h
- M /wxWidgets/branches/wxQT/src/qt/dc.cpp
- M /wxWidgets/branches/wxQT/src/qt/dcclient.cpp
2014-08-23 02:33 VZ, revision 77284Prepare the Qt painter for wxDC Note that the function QtPreparePainter was already there but unused.
2014-08-23 02:33 VZ, revision 77283Fix adding child window in scroll containers in wxQT This also fixes scrolling of children that weren't moved before (for example, see the erase sample). The solution is the same as in the wxFrame case (viewport instead of centralWidget).
2014-08-23 02:33 VZ, revision 77282Implement missing static bitmap get methods This fix a sising issue too (as GetBitmap() is used in GetBestSize), see controls and erase samples.
2014-08-23 02:33 VZ, revision 77281Fix incorrect wording in erase sample
2014-08-23 02:33 VZ, revision 77280Fix background style regression (again) Qt should not clear the background in advance even in wxBG_STYLE_ERASE
2014-08-23 02:33 VZ, revision 77279Use wxGTK default row height in wxQT
- M /wxWidgets/branches/wxQT/include/wx/qt/region.h
- M /wxWidgets/branches/wxQT/src/qt/region.cpp
- M /wxWidgets/branches/wxQT/src/qt/window.cpp
2014-08-23 02:33 VZ, revision 77278Use the Qt paint event region instead bounding rect
2014-08-23 02:33 VZ, revision 77277Removed now duplicate set background style
2014-08-23 02:33 VZ, revision 77276Fix draw bitmap to honour transparent background
2014-08-23 02:33 VZ, revision 77275Fix transparency style sheet setting in wxQT
2014-08-23 02:33 VZ, revision 77274Only set transparency in inner scroll area viewport
2014-08-23 02:33 VZ, revision 77273Fix SIGSEGV setting background style after creation in wxQT
2014-08-23 02:33 VZ, revision 77272Don't draw and reset wxClientDC if empty in wxQT This fixes an issue when wxClientDC is used just for metrics calculations (for example, in wxTreeCtrl::Expand), so there is nothing to draw but if the QPicture is not reset, wxWindow::QtHandlePaintEvent get confused and don't use a wxPaintDC for an event generated by Refresh (thinking wxClientDC is valid and asking a repaint, but it will not replay anything).
2014-08-23 02:33 VZ, revision 77271Add a debug message if qt painter is aborted
2014-08-23 02:33 VZ, revision 77270Fix erasing background regression in wxQT Default paint handler has to clear the background is style is Qt::WA_OpaquePaintEvent (needed for wxBG_STYLE_ERASE so wxClientDC works outside the paint event). The background will remain black (unpainted) or inconsistent if not cleared in this case.
2014-08-23 02:33 VZ, revision 77269Add some paint debugging messages (in wxGrid)
2014-08-23 02:33 VZ, revision 77268Use wxLogDebug for paint debugging messages Removed wxLogTrace and guards.
2014-08-23 02:32 VZ, revision 77267Only disable auto-erasing for generic panels
2014-08-23 02:32 VZ, revision 77266Add basic logging facilities to debug wxQT paint issues
2014-08-23 02:32 VZ, revision 77265Prevent Qt to auto-erase the background on paint events This is need by wxClientDC to be able to draw outside the paint event. Now this is set by default now for all the widgets but can be changed by SetBackgroundStyle (so it will need to be revised that background erasing is working properly).
2014-08-23 02:32 VZ, revision 77264Divide wxClientDC & wxPaintDC logic in paint event handler wxClientDC should not erase the background nor generate a wxPaintEvent, it only replay the QPicture painted outside the event handler. This way was originally designed but it was not working in prior versions due lacking update region & background support.
2014-08-23 02:32 VZ, revision 77263Don't initialize the Qt Picture size This avoids setting an excesive update region that was clearing the whole widget in the paint event handler. Now, wxClientDC will only paint the effective drawn rect.
2014-08-23 02:32 VZ, revision 77262Repaint only the rect affected and handle scroll area
2014-08-23 02:32 VZ, revision 77261Make QtGetScrollBarsContainer public for wxClientDC
2014-08-23 02:32 VZ, revision 77260Remove compilation warnings in wxWindow (wxQT)
2014-08-23 02:32 VZ, revision 77259Create Qt widget painter just once in ctor outside paint event
2014-08-23 02:32 VZ, revision 77258Fix update / refresh in wxQT scroll bar containers Note that Qt don't propagate the paint event if sent to the entire area (only the viewport "virtual space" can draw anyway).
- M /wxWidgets/branches/wxQT/include/wx/qt/listbox.h
- M /wxWidgets/branches/wxQT/include/wx/qt/textctrl.h
- M /wxWidgets/branches/wxQT/src/qt/listbox.cpp
- M /wxWidgets/branches/wxQT/src/qt/textctrl.cpp
2014-08-23 02:32 VZ, revision 77257Remove last wxQT paint warnings Implemented get scroll bar container method to missing controls (that also derive from QScrollArea) as in them the painter should be created only in the viewport (logic already coded in wxWindow paint event and for wxPanel), else the following warning is emmited: {{{ QWidget::paintEngine: Should no longer be called QPainter::begin: Paint device returned engine == 0, type: 1 }}}
2014-08-23 02:32 VZ, revision 77256Add missing popup method in wxQT combo box
2014-08-23 02:32 VZ, revision 77255Always use native double buffer on wxQT (Qt's painter is double buffered)
2014-08-23 02:32 VZ, revision 77254Send Id in wxQT paint event
2014-08-23 02:32 VZ, revision 77253Fix erase event (cleared DC) in wxQT
2014-08-23 02:32 VZ, revision 77252Implement leading font metric in wxQT
2014-08-23 02:32 VZ, revision 77251Guard missing wxUSE_ACCEL in wxWindow wxQT
2014-08-23 02:32 VZ, revision 77250Fix default system font on wxQT
2014-08-23 02:32 VZ, revision 77249Fix region iteration in wxQT This was preventing iterating in any region (as most has only one rect), hence the grid painting was not working propertly.
2014-08-23 02:32 VZ, revision 77248Don't force a repaint if nothing to replay (wxClientDC wxQT)
2014-08-23 02:32 VZ, revision 77247Avoid painting recursion for wxClientDC in wxQT Firing a repaint inside a paint ever could be recursive, update() should be used in that case but it is not immediate. Also, note that now the wxClientDC would work even if it is used inside the paint event, and could be used to simplificate the logic.
2014-08-23 02:31 VZ, revision 77246Fix paint of wxClientDC in wxQT Moved the painter replay inside the paint event, so the erase and paint wx event are processed (wxPaintDC) before actions drawn outside the event handler (wxClientDC). After this, background was not prepared correctly and the drawing could become inconsistent (specially if the wxClientDC was just used for measures, ie: no drawings)
2014-08-23 02:31 VZ, revision 77245Handle central widget paint events in wxQT Add wxQtCentralWidget helper and fix minor logic in paint event to detect the scrollable area
2014-08-23 02:31 VZ, revision 77244Fix invalid destruction of painter in wxQT The DC is not really associated to the window, so the m_qtPainter is owned by this class and should be deleted in base dtor
- M /wxWidgets/branches/wxQT/include/wx/qt/dc.h
- M /wxWidgets/branches/wxQT/include/wx/qt/dcclient.h
- M /wxWidgets/branches/wxQT/include/wx/qt/window.h
- M /wxWidgets/branches/wxQT/src/qt/dc.cpp
- M /wxWidgets/branches/wxQT/src/qt/dcclient.cpp
- M /wxWidgets/branches/wxQT/src/qt/dcmemory.cpp
- M /wxWidgets/branches/wxQT/src/qt/window.cpp
2014-08-23 02:31 VZ, revision 77243Paint directly wxWindowDC without buffer in wxQT This solution avoid flicker and is more optimal as the intermediate buffer is not need: * use QPainter* instead of QImage* in wxWindow paint event (no more m_qtPaintBuffer) * change m_qtPainter to pointer in wxQtDCImpl (created on subclasses) * rename QtPreparePainter internal method (not used right now) * initial erase left to Qt (auto fill background) Still more tweaks are needed to avoid problems on begin() and test background erasing
2014-08-23 02:31 VZ, revision 77242Implement style background & transparency in wxQT
2014-08-23 02:31 VZ, revision 77241Fix wxQT painting to honor background style Note that although this works better, the internal m_qtPaintBuffer still causes some issues and is inefficient (not needed as Qt already do a double buffering for widget painting) Also, QWidget::setBackgroundRole et.al. should be enforced too (and tested), to properly handle transparent and system backgrounds
Add wxNORMAL_FONT in native system setting