source: smplayer/trunk/src/basegui.h@ 148

Last change on this file since 148 was 142, checked in by Silvan Scherrer, 12 years ago

SMPlayer: update trunk to 0.8.5

  • Property svn:eol-style set to LF
File size: 18.9 KB
Line 
1/* smplayer, GUI front-end for mplayer.
2 Copyright (C) 2006-2013 Ricardo Villalba <rvm@users.sourceforge.net>
3
4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by
6 the Free Software Foundation; either version 2 of the License, or
7 (at your option) any later version.
8
9 This program is distributed in the hope that it will be useful,
10 but WITHOUT ANY WARRANTY; without even the implied warranty of
11 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 GNU General Public License for more details.
13
14 You should have received a copy of the GNU General Public License
15 along with this program; if not, write to the Free Software
16 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
17*/
18
19#ifndef _BASEGUI_H_
20#define _BASEGUI_H_
21
22#include <QMainWindow>
23#include <QNetworkProxy>
24#include "mediadata.h"
25#include "mediasettings.h"
26#include "preferences.h"
27#include "core.h"
28#include "config.h"
29#include "guiconfig.h"
30
31#ifdef Q_OS_WIN
32/* Disable screensaver by event */
33#include <windows.h>
34#endif
35
36#ifdef Q_OS_WIN
37 #ifdef PORTABLE_APP
38 #define TEST_UPDATE
39 #endif
40#else
41 #define TEST_UPDATE
42#endif
43
44class QWidget;
45class QMenu;
46class LogWindow;
47class MplayerWindow;
48
49class QLabel;
50class FilePropertiesDialog;
51class VideoEqualizer2;
52class AudioEqualizer;
53class Playlist;
54#ifdef FIND_SUBTITLES
55class FindSubtitlesWindow;
56#endif
57
58#ifdef VIDEOPREVIEW
59class VideoPreview;
60#endif
61
62
63class MyAction;
64class MyActionGroup;
65
66class PreferencesDialog;
67
68class Favorites;
69class TVList;
70
71class UpdateChecker;
72
73class BaseGui : public QMainWindow
74{
75 Q_OBJECT
76
77public:
78 BaseGui( QWidget* parent = 0, Qt::WindowFlags flags = 0 );
79 ~BaseGui();
80
81 /* Return true if the window shouldn't show on startup */
82 virtual bool startHidden() { return false; };
83
84 //! Execute all actions in \a actions. The actions should be
85 //! separated by spaces. Checkable actions could have a parameter:
86 //! true or false.
87 void runActions(QString actions);
88
89 //! Execute all the actions after the video has started to play
90 void runActionsLater(QString actions) { pending_actions_to_run = actions; };
91
92#ifdef LOG_SMPLAYER
93 //! Saves the line from the smplayer output
94 void recordSmplayerLog(QString line);
95#endif
96
97public slots:
98 virtual void open(QString file); // Generic open, autodetect type.
99 virtual void openFile();
100 virtual void openFile(QString file);
101 virtual void openFiles(QStringList files);
102 virtual void openFavorite(QString file);
103 virtual void openURL();
104 virtual void openURL(QString url);
105 virtual void openVCD();
106 virtual void openAudioCD();
107 virtual void openDVD();
108 virtual void openDVDFromFolder();
109 virtual void openDVDFromFolder(QString directory);
110 virtual void openDirectory();
111 virtual void openDirectory(QString directory);
112
113 virtual void helpFirstSteps();
114 virtual void helpFAQ();
115 virtual void helpCLOptions();
116 virtual void helpCheckUpdates();
117 virtual void helpShowConfig();
118 virtual void helpAbout();
119 virtual void helpAboutQt();
120
121 virtual void shareSMPlayer();
122
123 virtual void loadSub();
124 virtual void loadAudioFile(); // Load external audio file
125
126 void setInitialSubtitle(const QString & subtitle_file);
127
128#ifdef FIND_SUBTITLES
129 virtual void showFindSubtitlesDialog();
130 virtual void openUploadSubtitlesPage(); //turbos
131#endif
132
133#ifdef VIDEOPREVIEW
134 virtual void showVideoPreviewDialog();
135#endif
136
137 virtual void showTubeBrowser();
138
139 virtual void showPlaylist();
140 virtual void showPlaylist(bool b);
141 virtual void showVideoEqualizer();
142 virtual void showVideoEqualizer(bool b);
143 virtual void showAudioEqualizer();
144 virtual void showAudioEqualizer(bool b);
145#ifdef LOG_MPLAYER
146 virtual void showMplayerLog();
147#endif
148#ifdef LOG_SMPLAYER
149 virtual void showLog();
150#endif
151 virtual void showPreferencesDialog();
152 virtual void showFilePropertiesDialog();
153
154 virtual void showGotoDialog();
155 virtual void showSubDelayDialog();
156 virtual void showAudioDelayDialog();
157
158 virtual void exitFullscreen();
159 virtual void toggleFullscreen();
160 virtual void toggleFullscreen(bool);
161
162 virtual void toggleCompactMode();
163 virtual void toggleCompactMode(bool);
164
165 void setStayOnTop(bool b);
166 virtual void changeStayOnTop(int);
167 virtual void checkStayOnTop(Core::State);
168 void toggleStayOnTop();
169
170 void setForceCloseOnFinish(int n) { arg_close_on_finish = n; };
171 int forceCloseOnFinish() { return arg_close_on_finish; };
172
173 void setForceStartInFullscreen(int n) { arg_start_in_fullscreen = n; };
174 int forceStartInFullscreen() { return arg_start_in_fullscreen; };
175
176
177protected slots:
178 virtual void closeWindow();
179
180 virtual void setJumpTexts();
181
182 // Replace for setCaption (in Qt 4 it's not virtual)
183 virtual void setWindowCaption(const QString & title);
184
185 //virtual void openRecent(int item);
186 virtual void openRecent();
187 virtual void enterFullscreenOnPlay();
188 virtual void exitFullscreenOnStop();
189 virtual void exitFullscreenIfNeeded();
190 virtual void playlistHasFinished();
191
192 virtual void displayState(Core::State state);
193 virtual void displayMessage(QString message);
194 virtual void gotCurrentTime(double);
195
196 virtual void initializeMenus();
197 virtual void updateWidgets();
198 virtual void updateVideoEqualizer();
199 virtual void updateAudioEqualizer();
200 virtual void setDefaultValuesFromVideoEqualizer();
201 virtual void changeVideoEqualizerBySoftware(bool b);
202
203 virtual void newMediaLoaded();
204 virtual void updateMediaInfo();
205
206 void checkPendingActionsToRun();
207
208#if REPORT_OLD_MPLAYER
209 void checkMplayerVersion();
210 void displayWarningAboutOldMplayer();
211#endif
212
213#ifdef UPDATE_CHECKER
214 void reportNewVersionAvailable(QString);
215#endif
216
217#ifdef TEST_UPDATE
218 void testUpdate();
219#endif
220
221#if AUTODISABLE_ACTIONS
222 virtual void enableActionsOnPlaying();
223 virtual void disableActionsOnStop();
224 virtual void togglePlayAction(Core::State);
225#endif
226
227 void changeSizeFactor(int factor);
228 void toggleDoubleSize();
229 void resizeMainWindow(int w, int h);
230 void resizeWindow(int w, int h);
231 virtual void hidePanel();
232
233 /* virtual void playlistVisibilityChanged(); */
234
235 virtual void displayGotoTime(int);
236 //! You can call this slot to jump to the specified percentage in the video, while dragging the slider.
237 virtual void goToPosOnDragging(int);
238
239 virtual void showPopupMenu();
240 virtual void showPopupMenu( QPoint p );
241 /*
242 virtual void mouseReleaseEvent( QMouseEvent * e );
243 virtual void mouseDoubleClickEvent( QMouseEvent * e );
244 */
245
246 virtual void leftClickFunction();
247 virtual void rightClickFunction();
248 virtual void doubleClickFunction();
249 virtual void middleClickFunction();
250 virtual void xbutton1ClickFunction();
251 virtual void xbutton2ClickFunction();
252 virtual void processFunction(QString function);
253
254 virtual void dragEnterEvent( QDragEnterEvent * ) ;
255 virtual void dropEvent ( QDropEvent * );
256
257 virtual void applyNewPreferences();
258 virtual void applyFileProperties();
259
260 virtual void clearRecentsList();
261
262 virtual void loadActions();
263 virtual void saveActions();
264
265 // Check the mouse pos in fullscreen mode, to
266 // show the controlwidget if it's moved to
267 // the bottom area.
268 virtual void checkMousePos( QPoint );
269 virtual void moveWindow(QPoint diff);
270
271 // Single instance stuff
272#ifdef SINGLE_INSTANCE
273 void handleMessageFromOtherInstances(const QString& message);
274#endif
275
276 //! Called when core can't parse the mplayer version and there's no
277 //! version supplied by the user
278 void askForMplayerVersion(QString);
279
280 void showExitCodeFromMplayer(int exit_code);
281 void showErrorFromMplayer(QProcess::ProcessError);
282
283 // stylesheet
284#if ALLOW_CHANGE_STYLESHEET
285 virtual void loadQss(QString filename);
286 virtual void changeStyleSheet(QString style);
287#endif
288
289#if defined(Q_OS_WIN) || defined(Q_OS_OS2)
290 /* Disable screensaver by event */
291 void clear_just_stopped();
292#endif
293
294#ifdef LOG_MPLAYER
295 //! Clears the mplayer log
296 void clearMplayerLog();
297
298 //! Saves the line from the mplayer output
299 void recordMplayerLog(QString line);
300
301 //! Saves the mplayer log to a file every time a file is loaded
302 void autosaveMplayerLog();
303#endif
304
305signals:
306 void frameChanged(int);
307 void ABMarkersChanged(int secs_a, int secs_b);
308 void videoInfoChanged(int width, int height, double fps);
309 void timeChanged(QString time_ready_to_print);
310
311 void cursorNearTop(QPoint);
312 void cursorNearBottom(QPoint);
313 void cursorFarEdges();
314
315 void wheelUp();
316 void wheelDown();
317 /*
318 void doubleClicked();
319 void leftClicked();
320 void middleClicked();
321 */
322
323 //! Sent when the user wants to close the main window
324 void quitSolicited();
325
326#ifdef GUI_CHANGE_ON_RUNTIME
327 void guiChanged(QString gui);
328#endif
329
330protected:
331 virtual void retranslateStrings();
332 virtual void changeEvent(QEvent * event);
333 virtual void hideEvent( QHideEvent * );
334 virtual void showEvent( QShowEvent * );
335#ifdef Q_OS_WIN
336 /* Disable screensaver by event */
337 virtual bool winEvent ( MSG * m, long * result );
338#endif
339
340 virtual void aboutToEnterFullscreen();
341 virtual void aboutToExitFullscreen();
342 virtual void aboutToEnterCompactMode();
343 virtual void aboutToExitCompactMode();
344
345protected:
346 void createCore();
347 void createMplayerWindow();
348 void createVideoEqualizer();
349 void createAudioEqualizer();
350 void createPlaylist();
351 void createPanel();
352 void createPreferencesDialog();
353 void createFilePropertiesDialog();
354 void setDataToFileProperties();
355 void initializeGui();
356 void createActions();
357#if AUTODISABLE_ACTIONS
358 void setActionsEnabled(bool);
359#endif
360 void createMenus();
361 void updateRecents();
362 void configureDiscDevices();
363 /* virtual void closeEvent( QCloseEvent * e ); */
364
365protected:
366 virtual void wheelEvent( QWheelEvent * e ) ;
367
368protected:
369 QWidget * panel;
370
371 // Menu File
372 MyAction * openFileAct;
373 MyAction * openDirectoryAct;
374 MyAction * openPlaylistAct;
375 MyAction * openVCDAct;
376 MyAction * openAudioCDAct;
377 MyAction * openDVDAct;
378 MyAction * openDVDFolderAct;
379 MyAction * openURLAct;
380 MyAction * exitAct;
381 MyAction * clearRecentsAct;
382
383 // Menu Play
384 MyAction * playAct;
385 MyAction * playOrPauseAct;
386 MyAction * pauseAct;
387 MyAction * pauseAndStepAct;
388 MyAction * stopAct;
389 MyAction * frameStepAct;
390 MyAction * rewind1Act;
391 MyAction * rewind2Act;
392 MyAction * rewind3Act;
393 MyAction * forward1Act;
394 MyAction * forward2Act;
395 MyAction * forward3Act;
396 MyAction * repeatAct;
397 MyAction * setAMarkerAct;
398 MyAction * setBMarkerAct;
399 MyAction * clearABMarkersAct;
400 MyAction * gotoAct;
401
402 // Menu Speed
403 MyAction * normalSpeedAct;
404 MyAction * halveSpeedAct;
405 MyAction * doubleSpeedAct;
406 MyAction * decSpeed10Act;
407 MyAction * incSpeed10Act;
408 MyAction * decSpeed4Act;
409 MyAction * incSpeed4Act;
410 MyAction * decSpeed1Act;
411 MyAction * incSpeed1Act;
412
413 // Menu Video
414 MyAction * fullscreenAct;
415 MyAction * compactAct;
416 MyAction * videoEqualizerAct;
417 MyAction * screenshotAct;
418 MyAction * screenshotsAct;
419#ifdef VIDEOPREVIEW
420 MyAction * videoPreviewAct;
421#endif
422 MyAction * flipAct;
423 MyAction * mirrorAct;
424 MyAction * postProcessingAct;
425 MyAction * phaseAct;
426 MyAction * deblockAct;
427 MyAction * deringAct;
428 MyAction * gradfunAct;
429 MyAction * addNoiseAct;
430 MyAction * addLetterboxAct;
431 MyAction * upscaleAct;
432
433 // Menu Audio
434 MyAction * audioEqualizerAct;
435 MyAction * muteAct;
436 MyAction * decVolumeAct;
437 MyAction * incVolumeAct;
438 MyAction * decAudioDelayAct;
439 MyAction * incAudioDelayAct;
440 MyAction * audioDelayAct; // Ask for delay
441 MyAction * extrastereoAct;
442 MyAction * karaokeAct;
443 MyAction * volnormAct;
444 MyAction * loadAudioAct;
445 MyAction * unloadAudioAct;
446
447 // Menu Subtitles
448 MyAction * loadSubsAct;
449 MyAction * unloadSubsAct;
450 MyAction * decSubDelayAct;
451 MyAction * incSubDelayAct;
452 MyAction * subDelayAct; // Ask for delay
453 MyAction * decSubPosAct;
454 MyAction * incSubPosAct;
455 MyAction * incSubStepAct;
456 MyAction * decSubStepAct;
457 MyAction * incSubScaleAct;
458 MyAction * decSubScaleAct;
459 MyAction * useAssAct;
460 MyAction * useForcedSubsOnlyAct;
461 MyAction * subVisibilityAct;
462#ifdef FIND_SUBTITLES
463 MyAction * showFindSubtitlesDialogAct;
464 MyAction * openUploadSubtitlesPageAct;//turbos
465#endif
466
467 // Menu Options
468 MyAction * showPlaylistAct;
469 MyAction * showPropertiesAct;
470 MyAction * showPreferencesAct;
471 MyAction * showTubeBrowserAct;
472#ifdef LOG_MPLAYER
473 MyAction * showLogMplayerAct;
474#endif
475#ifdef LOG_SMPLAYER
476 MyAction * showLogSmplayerAct;
477#endif
478
479 // Menu Help
480 MyAction * showFirstStepsAct;
481 MyAction * showFAQAct;
482 MyAction * showCLOptionsAct; // Command line options
483 MyAction * showCheckUpdatesAct;
484 MyAction * showConfigAct;
485 MyAction * aboutQtAct;
486 MyAction * aboutThisAct;
487
488 MyAction * facebookAct;
489 MyAction * twitterAct;
490 MyAction * gmailAct;
491 MyAction * hotmailAct;
492 MyAction * yahooAct;
493
494 // Playlist
495 MyAction * playPrevAct;
496 MyAction * playNextAct;
497
498 // Actions not in menus
499#if !USE_MULTIPLE_SHORTCUTS
500 MyAction * decVolume2Act;
501 MyAction * incVolume2Act;
502#endif
503 MyAction * exitFullscreenAct;
504 MyAction * nextOSDAct;
505 MyAction * decContrastAct;
506 MyAction * incContrastAct;
507 MyAction * decBrightnessAct;
508 MyAction * incBrightnessAct;
509 MyAction * decHueAct;
510 MyAction * incHueAct;
511 MyAction * decSaturationAct;
512 MyAction * incSaturationAct;
513 MyAction * decGammaAct;
514 MyAction * incGammaAct;
515 MyAction * nextVideoAct;
516 MyAction * nextAudioAct;
517 MyAction * nextSubtitleAct;
518 MyAction * nextChapterAct;
519 MyAction * prevChapterAct;
520 MyAction * doubleSizeAct;
521 MyAction * resetVideoEqualizerAct;
522 MyAction * resetAudioEqualizerAct;
523 MyAction * showContextMenuAct;
524 MyAction * nextAspectAct;
525 MyAction * nextWheelFunctionAct;
526
527 MyAction * showFilenameAct;
528 MyAction * toggleDeinterlaceAct;
529
530 // Moving and zoom
531 MyAction * moveUpAct;
532 MyAction * moveDownAct;
533 MyAction * moveLeftAct;
534 MyAction * moveRightAct;
535 MyAction * incZoomAct;
536 MyAction * decZoomAct;
537 MyAction * resetZoomAct;
538 MyAction * autoZoomAct;
539 MyAction * autoZoom169Act;
540 MyAction * autoZoom235Act;
541
542#if USE_MPLAYER_PANSCAN
543 MyAction * incPanscanAct;
544 MyAction * decPanscanAct;
545#endif
546
547 // OSD Action Group
548 MyActionGroup * osdGroup;
549 MyAction * osdNoneAct;
550 MyAction * osdSeekAct;
551 MyAction * osdTimerAct;
552 MyAction * osdTotalAct;
553
554 // Denoise Action Group
555 MyActionGroup * denoiseGroup;
556 MyAction * denoiseNoneAct;
557 MyAction * denoiseNormalAct;
558 MyAction * denoiseSoftAct;
559
560 // Blur-sharpen group
561 MyActionGroup * unsharpGroup;
562 MyAction * unsharpNoneAct;
563 MyAction * blurAct;
564 MyAction * sharpenAct;
565
566 // Window Size Action Group
567 MyActionGroup * sizeGroup;
568 MyAction * size50;
569 MyAction * size75;
570 MyAction * size100;
571 MyAction * size125;
572 MyAction * size150;
573 MyAction * size175;
574 MyAction * size200;
575 MyAction * size300;
576 MyAction * size400;
577
578 // Deinterlace Action Group
579 MyActionGroup * deinterlaceGroup;
580 MyAction * deinterlaceNoneAct;
581 MyAction * deinterlaceL5Act;
582 MyAction * deinterlaceYadif0Act;
583 MyAction * deinterlaceYadif1Act;
584 MyAction * deinterlaceLBAct;
585 MyAction * deinterlaceKernAct;
586
587 // Aspect Action Group
588 MyActionGroup * aspectGroup;
589 MyAction * aspectDetectAct;
590 MyAction * aspectNoneAct;
591 MyAction * aspect11Act; // 1:1
592 MyAction * aspect32Act; // 3:2
593 MyAction * aspect43Act; // 4:3
594 MyAction * aspect54Act; // 5:4
595 MyAction * aspect149Act; // 14:9
596 MyAction * aspect1410Act; // 14:10
597 MyAction * aspect169Act; // 16:9
598 MyAction * aspect1610Act; // 16:10
599 MyAction * aspect235Act; // 2.35:1
600
601 // Rotate Group
602 MyActionGroup * rotateGroup;
603 MyAction * rotateNoneAct;
604 MyAction * rotateClockwiseFlipAct;
605 MyAction * rotateClockwiseAct;
606 MyAction * rotateCounterclockwiseAct;
607 MyAction * rotateCounterclockwiseFlipAct;
608
609 // Menu StayOnTop
610 MyActionGroup * onTopActionGroup;
611 MyAction * onTopAlwaysAct;
612 MyAction * onTopNeverAct;
613 MyAction * onTopWhilePlayingAct;
614 MyAction * toggleStayOnTopAct;
615
616#if USE_ADAPTER
617 // Screen Group
618 MyActionGroup * screenGroup;
619 MyAction * screenDefaultAct;
620#endif
621
622 // Closed Captions Group
623 MyActionGroup * ccGroup;
624 MyAction * ccNoneAct;
625 MyAction * ccChannel1Act;
626 MyAction * ccChannel2Act;
627 MyAction * ccChannel3Act;
628 MyAction * ccChannel4Act;
629
630 // External sub fps Group
631 MyActionGroup * subFPSGroup;
632 MyAction * subFPSNoneAct;
633 /* MyAction * subFPS23Act; */
634 MyAction * subFPS23976Act;
635 MyAction * subFPS24Act;
636 MyAction * subFPS25Act;
637 MyAction * subFPS29970Act;
638 MyAction * subFPS30Act;
639
640 // Audio Channels Action Group
641 MyActionGroup * channelsGroup;
642 /* MyAction * channelsDefaultAct; */
643 MyAction * channelsStereoAct;
644 MyAction * channelsSurroundAct;
645 MyAction * channelsFull51Act;
646 MyAction * channelsFull61Act;
647 MyAction * channelsFull71Act;
648
649 // Stereo Mode Action Group
650 MyActionGroup * stereoGroup;
651 MyAction * stereoAct;
652 MyAction * leftChannelAct;
653 MyAction * rightChannelAct;
654 MyAction * monoAct;
655 MyAction * reverseAct;
656
657 // Other groups
658#if PROGRAM_SWITCH
659 MyActionGroup * programTrackGroup;
660#endif
661 MyActionGroup * videoTrackGroup;
662 MyActionGroup * audioTrackGroup;
663 MyActionGroup * subtitleTrackGroup;
664 MyActionGroup * titleGroup;
665 MyActionGroup * angleGroup;
666 MyActionGroup * chapterGroup;
667
668#if DVDNAV_SUPPORT
669 MyAction * dvdnavUpAct;
670 MyAction * dvdnavDownAct;
671 MyAction * dvdnavLeftAct;
672 MyAction * dvdnavRightAct;
673 MyAction * dvdnavMenuAct;
674 MyAction * dvdnavSelectAct;
675 MyAction * dvdnavPrevAct;
676 MyAction * dvdnavMouseAct;
677#endif
678
679 // MENUS
680 QMenu *openMenu;
681 QMenu *playMenu;
682 QMenu *videoMenu;
683 QMenu *audioMenu;
684 QMenu *subtitlesMenu;
685 QMenu *browseMenu;
686 QMenu *optionsMenu;
687 QMenu *helpMenu;
688
689 QMenu * disc_menu;
690 QMenu * subtitlestrack_menu;
691#if PROGRAM_SWITCH
692 QMenu * programtrack_menu;
693#endif
694 QMenu * videotrack_menu;
695 QMenu * audiotrack_menu;
696 QMenu * titles_menu;
697 QMenu * chapters_menu;
698 QMenu * angles_menu;
699 QMenu * aspect_menu;
700 QMenu * osd_menu;
701 QMenu * deinterlace_menu;
702 QMenu * denoise_menu;
703 QMenu * unsharp_menu;
704 QMenu * videosize_menu;
705 QMenu * audiochannels_menu;
706 QMenu * stereomode_menu;
707
708 QMenu * speed_menu;
709 QMenu * ab_menu; // A-B menu
710 QMenu * videofilter_menu;
711 QMenu * audiofilter_menu;
712#if defined(LOG_MPLAYER) || defined(LOG_SMPLAYER)
713 QMenu * logs_menu;
714#endif
715 QMenu * zoom_menu;
716 QMenu * rotate_menu;
717 QMenu * ontop_menu;
718#if USE_ADAPTER
719 QMenu * screen_menu;
720#endif
721 QMenu * closed_captions_menu;
722 QMenu * subfps_menu;
723
724 QMenu * share_menu;
725
726 QMenu * popup;
727 QMenu * recentfiles_menu;
728
729#ifdef LOG_MPLAYER
730 LogWindow * mplayer_log_window;
731#endif
732#ifdef LOG_SMPLAYER
733 LogWindow * smplayer_log_window;
734#endif
735 LogWindow * clhelp_window;
736
737 PreferencesDialog *pref_dialog;
738 FilePropertiesDialog *file_dialog;
739 Playlist * playlist;
740 VideoEqualizer2 * video_equalizer2;
741 AudioEqualizer * audio_equalizer;
742#ifdef FIND_SUBTITLES
743 FindSubtitlesWindow * find_subs_dialog;
744#endif
745#ifdef VIDEOPREVIEW
746 VideoPreview * video_preview;
747#endif
748
749 Core * core;
750 MplayerWindow *mplayerwindow;
751
752 Favorites * favorites;
753
754 TVList * tvlist;
755 TVList * radiolist;
756
757#ifdef UPDATE_CHECKER
758 UpdateChecker * update_checker;
759#endif
760
761 QStringList actions_list;
762
763 QString pending_actions_to_run;
764
765 // Force settings from command line
766 int arg_close_on_finish; // -1 = not set, 1 = true, 0 = false
767 int arg_start_in_fullscreen; // -1 = not set, 1 = true, 0 = false
768
769private:
770 QString default_style;
771
772 bool near_top;
773 bool near_bottom;
774
775 // Variables to restore pos and size of the window
776 // when exiting from fullscreen mode.
777 QPoint win_pos;
778 QSize win_size;
779 bool was_maximized;
780
781#if defined(Q_OS_WIN) || defined(Q_OS_OS2)
782 /* Disable screensaver by event */
783 bool just_stopped;
784#endif
785
786#ifdef LOG_MPLAYER
787 QString mplayer_log;
788#endif
789#ifdef LOG_SMPLAYER
790 QString smplayer_log;
791#endif
792
793 bool ignore_show_hide_events;
794};
795
796#endif
797
Note: See TracBrowser for help on using the repository browser.