Update of /cvsroot/perl-win32-gui/Win32-GUI-Grid
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv15861
Added Files:
Changes Grid.pm Grid.xs MANIFEST Makefile.PL README TYPEMAP
Log Message:
Added to repository
--- NEW FILE: Makefile.PL ---
use ExtUtils::MakeMaker;
# See lib/ExtUtils/MakeMaker.pm for details of how to influence
# the contents of the Makefile that is written.
WriteMakefile(
'NAME' => 'Win32::GUI::Grid',
'VERSION_FROM' => 'Grid.pm',
'XS' => { 'Grid.xs' => 'Grid.cpp' },
'LIBS' => ['Comctl32.lib Mfc42.lib Eafxis.lib'], # e.g., '-lm'
'DEFINE' => '', # e.g., '-DHAVE_SOMETHING'
'INC' => '', # e.g., '-I/usr/include/other'
'MYEXTLIB' => './MFCGrid/Lib/MFCGrid.lib',
($] ge '5.005')
? (
'AUTHOR' => 'ROCHER Laurent ([EMAIL PROTECTED])',
'ABSTRACT' => 'Add a Grid control to Win32::GUI (MFC Grid from
CodeProject.com)',
)
: (),
);
sub MY::xs_c {
'
.xs.c:
$(PERL) -I$(PERL_ARCHLIB) -I$(PERL_LIB) $(XSUBPP) $(XSPROTOARG)
$(XSUBPPARGS) $*.xs > $*.c
.xs.cpp:
$(PERL) -I$(PERL_ARCHLIB) -I$(PERL_LIB) $(XSUBPP) $(XSPROTOARG)
$(XSUBPPARGS) $*.xs > $*.cpp
./MFCGrid/Lib/MFCGrid.lib: MFCGrid/makefile
cd MFCGrid
nmake
cd ..
';
}
--- NEW FILE: MANIFEST ---
Makefile.PL
Changes
Grid.pm
Grid.xs
MANIFEST
TYPEMAP
MFCGrid/Makefile
--- NEW FILE: Grid.xs ---
/**********************************************************************/
/* G R I D . x s */
/**********************************************************************/
//////////////////////////////////////////////////////////////////////
// Include
//////////////////////////////////////////////////////////////////////
//
// MFC
//
#define _AFX_NOFORCE_LIBS // not force library
#define _WINDLL // Windows DLL
#define _USRDLL //
#define _AFXDLL // Use shared MFC
#define VC_EXTRALEAN // Exclude rarely-used stuff from Windows headers
#include <afxwin.h> // MFC core and standard components
[...3241 lines suppressed...]
object->m_SvSub = NULL;
object->SetCompareFunction(NULL);
}
else if (nCol < object->GetColumnCount()) {
pFun = (SV*) object->m_RowSortFunc.GetAt (nCol);
if (pFun != NULL) {
SvREFCNT_dec (pFun);
object->m_RowSortFunc.SetAtGrow(nCol, NULL);
}
}
}
# // in-built sort functions
# static int CALLBACK pfnCellTextCompare(LPARAM lParam1, LPARAM lParam2,
LPARAM lParamSort);
# static int CALLBACK pfnCellNumericCompare(LPARAM lParam1, LPARAM lParam2,
LPARAM lParamSort);
#
#
##################################################################
--- NEW FILE: Grid.pm ---
package Win32::GUI::Grid;
use strict;
use vars qw($VERSION @ISA @EXPORT @EXPORT_OK $AUTOLOAD);
use Carp 'croak','carp';
use Win32::GUI;
require Exporter;
require DynaLoader;
require AutoLoader;
@ISA = qw(Exporter DynaLoader Win32::GUI::Window);
# Items to export into callers namespace by default. Note: do not export
# names by default without a very good reason. Use EXPORT_OK instead.
# Do not simply export all your public functions/methods/constants.
@EXPORT = qw (
GVL_NONE
GVL_HORZ
[...1199 lines suppressed...]
=item C<_GetData> (nRow, nCol)
[virtual Mode Only]
Must return data cell.
=item C<_CacheHint> (nMinRow, nMinCol, nMaxRow, nMaxCol)
[virtual Mode Only]
Range before request data.
=head1 AUTHOR
Laurent Rocher ([EMAIL PROTECTED])
HomePage : http://perso.club-internet.fr/rocherl/Win32GUI.html
=head1 SEE ALSO
Win32::GUI
=cut
--- NEW FILE: README ---
Win32::GUI::Grid version 0.07
=============================
Win32::GUI::Grid add a grid control to Win32::GUI.
This module use MFC Grid control By Chris Maunder.
Url : http://www.codeproject.com/miscctrl/gridctrl.asp
(Modified sources code include)
INSTALLATION
To install this module type the following:
perl Makefile.PL
make
make install
DEPENDENCIES
This module requires these other modules and libraries:
Win32::GUI
Microsoft Foudation Classes (MFC)
WEB PAGE AND PPM REPOSITORY
See: http://perso.club-internet.fr/rocherl/Win32GUI.html
COPYRIGHT AND LICENCE
Copyright 2003 by Laurent Rocher ([EMAIL PROTECTED]).
This program is free software; you can redistribute it and/or modify it
under the same terms as Perl itself.
See <http://www.perl.com/perl/misc/Artistic.html>.
--- NEW FILE: Changes ---
Revision history for Perl extension Win32::GUI::Grid.
0.07 14/02/2004
- Use MFC Grid control 2.25
- Correct EnsureCellVisible methods ( bad name in XS, but keep
EnsureVisible for compatibility)
- Fix locale setting problem.
0.06 14/02/2004
- Fix Clipboard error (Ctrl+C) [Thank to Andrew St. Denis]
- Fix some Grid draw problem
- Add WM_PRINTCLIENT support for new Win32::GUI -noflicker option.
- New Cell Type (Calendar, URL)
- SetCellOptions : New options
0.05 07/09/2003
- Add SetCellEditable method.
- Add List cell editing.
- New event _ChangedEdit for COMBO and LIST edit control when select
change in list.
0.04 07/08/2003
- Correct -heigth option.
- In InsertColumn, set last parameter optional.
- Add Column Perl Sort method.
0.03 03/06/2003
- Correct Abnormal terminaison when multiple grid instance
0.02 03/06/2003
- Correct crash when destroy grid during cell edit.
- Virtual Mode support.
- New cell editing support.
+ Numeric
+ Date
+ Time
+ Check
+ Combo
- Add Perl Sort method.
0.01 28/05/2003
- First build Win32::GUI::Grid
- Use MFC Grid control 2.24
TODO
- Printing support (???)
--- NEW FILE: TYPEMAP ---
TYPEMAP
LPCTSTR T_PV
LPCSTR T_PV
LPTSTR T_PV
DWORD T_IV
UINT T_IV
BOOL T_IV
HBITMAP T_HANDLE
HDC T_HANDLE
HFONT T_HANDLE
HIMAGELIST T_HANDLE
HWND T_HANDLE
CMFCWnd* T_MFCWND
COLORREF T_COLOR
################################################################################
INPUT
T_HANDLE
if(SvROK($arg)) {
if(hv_fetch((HV*)SvRV($arg), \"-handle\", 7, 0) != NULL)
$var = ($type) SvIV(*(hv_fetch((HV*)SvRV($arg), \"-handle\", 7,
0)));
else
$var = NULL;
} else
$var = ($type) SvIV($arg);
T_MFCWND
$var = ($type) SvIV(*(hv_fetch((HV*)SvRV($arg), \"-CMFCWnd\", 8, 0)));
T_COLOR
$var = SvCOLORREF(aTHX_ $arg);
################################################################################
OUTPUT
T_HANDLE
sv_setiv($arg, (IV) $var);
T_COLOR
sv_setiv($arg, (IV) $var);