File: Fl_File_Browser.i

package info (click to toggle)
pyfltk 1.3.8%2Brepack-3
  • links: PTS, VCS
  • area: main
  • in suites: bookworm
  • size: 1,868 kB
  • sloc: python: 7,494; cpp: 351; perl: 55; makefile: 24
file content (70 lines) | stat: -rwxr-xr-x 1,383 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
/* File : Fl_File_Browser.i */
//%module Fl_File_Browser

%feature("docstring") ::Fl_File_Browser
"""
The Fl_File_Browser widget displays a list of filenames, optionally with 
file-specific icons.
""" ;

%{
#ifdef ANY
#undef ANY
#endif

#include "FL/Fl_File_Browser.H"

enum DIR_SEARCH {
    FL_ALPHASORT,
    FL_CASEALPHASORT,
    FL_CASENUMERICSORT,
    FL_NUMERICSORT
  };
%}

%include "macros.i"

CHANGE_OWNERSHIP(Fl_File_Browser)

%ignore Fl_File_Browser::load(const char* directory, Fl_File_Sort_F* sort);

%include "FL/Fl_File_Browser.H"

//%inline %{
  enum DIR_SEARCH {
    FL_ALPHASORT,
    FL_CASEALPHASORT,
    FL_CASENUMERICSORT,
    FL_NUMERICSORT
  };
//  %}

%extend Fl_File_Browser {
  %rename(load) load_new;

  int load_new(PyObject* dObj, PyObject* sObj) {
    //char *directory=PyString_AsString(dObj);
    char *directory=SWIG_Python_str_AsChar(dObj);
    int sort=PyInt_AsLong(sObj);
    int result = -1;

    switch (sort) {
    case FL_ALPHASORT:
      result = self->load(directory, fl_alphasort);
      break;
    case FL_CASEALPHASORT:
      result = self->load(directory, fl_casealphasort);
      break;
    case FL_CASENUMERICSORT:
      result = self->load(directory, fl_casenumericsort);
      break;
    case FL_NUMERICSORT:
      result = self->load(directory, fl_numericsort);
      break;
    default:
      break;
    }

    return result;
  }
}