source: projects/paper-tape-project/trunk/visualisator/gtkpapertapeexporter.h @ 78

Last change on this file since 78 was 78, checked in by sven, 11 years ago

Major improvements in making the Paper Tape Projects ready for deploying:

  • Written a 21 page manual in German (LaTeX, PDF)
  • Visualisator is running, export works, lesser bugs
  • some new perl-tools
  • a bin directory with softlinks
  • You can "install" the paper tape projects right now.
File size: 1.2 KB
Line 
1#ifndef __GTK_PAPER_TAPE_EXPORTERL_H__
2#define __GTK_PAPER_TAPE_EXPORTERL_H__
3
4#include <gtkmm/filechooser.h>
5#include <gtkmm/filechooserdialog.h>
6
7
8#include <gtkmm/button.h>
9#include <gtkmm/viewport.h>
10#include <gtkmm/adjustment.h>
11#include <gtkmm/expander.h>
12#include <gtkmm/radiobutton.h>
13#include <gtkmm/radiobuttongroup.h>
14#include <gtkmm/progressbar.h>
15#include <gtkmm/main.h>
16
17#include <cstdio>
18
19namespace Gtk
20{ class PaperTapeExporter; }
21#include "lochstreifen.h"
22#include "gtkpapertape.h"
23
24namespace Gtk {
25
26enum PaperTapeExporterType {
27        SVG,
28        PNG
29};
30
31class PaperTapeExporter : public FileChooserDialog {
32        LOCHSTREIFEN* l;
33       
34        static void update_gui(const row_t* current_row, cairo_t* context, void* user_data);
35
36        Button* cancel_button;
37        ProgressBar progress;
38        VBox extra_widget;
39        bool cancel_export;
40       
41        RadioButton type_auto_select;
42        RadioButton type_svg;
43        RadioButton type_png;
44        //CheckButton current_view;
45       
46        FILE* output_file;
47       
48public:
49        PaperTapeFile* file;
50        LOCHSTREIFEN* lochstreifen;
51       
52        //PaperTapeExporter(PaperTapeView& view);
53        PaperTapeExporter(Window& parent, const LOCHSTREIFEN* l);
54        bool run_export();
55        void cancel();
56};
57
58} // namespace Gtk
59
60#endif // EXPORTER_H
Note: See TracBrowser for help on using the repository browser.
© 2008 - 2013 technikum29 • Sven Köppel • Some rights reserved
Powered by Trac
Expect where otherwise noted, content on this site is licensed under a Creative Commons 3.0 License