From e1b5b16184f3f0a9bb69e4982f94af21eb5fb94d Mon Sep 17 00:00:00 2001 From: vincents Date: Tue, 3 Apr 2007 19:53:45 +0000 Subject: [PATCH] gtk interface: fixed calling TListView.OnColumnClick, removed duplicate code (bug #8298) from Flavio Etrusco git-svn-id: trunk@10858 - --- .gitattributes | 1 - lcl/graphtype.pp | 4 ++ lcl/interfaces/gtk/gtkcallback.inc | 1 - lcl/interfaces/gtk/gtklistviewcallback.inc | 62 ---------------------- lcl/interfaces/gtk/gtkobject.inc | 24 --------- lcl/interfaces/gtk/gtkproc.pp | 7 --- lcl/maps.pp | 2 +- 7 files changed, 5 insertions(+), 96 deletions(-) delete mode 100644 lcl/interfaces/gtk/gtklistviewcallback.inc diff --git a/.gitattributes b/.gitattributes index ec8f81d020..5055b95adc 100644 --- a/.gitattributes +++ b/.gitattributes @@ -2506,7 +2506,6 @@ lcl/interfaces/gtk/gtklclintf.inc svneol=native#text/pascal lcl/interfaces/gtk/gtklclintfh.inc svneol=native#text/pascal lcl/interfaces/gtk/gtklistsl.inc svneol=native#text/pascal lcl/interfaces/gtk/gtklistslh.inc svneol=native#text/pascal -lcl/interfaces/gtk/gtklistviewcallback.inc svneol=native#text/pascal lcl/interfaces/gtk/gtkmsgqueue.pp svneol=native#text/pascal lcl/interfaces/gtk/gtkobject.inc svneol=native#text/pascal lcl/interfaces/gtk/gtkpagecallback.inc svneol=native#text/pascal diff --git a/lcl/graphtype.pp b/lcl/graphtype.pp index c8166f6970..6416fed9bc 100644 --- a/lcl/graphtype.pp +++ b/lcl/graphtype.pp @@ -292,8 +292,12 @@ begin else UnusedByteMask:=(1 shl UnusedBitsAtEnd) - 1; p:=RawImage^.Mask; + DebugLn(['RawImageMaskIsEmpty A Height', Height]); + DebugLn(['RawImageMaskIsEmpty B UsedBytesPerLine', UsedBytesPerLine]); for y:=0 to Height-1 do begin // check fully used bytes in line + if UsedBytesPerLine = 0 then + debugln('UsedBytesPerLine is 0'); for x:=0 to UsedBytesPerLine-1 do begin if p^<>$ff then begin // not all bits set -> transparent pixels found -> Mask needed diff --git a/lcl/interfaces/gtk/gtkcallback.inc b/lcl/interfaces/gtk/gtkcallback.inc index 331766d809..4f65a7a02b 100644 --- a/lcl/interfaces/gtk/gtkcallback.inc +++ b/lcl/interfaces/gtk/gtkcallback.inc @@ -3272,7 +3272,6 @@ begin end; {$I gtkDragCallback.inc} -{$I gtkListViewCallback.inc} {$I gtkComboBoxCallback.inc} {$I gtkPageCallback.inc} diff --git a/lcl/interfaces/gtk/gtklistviewcallback.inc b/lcl/interfaces/gtk/gtklistviewcallback.inc deleted file mode 100644 index d355486571..0000000000 --- a/lcl/interfaces/gtk/gtklistviewcallback.inc +++ /dev/null @@ -1,62 +0,0 @@ -{%MainUnit gtkcallback.inc} - -{ - ***************************************************************************** - * * - * This file is part of the Lazarus Component Library (LCL) * - * * - * See the file COPYING.modifiedLGPL, included in this distribution, * - * for details about the copyright. * - * * - * This program is distributed in the hope that it will be useful, * - * but WITHOUT ANY WARRANTY; without even the implied warranty of * - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. * - * * - ***************************************************************************** -} -//---------------------- - -//---------------------- -//HDN_ENDTRACK -//HDN_TRACK -function gtkLVAbortColumnResize(AList: PGTKCList; AData: gPointer): GBoolean; cdecl; -begin - //TODO: implement - if (AList=nil) or (AData=nil) then ; - Result := False; -end; - -//---------------------- -//HDN_ENDTRACK -//HDN_TRACK -//HDN_ITEMCHANGED -//HDN_ITEMCHANGING -function gtkLVResizeColumn(AList: PGTKCList; AColumn, AWidth: Integer; - AData: gPointer): GBoolean; cdecl; -begin - //TODO: implement - if (AList=nil) or (AData=nil) or (AColumn=0) or (AWidth=0) then ; - Result := False; -end; - -//---------------------- -//HDN_ITEMCLICK -//LVN_COLUMNCLICK -function gtkLVClickColumn(AList: PGTKCList; AColumn: Integer; AData: gPointer): GBoolean; cdecl; -var - msg: TLMNotify; - NM: TNMListView; -begin - EventTrace('click-column', Adata); - msg.Msg := CN_NOTIFY; - - FillChar(NM, SizeOf(NM), 0); - NM.hdr.hwndfrom := PtrInt(AList); - NM.hdr.code := LVN_COLUMNCLICK; - NM.iItem := -1; - NM.iSubItem := AColumn; - msg.NMHdr := @NM.hdr; - Result := DeliverMessage(AData, msg) = 0; -end; - -// included by gtkcallback.inc diff --git a/lcl/interfaces/gtk/gtkobject.inc b/lcl/interfaces/gtk/gtkobject.inc index 80df2b3eab..86334cca6a 100644 --- a/lcl/interfaces/gtk/gtkobject.inc +++ b/lcl/interfaces/gtk/gtkobject.inc @@ -4052,30 +4052,6 @@ begin end; // Listview & Header control - - //HDN_BEGINTRACK - //HDN_DIVIDERDBLCLICK - - HDN_ENDTRACK, - HDN_TRACK: - begin - ConnectSenderSignal(gObject, 'resize-column', @gtkLVResizeColumn); - ConnectSenderSignal(gObject, 'abort-column-resize', - @gtkLVAbortColumnResize); - end; - - HDN_ITEMCHANGED, - HDN_ITEMCHANGING: - begin - ConnectSenderSignal(gObject, 'resize-column', @gtkLVResizeColumn); - end; - -// HDN_ITEMDBLCLICK - HDN_ITEMCLICK: - begin - ConnectSenderSignal(gCore, 'click-column', @gtkLVClickColumn); - end; - LM_COMMAND: begin if ALCLObject is TCustomComboBox then begin diff --git a/lcl/interfaces/gtk/gtkproc.pp b/lcl/interfaces/gtk/gtkproc.pp index 494e859a23..7319e30d03 100644 --- a/lcl/interfaces/gtk/gtkproc.pp +++ b/lcl/interfaces/gtk/gtkproc.pp @@ -250,13 +250,6 @@ Function Edit_source_drag_data_delete (widget: pGtkWidget; context: pGdkDragContext; data: gpointer): gBoolean ; cdecl; -// gtklistviewcallbacks.inc headers -function gtkLVAbortColumnResize(AList: PGTKCList; AData: gPointer): GBoolean; cdecl; -function gtkLVResizeColumn(AList: PGTKCList; AColumn, AWidth: Integer; - AData: gPointer): GBoolean; cdecl; -function gtkLVClickColumn(AList: PGTKCList; AColumn: Integer; - AData: gPointer): GBoolean; cdecl; - // gtkcomboboxcallbacks.inc headers function gtkComboBoxShowAfter(widget: PGtkWidget; data: gPointer): GBoolean; cdecl; function gtkComboBoxHideAfter(widget: PGtkWidget; data: gPointer): GBoolean; cdecl; diff --git a/lcl/maps.pp b/lcl/maps.pp index f0429dc3d8..f7023b2f1f 100644 --- a/lcl/maps.pp +++ b/lcl/maps.pp @@ -19,7 +19,7 @@ The Map maps an unique ID to arbitrary data. The ID->Data is stored in a Average Level binary Tree for fast indexing. The map maintans also a linked list beween the ordered items for fast - iterating throug all elements. + iterating through all elements. The ID can be signed or unsigned, with a size of 1,2,4,8,16 or 32 bytes The data can be of any (constant) size. }