X-Git-Url: http://git.osdn.net/view?a=blobdiff_plain;f=src%2FDialog_MainWindow.h;h=c962ac3ceb09493a4f193eaba20268f56d400553;hb=1e09d998a2adfbe317eeaa91eba0364f47c8f12d;hp=f1693adc13506faf057f2fdb57abdc5e46ba68ab;hpb=f75c3ca496fc512051847e7904316ad8b9c35814;p=lamexp%2FLameXP.git diff --git a/src/Dialog_MainWindow.h b/src/Dialog_MainWindow.h index f1693adc..c962ac3c 100644 --- a/src/Dialog_MainWindow.h +++ b/src/Dialog_MainWindow.h @@ -1,6 +1,6 @@ /////////////////////////////////////////////////////////////////////////////// // LameXP - Audio Encoder Front-End -// Copyright (C) 2004-2011 LoRd_MuldeR +// Copyright (C) 2004-2012 LoRd_MuldeR // // This program is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by @@ -35,6 +35,7 @@ class FileListModel; class AbstractEncoder; class QMenu; class DropBox; +class CustomEventFilter; class MainWindow: public QMainWindow, private Ui::MainWindow { @@ -47,110 +48,175 @@ public: bool isAccepted() { return m_accepted; } private slots: - void windowShown(void); void aboutButtonClicked(void); - void encodeButtonClicked(void); - void closeButtonClicked(void); + void addFileDelayed(const QString &filePath, bool tryASAP = false); void addFilesButtonClicked(void); + void addFilesDelayed(const QStringList &filePaths, bool tryASAP = false); + void addFavoriteFolderActionTriggered(void); + void addFolderDelayed(const QString &folderPath, bool recursive); + void aftenCodingModeChanged(int value); + void aftenDRCModeChanged(int value); + void aftenFastAllocationChanged(bool checked); + void aftenSearchSizeChanged(int value); + void autoDetectInstancesChanged(bool checked); + void bitrateManagementEnabledChanged(bool checked); + void bitrateManagementMaxChanged(int value); + void bitrateManagementMinChanged(int value); + void browseCustomTempFolderButtonClicked(void); + void centerOutputFolderModel(void); + void centerOutputFolderModel_doAsync(void); + void channelModeChanged(int value); + void checkForBetaUpdatesActionTriggered(bool checked); + void checkUpdatesActionActivated(void); void clearFilesButtonClicked(void); - void removeFileButtonClicked(void); + void clearMetaButtonClicked(void); + void closeButtonClicked(void); + void compressionTabEventOccurred(QWidget*, QEvent*); + void customParamsChanged(void); + void customParamsHelpRequested(QWidget *obj, QEvent *event); + void customTempFolderChanged(const QString &text); + void disableNeroAacNotificationsActionTriggered(bool checked); + void disableShellIntegrationActionTriggered(bool); + void disableSlowStartupNotificationsActionTriggered(bool checked); + void disableSoundsActionTriggered(bool checked); + void disableUpdateReminderActionTriggered(bool checked); + void documentActionActivated(void); + void editMetaButtonClicked(void); + void encodeButtonClicked(void); + void exportCsvContextActionTriggered(void); void fileDownButtonClicked(void); void fileUpButtonClicked(void); - void showDetailsButtonClicked(void); - void tabPageChanged(int idx); - void tabActionActivated(QAction *action); - void styleActionActivated(QAction *action); - void languageActionActivated(QAction *action); - void languageFromFileActionActivated(bool checked); - void outputFolderViewClicked(const QModelIndex &index); - void outputFolderViewMoved(const QModelIndex &index); - void makeFolderButtonClicked(void); - void gotoHomeFolderButtonClicked(void); + void findFileContextActionTriggered(void); + void forceStereoDownmixEnabledChanged(bool checked); void gotoDesktopButtonClicked(void); + void gotoFavoriteFolder(void); + void gotoHomeFolderButtonClicked(void); void gotoMusicFolderButtonClicked(void); - void checkUpdatesActionActivated(void); - void visitHomepageActionActivated(void); - void openFolderActionActivated(void); - void notifyOtherInstance(void); - void addFileDelayed(const QString &filePath); void handleDelayedFiles(void); - void editMetaButtonClicked(void); - void clearMetaButtonClicked(void); - void updateEncoder(int id); - void updateRCMode(int id); - void updateBitrate(int value); - void updateLameAlgoQuality(int value); - void bitrateManagementEnabledChanged(bool checked); - void bitrateManagementMinChanged(int value); - void bitrateManagementMaxChanged(int value); - void samplingRateChanged(int value); - void channelModeChanged(int value); - void neroAACProfileChanged(int value); + void hibernateComputerActionTriggered(bool checked); + void importCueSheetActionTriggered(bool checked); + void importCsvContextActionTriggered(void); + void initOutputFolderModel(void); + void initOutputFolderModel_doAsync(void); + void languageActionActivated(QAction *action); + void languageFromFileActionActivated(bool checked); + void makeFolderButtonClicked(void); + void metaTagsEnabledChanged(void); void neroAAC2PassChanged(bool checked); + void neroAACProfileChanged(int value); void normalizationEnabledChanged(bool checked); void normalizationMaxVolumeChanged(double volume); - void toneAdjustBassChanged(double value); - void toneAdjustTrebleChanged(double value); - void toneAdjustTrebleReset(void); - void customParamsChanged(void); - void updateMaximumInstances(int value); - void autoDetectInstancesChanged(bool checked); - void resetAdvancedOptionsButtonClicked(void); - void sourceModelChanged(void); - void metaTagsEnabledChanged(void); + void normalizationModeChanged(int mode); + void notifyOtherInstance(void); + void openFolderActionActivated(void); + void opusSettingsChanged(void); + void outputFolderContextMenu(const QPoint &pos); + void outputFolderDirectoryLoaded(const QString &path); + void outputFolderEditFinished(void); + void outputFolderItemExpanded(const QModelIndex &item); + void outputFolderMouseEventOccurred(QWidget *sender, QEvent *event); + void outputFolderViewEventOccurred(QWidget *sender, QEvent *event); + void outputFolderRowsInserted(const QModelIndex &parent, int start, int end); + void outputFolderViewClicked(const QModelIndex &index); + void outputFolderViewMoved(const QModelIndex &index); + void overwriteModeChanged(int id); void playlistEnabledChanged(void); - void saveToSourceFolderChanged(void); void prependRelativePathChanged(void); - void restoreCursor(void); - void sourceFilesContextMenu(const QPoint &pos); void previewContextActionTriggered(void); - void findFileContextActionTriggered(void); - void disableUpdateReminderActionTriggered(bool checked); - void disableSoundsActionTriggered(bool checked); - void outputFolderContextMenu(const QPoint &pos); - void showFolderContextActionTriggered(void); - void installWMADecoderActionTriggered(bool checked); - void disableNeroAacNotificationsActionTriggered(bool checked); - void disableWmaDecoderNotificationsActionTriggered(bool checked); + void refreshFolderContextActionTriggered(void); + void removeFileButtonClicked(void); + void renameOutputEnabledChanged(bool checked); + void renameOutputPatternChanged(void); + void renameOutputPatternChanged(const QString &text); + void resetAdvancedOptionsButtonClicked(void); + void restoreCursor(void); + void samplingRateChanged(int value); + void saveToSourceFolderChanged(void); + void showAnnounceBox(void); + void showCustomParamsHelpScreen(const QString &toolName, const QString &command); + void showDetailsButtonClicked(void); void showDropBoxWidgetActionTriggered(bool checked); - void disableShellIntegrationActionTriggered(bool); + void showFolderContextActionTriggered(void); + void showRenameMacros(const QString &text); + void sourceFilesContextMenu(const QPoint &pos); + void sourceFilesScrollbarMoved(int); + void sourceModelChanged(void); + void styleActionActivated(QAction *action); + void tabActionActivated(QAction *action); + void tabPageChanged(int idx); + void toneAdjustBassChanged(double value); + void toneAdjustTrebleChanged(double value); + void toneAdjustTrebleReset(void); + void updateBitrate(int value); + void updateEncoder(int id); + void updateLameAlgoQuality(int value); + void updateMaximumInstances(int value); + void updateRCMode(int id); + void useCustomTempFolderChanged(bool checked); + void visitHomepageActionActivated(void); + void windowShown(void); protected: - void showEvent(QShowEvent *event); - void dragEnterEvent(QDragEnterEvent *event); - void dropEvent(QDropEvent *event); - void closeEvent(QCloseEvent *event); - void resizeEvent(QResizeEvent *event); - bool eventFilter(QObject *obj, QEvent *event); - void changeEvent(QEvent *e); + virtual void changeEvent(QEvent *e); + virtual void closeEvent(QCloseEvent *event); + virtual void dragEnterEvent(QDragEnterEvent *event); + virtual void dropEvent(QDropEvent *event); + virtual bool eventFilter(QObject *obj, QEvent *event); + virtual void resizeEvent(QResizeEvent *event); + virtual void showEvent(QShowEvent *event); + virtual void keyPressEvent(QKeyEvent *e); + virtual bool event(QEvent *e); + virtual bool winEvent(MSG *message, long *result); private: void addFiles(const QStringList &files); - bool installWMADecoder(void); + void addFolder(const QString &path, bool recursive = false, bool delayed = false); bool checkForUpdates(void); - + void initializeTranslation(void); + void refreshFavorites(void); + bool m_accepted; bool m_firstTimeShown; - FileListModel *m_fileListModel; - QFileSystemModelEx *m_fileSystemModel; - QActionGroup *m_tabActionGroup; - QActionGroup *m_styleActionGroup; - QActionGroup *m_languageActionGroup; - QButtonGroup *m_encoderButtonGroup; - QButtonGroup *m_modeButtonGroup; - QAction *m_showDetailsContextAction; - QAction *m_previewContextAction; - QAction *m_findFileContextAction; - QAction *m_showFolderContextAction; + uint m_outputFolderViewInitCounter; + bool m_outputFolderViewCentering; + + const bool m_neroEncoderAvailable; + const bool m_fhgEncoderAvailable; + const bool m_qaacEncoderAvailable; + WorkingBanner *m_banner; - MessageHandlerThread *m_messageHandler; QStringList *m_delayedFileList; QTimer *m_delayedFileTimer; + DropBox *m_dropBox; + QLabel *m_dropNoteLabel; + FileListModel *m_fileListModel; + QFileSystemModelEx *m_fileSystemModel; + MessageHandlerThread *m_messageHandler; AudioFileModel *m_metaData; MetaInfoModel *m_metaInfoModel; + QMenu *m_outputFolderContextMenu; SettingsModel *m_settings; - QLabel *m_dropNoteLabel; QMenu *m_sourceFilesContextMenu; - QMenu *m_outputFolderContextMenu; - DropBox *m_dropBox; + QMenu *m_outputFolderFavoritesMenu; + QLabel *m_outputFolderNoteBox; + + QAction *m_findFileContextAction; + QAction *m_previewContextAction; + QAction *m_showDetailsContextAction; + QAction *m_showFolderContextAction; + QAction *m_refreshFolderContextAction; + QAction *m_addFavoriteFolderAction; + QAction *m_exportCsvContextAction; + QAction *m_importCsvContextAction; + QActionGroup *m_languageActionGroup; + QActionGroup *m_styleActionGroup; + QActionGroup *m_tabActionGroup; + QButtonGroup *m_encoderButtonGroup; + QButtonGroup *m_modeButtonGroup; + QButtonGroup *m_overwriteButtonGroup; + + CustomEventFilter *m_evenFilterCustumParamsHelp; + CustomEventFilter *m_evenFilterOutputFolderMouse; + CustomEventFilter *m_evenFilterOutputFolderView; + CustomEventFilter *m_evenFilterCompressionTab; };