The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.
#ifndef DISABLE_FILEBROWSER

MODULE = FLTK               PACKAGE = FLTK::FileBrowser

=pod

=for license Artistic License 2.0 | Copyright (C) 2009 by Sanko Robinson

=for author Sanko Robinson <sanko@cpan.org> - http://sankorobinson.com/

=for version 0.530

=for git $Id: FileBrowser.xsi ad157f8 2009-09-24 21:13:29Z sanko@cpan.org $

=head1 NAME

FLTK::FileBrowser - Subclass of FLTK::Browser

=head1 Description



=begin apidoc

=cut

#define dirent direct

#include <fltk/FileBrowser.h>

=for apidoc d||FLTK::FileBrowser fb|new|int x|int y|int w|int h|char * label = ''|

Creates a new C<FLTK::FileBrowser> object.

=cut

#include "include/WidgetSubclass.h"

void
fltk::FileBrowser::new( int x, int y, int w, int h, char * label = 0 )
    PPCODE:
        void * RETVAL = NULL;
        RETVAL = (void *) new WidgetSubclass<fltk::FileBrowser>(CLASS,x,y,w,h,label);
        if (RETVAL != NULL) {
            ST(0) = sv_newmortal();
            sv_setref_pv(ST(0), CLASS, RETVAL); /* -- hand rolled -- */
            XSRETURN(1);
        }

=for apidoc d||float size|icon_size||



=for apidoc d|||icon_size|float size|



=cut

double
fltk::FileBrowser::icon_size( float size = NO_INIT )
    CASE: items == 1
        C_ARGS:
    CASE:
        CODE:
            THIS->icon_size( size );

=for apidoc d||chat * pattern|filter||



=for apidoc d|||filter|char * pattern|



=cut

const char *
fltk::FileBrowser::filter( char * pattern = NO_INIT )
    CASE: items == 1
        C_ARGS:
    CASE:
        CODE:
            THIS->filter( pattern );

=for apidoc d||float size|textsize||



=for apidoc d|||textsize|float size|



=cut

double
fltk::FileBrowser::textsize( float size = NO_INIT )
    CASE: items == 1
        C_ARGS:
    CASE:
        CODE:
            THIS->textsize( size );

=for apidoc d||int type|filetype||



=for apidoc d|||filetype|int type|



=cut

double
fltk::FileBrowser::filetype( int type = NO_INIT )
    CASE: items == 1
        C_ARGS:
    CASE:
        CODE:
            THIS->filetype( type );

=for apidoc d||char * dir|directory||


=cut

const char *
fltk::FileBrowser::directory( )

=for apidoc d|||insert|int n|char * label|FLTK::FileIcon * icon|



=for apidoc d|||insert|int n|char * label|void * data|



=cut

void
fltk::FileBrowser::insert( int n, char * label, data )
    CASE: sv_isobject(ST(3)) && sv_derived_from(ST(3), "FLTK::FileIcon")
        fltk::FileIcon * data
    CASE:
        void           * data

=for apidoc d|||add|char * line|FLTK::Icon * icon|



=cut

void
fltk::FileBrowser::add( char * line, fltk::FileIcon * icon )

=for apidoc d|||show_hidden|bool show|

Set this flag if you want to see the hidden files in the browser.

=for apidoc d||bool show|show_hidden||



=cut

bool
fltk::FileBrowser::show_hidden( bool show = NO_INIT )
    CASE: items == 1
        C_ARGS:
    CASE:
        CODE:
            THIS->show_hidden( show );

BOOT:
    isa("FLTK::FileBrowser", "FLTK::Browser");

#endif // ifndef DISABLE_FILEBROWSER