File: print.h

package info (click to toggle)
jugglemaster 0.4-6
  • links: PTS, VCS
  • area: main
  • in suites: wheezy
  • size: 1,420 kB
  • sloc: cpp: 7,260; ansic: 159; makefile: 146
file content (66 lines) | stat: -rw-r--r-- 1,686 bytes parent folder | download | duplicates (3)
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
/*
 * JMDeluxe - Portable JuggleMaster based on wxWindows
 * (C) Gary Briggs 2003
 *
 * JuggleMaster is  free software; you can redistribute  it and/or modify
 * it under the  terms of the GNU General  Public License as published
 * by the Free  Software Foundation; either version 2  of the License,
 * or (at your option) any later version.
 *
 * 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.   See the GNU
 * General Public License for more details.
 */ 

#ifndef PRINT_H
#define PRINT_H

#include <wx/wx.h>
#include <wx/dialog.h>
#include <wx/progdlg.h>
#include <wx/image.h>
#include <wx/list.h>
#include "../jmlib/jmlib.h"
#include "jmdlx.h"

#ifdef HAVE_AVCODEC_H
extern "C" {
#define __STDC_CONSTANT_MACROS 1
#include <libavcodec/avcodec.h>
}
#endif

class Print : public wxDialog {
public:
  Print(wxWindow* parent, JMLib* j);

protected:
  JMLib* jmlib;
  wxTextCtrl* filename;
  wxChoice* output_type;
  wxSpinCtrl* output_width;
  wxSpinCtrl* output_height;
  wxSpinCtrl* delay;
  wxSpinCtrl* max_iterations;
  FILE* outputfile;
  wxString lastpath;

  void OnOK(wxCommandEvent &event);
  void OnChooseFile(wxCommandEvent &event);
  int printImage();
  int printPS();

#ifdef HAVE_AVCODEC_H
  int printMPEG();

  unsigned char RGBgetY(unsigned char r, unsigned char g, unsigned char b);
  unsigned char RGBgetCr(unsigned char r, unsigned char g, unsigned char b);
  unsigned char RGBgetCb(unsigned char r, unsigned char g, unsigned char b);
#endif

  void RenderFrame(wxDC *dc, JMLib *j);
  DECLARE_EVENT_TABLE()
};

#endif