diff --git a/aegisub/Makefile.am b/aegisub/Makefile.am index a447c2881..784099d3e 100644 --- a/aegisub/Makefile.am +++ b/aegisub/Makefile.am @@ -1,300 +1,81 @@ AUTOMAKE_OPTIONS = foreign -SUFFIXES = .c .cpp .rc -noinst_LIBRARIES= -SUBDIRS = bitmaps posix - -AM_CXXFLAGS = -DAEGISUB -Iposix -include posix/defines.h -Iinclude @WX_CPPFLAGS@ - -bin_PROGRAMS = aegisub -aegisub_LDADD = posix/libposix.a -aegisub_CPPFLAGS = @FREETYPE_CFLAGS@ -aegisub_LDFLAGS = @GL_LIBS@ @FREETYPE_LIBS@ @PTHREAD_LIBS@ @WX_LIBS@ - - -#XXX: fix this so it's generated by configure and put into acconf.h -#BUILDINFO := -DBUILD_CREDIT=verm -DBUILD_SVN_REVISION=0 - - -if HAVE_ALSA -noinst_LIBRARIES += libaudio_alsa.a -libaudio_alsa_a_SOURCES = audio_player_alsa.cpp -aegisub_LDFLAGS += @ALSA_LDFLAGS@ -aegisub_LDADD += libaudio_alsa.a -endif - -if HAVE_PORTAUDIO -noinst_LIBRARIES += libaudio_portaudio.a -libaudio_portaudio_a_SOURCES = audio_player_portaudio.cpp -aegisub_LDFLAGS += @PORTAUDIO_LDFLAGS@ -aegisub_LDADD += libaudio_portaudio.a -endif - -if HAVE_PULSEAUDIO -noinst_LIBRARIES += libaudio_pulseaudio.a -libaudio_pulseaudio_a_SOURCES = audio_player_pulse.cpp -libaudio_pulseaudio_a_CPPFLAGS = @LIBPULSE_CFLAGS@ -aegisub_LDFLAGS += @LIBPULSE_LIBS@ -aegisub_LDADD += libaudio_pulseaudio.a -endif - -if HAVE_OPENAL -noinst_LIBRARIES += libaudio_openal.a -libaudio_openal_a_SOURCES = audio_player_openal.cpp -libaudio_openal_a_CPPFLAGS = @OPENAL_CFLAGS@ -aegisub_LDFLAGS += @OPENAL_LIBS@ -aegisub_LDADD += libaudio_openal.a -endif - -if HAVE_FFMPEG -noinst_LIBRARIES += libaudiovideo_ffmpeg.a -libaudiovideo_ffmpeg_a_SOURCES = audio_provider_lavc.cpp lavc_file.cpp video_provider_lavc.cpp lavc_keyframes.cpp -aegisub_LDFLAGS += @AVFORMAT_LDFLAGS@ @AVCODEC_LDFLAGS@ @SWSCALE_LDFLAGS@ -aegisub_LDADD += libaudiovideo_ffmpeg.a -endif - -if HAVE_LIBASS -noinst_LIBRARIES += libsubtitle_ass.a -libsubtitle_ass_a_SOURCES = subtitles_provider_libass.cpp -libsubtitle_ass_a_CPPFLAGS = @LIBASS_CFLAGS@ -aegisub_LDFLAGS += @LIBASS_LIBS@ -aegisub_LDADD += libsubtitle_ass.a -endif - -if HAVE_AUTO4_LUA -noinst_LIBRARIES += libauto4_lua.a -libauto4_lua_a_SOURCES = auto4_lua.cpp auto4_lua_assfile.cpp auto4_lua_dialog.cpp auto4_lua_scriptreader.cpp -libauto4_lua_a_CPPFLAGS = @LUA_CPPFLAGS@ -aegisub_LDFLAGS += @LUA_LDFLAGS@ -aegisub_LDADD += libauto4_lua.a -endif - -if HAVE_AUTO4_PERL -noinst_LIBRARIES += libauto4_perl.a -libauto4_perl_a_SOURCES = auto4_perl.cpp auto4_perl_script.cpp auto4_perl_dialogs.cpp auto4_perl_ass.cpp auto4_perl_console.cpp auto4_perl.h auto4_perl_console.h -libauto4_perl_a_CPPFLAGS = @PERL_CFLAGS@ -aegisub_LDFLAGS += @PERL_LDFLAGS@ -aegisub_LDADD += libauto4_perl.a -endif - -if HAVE_AUTO4_RUBY -noinst_LIBRARIES += libauto4_ruby.a -libauto4_ruby_a_SOURCES = auto4_ruby_assfile.cpp auto4_ruby.cpp auto4_ruby_dialog.cpp -libauto4_ruby_a_CPPFLAGS = @RUBY_CFLAGS@ -aegisub_LDFLAGS += @RUBY_LDFLAGS@ -aegisub_LDADD += libauto4_ruby.a -endif - -if HAVE_AUTO3_LUA -AUTO3_LUA = auto4_auto3.cpp -aegisub_LDADD += -L$(srcdir)/../auto3 -laegisub-auto3 -endif - - -if HAVE_HUNSPELL -noinst_LIBRARIES += libmisc_hunspell.a -libmisc_hunspell_a_SOURCES = spellchecker_hunspell.cpp -aegisub_LDFLAGS += @HUNSPELL_LIBS@ -aegisub_LDADD += libmisc_hunspell.a -endif if HAVE_UNIVCHARDET -noinst_LIBRARIES += libmisc_universalchardet.a -libmisc_universalchardet_a_SOURCES = charset_detect.cpp text_file_reader.cpp -libmisc_universalchardet_a_CPPFLAGS = -D_X86_ -DTEXT_READER_USE_STDIO -aegisub_LDADD += libmisc_universalchardet.a ../universalchardet/libuniversalchardet.a -else -UNIVCHARSET = charset_detect.cpp text_file_reader.cpp +univchardet = universalchardet endif +SUBDIRS = \ + $(univchardet) \ + src \ + automation \ + po \ + desktop + +osx-bundle: + @SHELL@ scripts/osx-bundle.sh "@BUNDLE_STRING@" @AEGISUB_VERSION_DATA@ DICT_DIR=$(DICT_DIR) -## These aren't built, but are listed here so 'make dist' can always find all the sources -## This should also list all Win32 specific files -EXTRA_aegisub_SOURCES = \ - audio_player_dsound.cpp \ - audio_player_portaudio.cpp \ - audio_player_pulse.cpp \ - audio_provider_avs.cpp \ - audio_provider_lavc.cpp \ - auto4_lua.cpp \ - auto4_lua_assfile.cpp \ - auto4_lua_dialog.cpp \ - auto4_lua_scriptreader.cpp \ - auto4_auto3.cpp \ - auto4_ruby.cpp \ - auto4_ruby_assfile.cpp \ - auto4_ruby_dialog.cpp \ - avisynth.h \ - avisynth_wrap.cpp \ - dialog_associations.cpp \ - lavc_file.cpp \ - lavc_keyframes.cpp \ - setup.cpp \ - spellchecker_hunspell.cpp \ - stdwx.cpp \ - stdwx.h \ - subtitle_format_prs.cpp \ - subtitles_provider_libass.cpp \ - video_provider_avs.cpp \ - video_provider_dshow.cpp \ - video_provider_lavc.cpp \ - boost/*.hpp \ - gl/*.h \ - win32/stdint.h +osx-dmg: + @SHELL@ scripts/osx-dmg.sh "@BUNDLE_STRING@" "@DMG_STRING@" -aegisub_SOURCES = \ - $(HUNSPELL) \ - $(LIBASS) \ - $(FFMPEG) \ - $(AUTO3_LUA) \ - $(UNIVCHARSET) \ - auto4_base.cpp \ - audio_player.cpp \ - aegisublocale.cpp \ - ass_attachment.cpp \ - ass_dialogue.cpp \ - ass_entry.cpp \ - ass_export_filter.cpp \ - ass_exporter.cpp \ - ass_file.cpp \ - ass_karaoke.cpp \ - ass_override.cpp \ - ass_style.cpp \ - ass_style_storage.cpp \ - ass_time.cpp \ - audio_box.cpp \ - audio_display.cpp \ - audio_karaoke.cpp \ - audio_provider.cpp \ - audio_provider_convert.cpp \ - audio_provider_hd.cpp \ - audio_provider_ram.cpp \ - audio_provider_pcm.cpp \ - audio_provider_stream.cpp \ - audio_spectrum.cpp \ - avisynth_wrap.cpp \ - base_grid.cpp \ - browse_button.cpp \ - colorspace.cpp \ - colour_button.cpp \ - dialog_about.cpp \ - dialog_attachments.cpp \ - dialog_automation.cpp \ - dialog_colorpicker.cpp \ - dialog_detached_video.cpp \ - dialog_dummy_video.cpp \ - dialog_export.cpp \ - dialog_fonts_collector.cpp \ - dialog_jumpto.cpp \ - dialog_kanji_timer.cpp \ - dialog_options.cpp \ - dialog_paste_over.cpp \ - dialog_progress.cpp \ - dialog_properties.cpp \ - dialog_resample.cpp \ - dialog_search_replace.cpp \ - dialog_selection.cpp \ - dialog_shift_times.cpp \ - dialog_spellchecker.cpp \ - dialog_splash.cpp \ - dialog_style_editor.cpp \ - dialog_style_manager.cpp \ - dialog_styling_assistant.cpp \ - dialog_text_import.cpp \ - dialog_timing_processor.cpp \ - dialog_tip.cpp \ - dialog_translation.cpp \ - dialog_version_check.cpp \ - dialog_video_details.cpp \ - drop.cpp \ - export_clean_info.cpp \ - export_fixstyle.cpp \ - export_framerate.cpp \ - export_visible_lines.cpp \ - fft.cpp \ - font_file_lister.cpp \ - font_file_lister_fontconfig.cpp \ - frame_main.cpp \ - frame_main_events.cpp \ - gl_text.cpp \ - gl_wrap.cpp \ - help_button.cpp \ - hilimod_textctrl.cpp \ - hotkeys.cpp \ - idle_field_event.cpp \ - kana_table.cpp \ - keyframe.cpp \ - main.cpp \ - md5.c \ - mkv_wrap.cpp \ - mythes.cxx \ - options.cpp \ - plugin_manager.cpp \ - scintilla_text_ctrl.cpp \ - spellchecker.cpp \ - spline.cpp \ - spline_curve.cpp \ - standard_paths.cpp \ - static_bmp.cpp \ - string_codec.cpp \ - subs_edit_box.cpp \ - subs_edit_ctrl.cpp \ - subs_grid.cpp \ - subs_preview.cpp \ - subtitle_format.cpp \ - subtitle_format_ass.cpp \ - subtitle_format_dvd.cpp \ - subtitle_format_encore.cpp \ - subtitle_format_microdvd.cpp \ - subtitle_format_mkv.cpp \ - subtitle_format_srt.cpp \ - subtitle_format_txt.cpp \ - subtitle_format_ttxt.cpp \ - subtitles_provider.cpp \ - subtitles_provider_csri.cpp \ - text_file_writer.cpp \ - thesaurus.cpp \ - thesaurus_myspell.cpp \ - timeedit_ctrl.cpp \ - toggle_bitmap.cpp \ - tooltip_manager.cpp \ - utils.cpp \ - validators.cpp \ - variable_data.cpp \ - vector2d.cpp \ - version.cpp \ - vfr.cpp \ - video_box.cpp \ - video_context.cpp \ - video_display.cpp \ - video_frame.cpp \ - video_provider_dummy.cpp \ - video_provider_manager.cpp \ - video_provider_cache.cpp \ - video_slider.cpp \ - visual_feature.cpp \ - visual_tool.cpp \ - visual_tool_clip.cpp \ - visual_tool_cross.cpp \ - visual_tool_drag.cpp \ - visual_tool_rotatexy.cpp \ - visual_tool_rotatez.cpp \ - visual_tool_scale.cpp \ - visual_tool_vector_clip.cpp \ - MatroskaParser.c +osx-tinderbox-bundle: + @SHELL@ scripts/osx-bundle.sh "$(T_BUNDLE)" @AEGISUB_VERSION_DATA@ DICT_DIR="$(DICT_DIR)" -noinst_HEADERS = \ - boost/assert.hpp \ - boost/checked_delete.hpp \ - boost/shared_count.hpp \ - boost/shared_ptr.hpp \ - boost/throw_exception.hpp \ - boost/workaround.hpp \ - gl/glext.h \ - mythes.hxx \ - auto4_perldata.inc +osx-tinderbox-dmg: + @SHELL@ scripts/osx-dmg.sh "$(T_DMG)" "$(T_BUNDLE)" + mv "$(T_DMG).dmg" bundle.dmg EXTRA_DIST = \ - $(srcdir)/*.h \ - $(srcdir)/include/aegisub/*.h + intltool-extract.in \ + intltool-merge.in \ + intltool-update.in \ + config.guess \ + config.sub \ + depcomp \ + install-sh \ + LICENCE \ + missing \ + INSTALL \ + README \ + svn_revision + +# m4macros/ +EXTRA_DIST += \ + m4macros/check_gnu_make.m4 \ + m4macros/boost.m4 \ + m4macros/acx_pthread.m4 \ + m4macros/ac_agi.m4 \ + m4macros/ax_lang_compiler_ms.m4 \ + m4macros/ac_agi_mdcpucfg.m4 \ + m4macros/ax_openmp.m4 \ + m4macros/ax_check_gl.m4 \ + m4macros/ac_flag.m4 + +# scripts/ +EXTRA_DIST += \ + scripts/osx-bundle-restart-helper.c \ + scripts/osx-bundle.sh \ + scripts/osx-dmg.sh \ + scripts/osx-fix-libs.py \ + scripts/unix-gen-res.awk \ + scripts/unix-gen-xpm.awk + +# packages/osx_bundle/ +EXTRA_DIST += \ + packages/osx_bundle/Contents/Info.plist \ + packages/osx_bundle/Contents/Resources/*.icns \ + packages/osx_bundle/Contents/Resources/etc/fonts/fonts.conf \ + packages/osx_bundle/Contents/Resources/etc/fonts/fonts.dtd \ + packages/osx_bundle/Contents/Resources/etc/fonts/conf.d/*.conf + +# packages/osx_dmg/ +EXTRA_DIST += \ + packages/osx_dmg/dmg_background.png \ + packages/osx_dmg/dmg_set_style.applescript + + +CLEANFILES= \ + intltool-extract \ + intltool-merge \ + intltool-update diff --git a/aegisub/export_framerate.cpp b/aegisub/export_framerate.cpp index 77296f8cd..c8fc177ab 100644 --- a/aegisub/export_framerate.cpp +++ b/aegisub/export_framerate.cpp @@ -68,7 +68,7 @@ void AssTransformFramerateFilter::Init() { void AssTransformFramerateFilter::ProcessSubs(AssFile *subs, wxWindow *export_dialog) { // Transform frame rate if (Input->IsLoaded() && Output->IsLoaded()) { - if (Output->GetFrameRateType() == VFR || Output->GetAverage() != Input->GetAverage()) { + if (Input->GetFrameRateType() == VFR || Output->GetFrameRateType() == VFR || Output->GetAverage() != Input->GetAverage()) { TransformFrameRate(subs); } } @@ -115,6 +115,9 @@ wxWindow *AssTransformFramerateFilter::GetConfigDialogWindow(wxWindow *parent) { OutputSizerBottom->Add(OutputFramerate,0,wxEXPAND | wxLEFT,5); OutputSizerBottom->AddStretchSpacer(1); + // Reverse checkbox + Reverse = new wxCheckBox(base,-1,_("Reverse transformation")); + // Output final OutputSizer->Add(OutputSizerTop,0,wxLEFT,5); OutputSizer->Add(OutputSizerBottom,0,wxLEFT,5); @@ -125,6 +128,7 @@ wxWindow *AssTransformFramerateFilter::GetConfigDialogWindow(wxWindow *parent) { MainSizer->Add(InputSizer,0,wxEXPAND,0); MainSizer->Add(new wxStaticText(base,-1,_("Output: ")),0,wxALIGN_CENTER_VERTICAL,0); MainSizer->Add(OutputSizer,0,wxEXPAND,0); + MainSizer->Add(Reverse,0,wxTOP|wxEXPAND,5); // Window base->SetSizerAndFit(MainSizer); @@ -150,6 +154,13 @@ void AssTransformFramerateFilter::LoadSettings(bool IsDefault) { Output = &t2; } else Output = &VFR_Output; + + // Reverse + if (Reverse->IsChecked()) { + FrameRate *temp = Output; + Output = Input; + Input = temp; + } } } diff --git a/aegisub/export_framerate.h b/aegisub/export_framerate.h index b8138fc79..8e814b6b7 100644 --- a/aegisub/export_framerate.h +++ b/aegisub/export_framerate.h @@ -67,6 +67,7 @@ private: wxTextCtrl *OutputFramerate; wxRadioButton *RadioOutputCFR; wxRadioButton *RadioOutputVFR; + wxCheckBox *Reverse; AssTransformFramerateFilter(); void TransformFrameRate(AssFile *subs); diff --git a/installer/aegisub2.iss b/installer/aegisub2.iss index 7a12084b0..d2ca4e704 100644 --- a/installer/aegisub2.iss +++ b/installer/aegisub2.iss @@ -33,8 +33,8 @@ ; #define MyAppName "Aegisub" -#define MyAppRevision "r1952" -#define MyAppVer "2.1.1 Release Preview" +#define MyAppRevision "r1987" +#define MyAppVer "2.1.2 Release Preview" #define MyAppPublisher "Aegisub Team" #define MyAppURL "http://aegisub.net/" #define MyAppExeName "Aegisub.exe" @@ -42,7 +42,7 @@ ; Set these to 0 to make building the installer faster. ; Only intended for testing. #define IncludeSpeller 1 -#define IncludeThesaurus 1 +#define IncludeThesaurus 0 #define IncludePerl 0 #define IncludeFfmpeg 0 diff --git a/installer/latest.txt b/installer/latest.txt index 651a466d9..e3f652a50 100644 --- a/installer/latest.txt +++ b/installer/latest.txt @@ -1,3 +1,3 @@ release;1.10-524;http://www.aegisub.net/;Aegisub 1.10 -svn;1847;http://www.malakith.net/amz/aegisub/;Aegisub 2.1.0 Release Preview r1847 build - Core executable considered stable unless someone finds any issues. Marked "Release Preview" due to incomplete documentation, scripts, and translations. \ No newline at end of file +svn;1987;http://www.malakith.net/amz/aegisub/;Aegisub 2.1.2 Release Preview r1987 build - A few assorted fixes and changes since 2.1.1. \ No newline at end of file