wspool.h 2.11 KB
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
/******************************************************************************
 * winspool internal include file
 *
 *
 * Copyright 2005  Huw Davies
 *
 * This library is free software; you can redistribute it and/or
 * modify it under the terms of the GNU Lesser General Public
 * License as published by the Free Software Foundation; either
 * version 2.1 of the License, or (at your option) any later version.
 *
 * This library 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.  See the GNU
 * Lesser General Public License for more details.
 *
 * You should have received a copy of the GNU Lesser General Public
 * License along with this library; if not, write to the Free Software
19
 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
20 21
 */

22 23
#include <windef.h>
#include <winuser.h>
24
#include <winternl.h>
25

26
extern HINSTANCE WINSPOOL_hInstance DECLSPEC_HIDDEN;
27

28 29
extern PRINTPROVIDOR * backend DECLSPEC_HIDDEN;
extern BOOL load_backend(void) DECLSPEC_HIDDEN;
30

31
extern void WINSPOOL_LoadSystemPrinters(void) DECLSPEC_HIDDEN;
32 33 34 35 36 37 38

#define IDS_CAPTION       10
#define IDS_FILE_EXISTS   11
#define IDS_CANNOT_OPEN   12

#define FILENAME_DIALOG  100
#define EDITBOX 201
39

40 41 42 43 44 45 46 47 48 49 50
struct printer_info
{
    WCHAR *name;
    WCHAR *comment;
    WCHAR *location;
    BOOL is_default;
};

struct enum_printers_params
{
    struct printer_info *printers;
51 52
    unsigned int *size;
    unsigned int *num;
53 54
};

55 56 57
struct get_default_page_size_params
{
    WCHAR *name;
58
    unsigned int *name_size;
59 60
};

61 62 63 64 65 66
struct get_ppd_params
{
    const WCHAR *printer; /* set to NULL to unlink */
    const WCHAR *ppd;
};

67 68 69 70 71 72 73 74
struct schedule_job_params
{
    const WCHAR *filename;
    const WCHAR *port;
    const WCHAR *document_title;
    const WCHAR *wine_port;
};

75
extern unixlib_handle_t winspool_handle DECLSPEC_HIDDEN;
76

77 78 79 80 81 82 83 84 85 86
#define UNIX_CALL( func, params ) __wine_unix_call( winspool_handle, unix_ ## func, params )

enum cups_funcs
{
    unix_process_attach,
    unix_enum_printers,
    unix_get_default_page_size,
    unix_get_ppd,
    unix_schedule_job,
};