diff --git a/LameXP.rc b/LameXP.rc
index 9addb483..9322c18f 100644
--- a/LameXP.rc
+++ b/LameXP.rc
@@ -119,6 +119,7 @@ IDR_WAVE_BEEP_LONG WAVE "res\\sounds\\beep2.wav"
IDR_WAVE_WAITING WAVE "res\\sounds\\waiting.wav"
IDR_WAVE_BLAST WAVE "res\\sounds\\blast.wav"
IDR_WAVE_TICK WAVE "res\\sounds\\tick.wav"
+IDR_WAVE_DROP WAVE "res\\sounds\\drop.wav"
/////////////////////////////////////////////////////////////////////////////
//
diff --git a/doc/Changelog.html b/doc/Changelog.html
index a023a725..e0d49049 100644
--- a/doc/Changelog.html
+++ b/doc/Changelog.html
@@ -23,6 +23,7 @@ a:visited { color: #0000EE; }
Reworked the application initialization code, resulting in notably faster startup speed
Improved file analyzer to retain the original ordering of files imported from a playlist
Improved internal encoder API, so each encoder can define its own configuration options
+Improved dropbox widget, including proper multi-monitor support
Updated mpg123 decoder to v1.16.0 (2013-10-06), compiled with GCC 4.8.1
Updated GNU Wget binary to v1.14.0 (2012-08-05), compiled with GCC 4.8.1
Updated GnuPG to v1.4.15 (2013-10-05), compiled with GCC 4.8.1
diff --git a/etc/Translation/Blank.ts b/etc/Translation/Blank.ts
index 4e0251a9..28ca9c76 100644
--- a/etc/Translation/Blank.ts
+++ b/etc/Translation/Blank.ts
@@ -771,17 +771,17 @@
-
+
-
+
-
+
@@ -1625,9 +1625,9 @@
-
-
-
+
+
+
@@ -1668,13 +1668,13 @@
-
+
-
+
@@ -1765,7 +1765,7 @@
-
+
@@ -1898,701 +1898,701 @@
-
+
-
+
-
+
-
+
-
+
-
+
-
-
+
+
-
+
-
+
-
+
-
-
-
-
-
+
+
+
+
+
-
-
+
+
-
+
-
+
-
-
+
+
-
+
-
-
-
+
+
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
-
-
+
+
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
-
-
-
-
-
-
+
+
+
+
+
+
+
-
-
-
-
-
-
-
+
+
+
+
+
+
+
-
+
-
+
-
+
-
+
-
-
+
+
-
+
-
+
-
-
-
+
+
+
-
+
-
+
-
+
-
-
-
+
+
+
-
+
-
+
-
+
-
-
+
+
-
+
-
-
-
+
+
+
-
+
-
+
-
+
-
+
-
-
-
+
+
+
-
+
-
+
-
+
-
-
-
+
+
+
-
+
-
+
-
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
+
-
+
-
+
-
+
-
-
+
+
-
-
-
-
-
+
+
+
+
+
-
+
-
+
-
+
-
+
-
+
-
-
+
+
-
+
-
+
-
+
-
+
-
+
-
-
+
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
diff --git a/etc/Translation/LameXP_EN.ts b/etc/Translation/LameXP_EN.ts
index 6132c4dd..f47108e2 100644
--- a/etc/Translation/LameXP_EN.ts
+++ b/etc/Translation/LameXP_EN.ts
@@ -63,7 +63,7 @@
-
+
%n Instance
diff --git a/etc/Translation/LameXP_PL.ts b/etc/Translation/LameXP_PL.ts
index 303e625c..b0bbf1d5 100644
--- a/etc/Translation/LameXP_PL.ts
+++ b/etc/Translation/LameXP_PL.ts
@@ -777,17 +777,17 @@
LameXP - DropBox
-
+
LameXP DropBox
-
+
Możesz dodawać pliki do lisy wrzucając je do DropBoxa!
-
+
(Kliknij prawym przyciskiem myszy by zamknąć okienko)
@@ -1632,9 +1632,9 @@
-
-
-
+
+
+
Sprawdź aktualizacje
@@ -1675,13 +1675,13 @@
-
+
Wyłącz przypominanie o aktualizacji
-
+
Wyłącz efekty dźwiękowe
@@ -1772,7 +1772,7 @@
-
+
Dostęp zablokowany
@@ -1847,192 +1847,192 @@
Zapamiętaj wybrany folder
-
+
Licencja odrzucona
-
+
Odrzuciłeś licencję. W takim razie program zostanie teraz zamknięty!
-
+
Naraska!
-
+
LameXP - Termin wygasł
-
+
Ta wersja próbna LameXP wygasła %1.
-
+
LameXP jest darmowym oprogramowaniem i pełna wersja nie wygasa.
-
-
+
+
Wyjdź z programu
-
+
Najwyraźniej twoje oprogramowanie antywirusowe spowalnia uruchamianie się LameXP.
-
+
Prosze sprawdzić dokument %1 w celu dalszych szcegółów i rozwiązań!
-
+
Powolny start
-
-
-
-
-
+
+
+
+
+
Zamknij
-
-
+
+
Nie pokazuj ponownie
-
+
Ważna aktualizacja
-
+
Twoja wersja LameXP jest starsza niż rok! Czas na aktualizację!
-
-
-
+
+
+
Powiadomienie aktualizacji
-
+
Ostatnie sprawdzenie aktualizacji było ponad 14 dni temu. Sprawdzić teraz aktualizacje?
-
+
Nie sprawdzałeś jeszcze aktualizacji LameXP. Sprawdzić teraz aktualizacje?
-
+
Przełóż
-
+
LameXP wykrył że Twoja wersja kodera Nero AAC jest nieaktualna!
-
+
Wersją dostępną obecnie jest %1, Twoja wersja to %2.
-
+
b/d
-
+
Możesz pobrać najnowszą wersję kodera Nero AAC ze strony Nero:
-
+
Koder AAC jest nieaktualny
-
+
Nie można odnaleźć kodera Nero AAC. Kompresja formatu AAC zostanie wyłączona.
-
+
Prosze skopiować 'neroAacEnc.exe', 'neroAacDec.exe', oraz 'neroAacTag.exe' do folderu LameXP!
-
+
Folder aplikacji LameXP znajduje się tutaj:
-
+
Możesz pobrać koder Nero AAC za darmo z oficjalnej strony Nero:
-
+
Wsparcie dla AAC wyłączone
-
-
-
+
+
+
LameXP
-
+
Powinienieś dodać przynajmniej jeden plik do listy aby zacząć działać!
-
+
Nie znaleziono
-
+
Wybrany przez Ciebie folder tymczasowy TEMP już nie istnieje:
-
+
Przywróć domyślne
-
+
Anuluj
-
+
Ostrzeżenie o małej ilości miejsca na dysku
-
+
Jest mniej niż %1 GB dostępnego miejsca w systemowym folderze TEMP.
@@ -2042,33 +2042,33 @@
WERSJA PRÓBNA
-
+
(Podpowiedź: Zignoruj nazwę pobranego pliku ZIP, w zamian sprawdż załączony w archiwum plik "changelog.txt"!)
-
+
Jest wysoce zalecane zwolnić miejsce na dysku zanim zaczniesz kompresję!
-
+
Twój folder TEMP znajduję się:
-
+
Przerwij proces kompresji
-
+
Wykonaj oczyszczanie dysku
-
-
+
+
Ignoruj
@@ -2134,443 +2134,443 @@
Importuj Tagi do pliku CVS
-
+
Pomijanie sprawdzania aktualizacji, prosze czekać...
-
+
Mało miejsca na dysku
-
+
Chcesz zacząć działać z małą ilością miejsca na dysku. Mogą wystąpić problemy!
-
+
Został wybrany koder, który nie jest wspierany!
-
+
Nie można zapisać do wybranej lokalizacji.
-
+
Prosze wybrać inną lokalizację!
-
+
Zaladuj plik językowy
-
+
Pliki językowe
-
+
Czy na pewno chcesz wyłączyć przypominanie o aktualizacjach?
-
-
-
-
-
-
-
+
+
+
+
+
+
+
Tak
-
-
-
-
-
-
-
+
+
+
+
+
+
+
Nie
-
+
Przypominanie o aktualizacjach wyłączone.
-
+
Prosze pamiętać o okresowym sprawdzaniu aktualizacji!
-
+
Przypominanie o aktualizacjach ponownie włączone.
-
+
Czy na pewno chcesz wyłączyć wszystkie dźwiękowe?
-
-
+
+
Efekty dźwiękowe
-
+
Wszystkie efekty dźwiękowe zostały wyłączone.
-
+
Efekty dźwiękowe zostały ponownie włączone.
-
-
-
+
+
+
Powiadomienia Nero AAC
-
+
Czy na pewno chcesz wyłączyć wszystkie powiadomienia Nero AAC?
-
+
Wszystkie powiadomienia kodera Nero AAC zostały wyłączone.
-
+
Powiadomienia Nero AAC zostały ponownie włączone.
-
-
-
+
+
+
Powiadomienia o powolnym starcie
-
+
Czy na pewno chcesz wyłączyć powiadomienia o powolnym starcie?
-
+
Powiadomienia o powolnym starcie zostały wyłączone.
-
+
Powiadomienia o powolnym starcie zostały ponownie włączone.
-
-
+
+
Otwórz plik Cue Sheet
-
+
Plik Cue Sheet
-
-
-
+
+
+
Aktualizacje Beta
-
+
Czy na pewno chcesz aby LameXP sprawdzał aktualizacje Beta?
-
+
Od teraz LameXP będzie sprawdzał aktualizacje Beta.
-
+
Sprawdź teraz
-
+
LameXP od teraz <i>nie będzie</i> sprawdzał aktualizacji Beta.
-
-
-
+
+
+
Hibernuj komputer
-
+
Czy na pewno chcesz aby komputer był hibernowany zamiast zamykany?
-
+
Od teraz LameXP będzie hibernował komputer zamiast zamykać.
-
+
LameXP od teraz <i>nie</i> będzie hibernował komputera tylko zamykał.
-
-
-
+
+
+
Integracja z systemem
-
+
Czy na pewno chcesz wyłączyć integrację LameXP z systemem?
-
+
Integracja LameXP z systemem zostałą wyłączona.
-
+
Integracja LameXP z systemem została ponownie włączona.
-
-
+
+
Dodaj plik(i)
-
-
+
+
Dodaj folder
-
-
+
+
Zapisz plik CSV
-
-
-
+
+
+
Plik CSV
-
-
-
-
+
+
+
+
Eksportowanie CSV
-
+
Nie ma żadnych tagów, które można eksportować!
-
+
Nie można otworzyć pliku CSV aby go zapisać!
-
+
Nie można zapisać do pliku CSV!
-
+
Pliki CSV utworzone pomyślnie!
-
-
+
+
Otwórz plik CSV
-
+
Nie można otworzyć pliku CSV aby go wczytać!
-
-
-
-
-
+
+
+
+
+
Importowanie CSV
-
+
Próba odczytania pliku CSV zakończona niepowodzeniem!
-
+
Plik CSV nie zawiera żadnych znanych pól!
-
+
Plik CSV nie jest kompletny. Nie wszystkie pliki zostały zaktualizowane!
-
+
Pliki CSV zaimportowano pomyślnie!
-
-
+
+
Nowy folder
-
+
Wprowadź nazwę nowego folderu:
-
+
Utworzenie folderu zakończone niepowodzeniem
-
+
Nowy folder nie mógł zostać stworzony:
-
+
Dysk tylko do odczytu lub brak praw dostępu!
-
-
+
+
Poziom jakości %1
-
+
Kompresja %1
-
+
Nieskompresowany
-
+
Najlepsza jakość (Powoli)
-
+
Akceptowalna jakość (Szybko)
-
+
Wysoka jakość (Zalecane)
-
+
-
+
Najniższa jakość (Bardzo szybko)
-
+
Nazwa pliku bez rozszerzenia
-
+
Numer ścieżki z zerem na początku
-
+
Nazwa ścieżki
-
+
Nazwa Artysty
-
+
Nazwa Albumu
-
+
Rok z (przynajmniej) czterema cyframi
-
+
Komentarz
-
+
Zabronione znaki w nazwach plików:
-
+
Zmień nazwy makr
-
+
%n wątek
@@ -2579,37 +2579,37 @@
-
+
Nie można zapisać do wybranej lokalizacji. Prosze wybierz inną lokalizację!
-
+
Tryb nadpisywania
-
+
Ostrzeżenie: W tym trybie istniejące pliki będą nadpisywane bez możliwości ich odzyskania!
-
+
Kontynuuj
-
+
Cofnij
-
+
Już działa
-
+
LameXP już działa, przejdź do działającego procesu!
diff --git a/etc/Translation/LameXP_SV.ts b/etc/Translation/LameXP_SV.ts
index 19fb7624..d4b8f706 100644
--- a/etc/Translation/LameXP_SV.ts
+++ b/etc/Translation/LameXP_SV.ts
@@ -775,17 +775,17 @@
LameXP - DropBox
-
+
LameXP DropBox
-
+
Du kan lägga till filer i LameXP via Dra&Släpp här!
-
+
(Högerklicka för att stänga DropBox)
@@ -1629,9 +1629,9 @@
-
-
-
+
+
+
Sök efter uppdateringar
@@ -1672,13 +1672,13 @@
-
+
Inaktivera uppdateringsmeddelande
-
+
Inaktivera ljudeffekter
@@ -1769,7 +1769,7 @@
-
+
Åtkomst nekad
@@ -1906,664 +1906,664 @@
Importera metadata från CSV-fil
-
+
Licensavtal avvisat
-
+
Du har nekat att godkänna licensavtalet. Programmet kommer nu att avslutas!
-
+
Hej då!
-
+
LameXP - Upphört
-
+
Denna demoversion av LameXP har upphört att gälla från %1.
-
+
LameXP är kostnadsfritt och release-versionerna upphör inte att gälla.
-
-
+
+
Avsluta programmet
-
+
Det verkar som ett antivirusprogram orsakar långsammare uppstart av LameXP.
-
+
Läs gärna %1 för detaljer och lösningar!
-
+
Långsam uppstart
-
-
-
-
-
+
+
+
+
+
Stäng
-
-
+
+
Visa inte igen
-
+
Viktig uppdatering
-
+
Din version av LameXP är mer än ett år gammal. Dags att uppdatera!
-
-
+
+
Ignorera
-
+
Hoppar över uppdateringskontrollen den här gången, vänta...
-
-
-
+
+
+
Uppdateringspåminnelse
-
+
Din senaste uppdateringskontroll var för mer än 14 dagar sedan. Vill du söka efter uppdateringar nu?
-
+
Du har inte genomfört uppdateringskontroll ännu. Vill du söka efter uppdateringar nu?
-
+
Skjut upp
-
+
LameXP har uptäckt att din version av Nero AAC-kodare är utdaterad!
-
+
Aktuell version är %1 (eller senare), men du har fortfarande version %2.
-
+
n/a
-
+
Du kan ladda ner senaste versionen av Nero AAC-kodare från Neros webbsida:
-
+
(Tips: Bortse från den nedladde zipfilens namn, och kontrollera istället den inkluderade textfilen 'changelog.txt'!)
-
+
AAC-kodare utdaterad
-
+
Neros AAC-kodare kan inte hittas. Stödet för AAC-kodning kommer att inaktiveras.
-
+
Placera 'neroAacEnc.exe', 'neroAacDec.exe' och 'neroAacTag.exe' i LameXPs programmmapp!
-
+
Din LameXP programmapp finns här:
-
+
Du kan ladda ner Nero AAC-kodare gratis från den officiella webbsidan:
-
+
AAC-stödet är inaktiverat
-
-
-
+
+
+
LameXP
-
+
Du måste lägga till minst en fil till listan innan du fortsätter!
-
+
Kan inte hittas
-
+
Din aktuella TEMP-mapp finns inte längre:
-
+
Återställ standard
-
+
Avbryt
-
+
Det finns mindre än %1 GB ledigt diskutrymme i systemets temp-mapp.
-
+
Du behöver frigöra mer diskutrymme innan du fortsätter med omkodningen!
-
+
Temp-mappens placering:
-
+
Varning för dåligt diskutrymme
-
+
Avbryt omkodningsprocessen
-
+
Rensa disken nu
-
+
Dåligt diskutrymme
-
+
Du fortsätter med dåligt diskutrymme. Problem kan uppstå!
-
+
En kodare som saknar stöd har valts!
-
+
Kan inte skriva till den valda utdatamappen.
-
+
Välj en annan målmapp!
-
+
Läs in översättning
-
+
Översättningsfiler
-
+
Vill du verkligen inaktivera uppdateringspåminnelsen?
-
-
-
-
-
-
-
+
+
+
+
+
+
+
Ja
-
-
-
-
-
-
-
+
+
+
+
+
+
+
Nej
-
+
Uppdateringspåminnelsen har inaktiverats.
-
+
Glöm inte att söka efter uppdateringar med jämna mellanrum!
-
+
Uppdateringspåminnelsen har återaktiverats.
-
+
Vill du verkligen inaktivera alla ljudeffekter?
-
-
+
+
Ljudeffekter
-
+
Alla ljudeffekter har inaktiverats.
-
+
Ljudeffekterna har återaktiverats.
-
-
-
+
+
+
Nero AAC-meddelanden
-
+
Vill du verkligen inaktivera alla Nero AAC-meddelanden?
-
+
Alla Nero AAC-meddelanden har inaktiverats.
-
+
Nero AAC-meddelanden har återaktiverats.
-
-
-
+
+
+
Meddelande om långsam uppstart
-
+
Vill du verkligen inaktivera meddelanden om långsam uppstart?
-
+
Meddelanden om långsam uppstart har inaktiverats.
-
+
Meddelanden om långsam uppstart har återaktiverats.
-
-
+
+
Öppna cue-fil
-
+
Cue-fil
-
-
-
+
+
+
Beta-uppdateringar
-
+
Vill du verkligen att LameXP skall söka efter beta-uppdateringar?
-
+
LameXP kommer i fortsättningen att söka efter beta-uppdatyeringar.
-
+
Sök nu
-
+
LameXP kommer i fortsättningen <i>inte</i> att söka efter beta-uppdateringar.
-
-
-
+
+
+
Viloläge
-
+
Vill du verkligen att datorn skall försättas i viloläge vid avslut?
-
+
LameXP kommer i fortsättningen att försätta datorn i viloläge vid avslut.
-
+
LameXP kommer i fortsättningen <i>inte</i> att försätta datorn i viloläge vid avslut.
-
-
-
+
+
+
Utforskarintegrering
-
+
Vill du verkligen inaktivera LameXPs utforskarintegration?
-
+
LameXPs utforskarintegration har inaktiverats.
-
+
LameXPs utforskarintegration har återaktiverats.
-
-
+
+
Lägg till fil(er)
-
-
+
+
Lägg till mapp
-
-
+
+
Spara CSV-fil
-
-
-
+
+
+
CSV-fil
-
-
-
-
+
+
+
+
CSV-export
-
+
Det finns ingen meta-data som kan exporteras!
-
+
Kunde inte öppna CSV-filen för skrivning!
-
+
Kunde inte skriva till CSV-filen!
-
+
CSV-filen skapades korrekt!
-
-
+
+
Öppna CSV-fil
-
-
-
-
-
+
+
+
+
+
CSV-import
-
+
Kunde inte öppna CSV-filen för läsning!
-
+
Kunde inte läsa från CSV-filen!
-
+
CSV-filen innehåller inga kända fält!
-
+
CSV-filen är inte komplett. Alla filer uppdaterades inte!
-
+
CSV-filen importerades korrekt!
-
-
+
+
Ny mapp
-
+
Namn på den nya mappen:
-
+
Kunde inte skapa någon mapp
-
+
Den nya mappen kunde inte skapas:
-
+
Diskenheten är skrivskyddad eller åtkomsträttigheter saknas!
-
-
+
+
Kvallitetsnivå %1
-
+
Kompression %1
-
+
Okomprimerad
-
+
Bäst kvalitet (Långsam)
-
+
Acceptabel kvalitet (Snabb)
-
+
Hög kvallitet (rekommenderas)
-
+
-
+
Dålig kvallitet (mycket snabb)
-
+
Filnamn utan filtillägg
-
+
Spårnummer med inledande nolla
-
+
Spårtitel
-
+
Artistnamn
-
+
Albumnamn
-
+
Årtal med (minst) fyra siffror
-
+
Kommentar
-
+
Förbjudna tecken i filnamn:
-
+
Namnändra macron
-
+
%n instans
@@ -2571,37 +2571,37 @@
-
+
Kan inte skriva till den specificerade mappen. Välj en annan destination!
-
+
Överskrivningsläge
-
+
Varning! Det här läget kan skriva över befintliga filer, utan möjlighet att återskapa!
-
+
Fortsätt
-
+
Återställ
-
+
Körs redan
-
+
LameXP körs redan, använd den redan startade instansen!
diff --git a/gui/DropBox.ui b/gui/DropBox.ui
index f89b2c9e..8f909e1e 100644
--- a/gui/DropBox.ui
+++ b/gui/DropBox.ui
@@ -6,8 +6,8 @@
0
0
- 102
- 102
+ 90
+ 98
diff --git a/res/images/DropBox.png b/res/images/DropBox.png
index be457507..d76e9618 100644
Binary files a/res/images/DropBox.png and b/res/images/DropBox.png differ
diff --git a/res/sounds/drop.wav b/res/sounds/drop.wav
new file mode 100644
index 00000000..9b844eee
Binary files /dev/null and b/res/sounds/drop.wav differ
diff --git a/src/Config.h b/src/Config.h
index 343d7d12..31d63ff8 100644
--- a/src/Config.h
+++ b/src/Config.h
@@ -35,7 +35,7 @@
#define VER_LAMEXP_MINOR_LO 9
#define VER_LAMEXP_TYPE Alpha
#define VER_LAMEXP_PATCH 6
-#define VER_LAMEXP_BUILD 1441
+#define VER_LAMEXP_BUILD 1444
#define VER_LAMEXP_CONFG 1348
///////////////////////////////////////////////////////////////////////////////
diff --git a/src/Dialog_DropBox.cpp b/src/Dialog_DropBox.cpp
index 49d43d44..d8494c02 100644
--- a/src/Dialog_DropBox.cpp
+++ b/src/Dialog_DropBox.cpp
@@ -37,17 +37,26 @@
#define EPS (1.0E-5)
#define SET_FONT_BOLD(WIDGET,BOLD) { QFont _font = (WIDGET)->font(); _font.setBold(BOLD); (WIDGET)->setFont(_font); }
+static QRect SCREEN_GEOMETRY(void)
+{
+ QDesktopWidget *desktop = QApplication::desktop();
+ return (desktop->isVirtualDesktop() ? desktop->screen()->geometry() : desktop->availableGeometry());
+}
+
+static const double LOW_OPACITY = 0.85;
+
////////////////////////////////////////////////////////////
// Constructor
////////////////////////////////////////////////////////////
DropBox::DropBox(QWidget *parent, QAbstractItemModel *model, SettingsModel *settings)
:
- QDialog(parent, Qt::CustomizeWindowHint | Qt::WindowStaysOnTopHint),
+QDialog(parent, Qt::FramelessWindowHint | Qt::WindowStaysOnTopHint),
ui(new Ui::DropBox),
m_model(model),
m_settings(settings),
m_moving(false),
+ m_screenGeometry(SCREEN_GEOMETRY()),
m_firstShow(true)
{
//Init the dialog, from the .ui file
@@ -67,8 +76,9 @@ DropBox::DropBox(QWidget *parent, QAbstractItemModel *model, SettingsModel *sett
m_canClose = false;
//Make transparent
- setWindowOpacity(0.8);
-
+ setAttribute(Qt::WA_TranslucentBackground);
+ setWindowOpacity(LOW_OPACITY);
+
//Translate UI
QEvent languageChangeEvent(QEvent::LanguageChange);
changeEvent(&languageChangeEvent);
@@ -116,26 +126,26 @@ void DropBox::changeEvent(QEvent *e)
void DropBox::showEvent(QShowEvent *event)
{
- QRect screenGeometry = QApplication::desktop()->availableGeometry();
-
- resize(ui->dropBoxLabel->pixmap()->size());
- setMaximumSize(ui->dropBoxLabel->pixmap()->size());
+ m_screenGeometry = SCREEN_GEOMETRY();
+ setFixedSize(ui->dropBoxLabel->pixmap()->size());
m_counterLabel->setGeometry(0, ui->dropBoxLabel->height() - 30, ui->dropBoxLabel->width(), 25);
if(m_firstShow)
{
m_firstShow = false;
- int max_x = screenGeometry.width() - frameGeometry().width() + screenGeometry.left();
- int max_y = screenGeometry.height() - frameGeometry().height() + screenGeometry.top();
+ QWidget *parentWidget = dynamic_cast(this->parent());
+ QRect availGeometry = QApplication::desktop()->availableGeometry((parentWidget) ? parentWidget : this);
+ int max_x = availGeometry.width() - frameGeometry().width() + availGeometry.left();
+ int max_y = availGeometry.height() - frameGeometry().height() + availGeometry.top();
move(max_x, max_y);
- QTimer::singleShot(333, this, SLOT(showToolTip()));
}
if(m_moving)
{
QApplication::restoreOverrideCursor();
m_moving = false;
+ setWindowOpacity(LOW_OPACITY);
}
}
@@ -168,19 +178,42 @@ void DropBox::mousePressEvent(QMouseEvent *event)
if(m_settings) m_settings->dropBoxWidgetEnabled(false);
return;
}
-
+
+ m_screenGeometry = SCREEN_GEOMETRY();
QApplication::setOverrideCursor(Qt::SizeAllCursor);
*m_windowReferencePoint = this->pos();
*m_mouseReferencePoint = event->globalPos();
m_moving = true;
+ setWindowOpacity(1.0);
}
void DropBox::mouseReleaseEvent(QMouseEvent *event)
{
if(m_moving && event->button() != Qt::RightButton)
{
+ static const int magnetic = 24;
+ QRect availGeometry = QApplication::desktop()->availableGeometry(this);
+
+ const int max_x = availGeometry.width() - frameGeometry().width() + availGeometry.left();
+ const int max_y = availGeometry.height() - frameGeometry().height() + availGeometry.top();
+
+ int new_x = qBound(availGeometry.left(), this->x(), max_x);
+ int new_y = qBound(availGeometry.top() , this->y(), max_y);
+
+ if(new_x - availGeometry.left() < magnetic) new_x = availGeometry.left();
+ if(new_y - availGeometry.top() < magnetic) new_y = availGeometry.top();
+
+ if(max_x - new_x < magnetic) new_x = max_x;
+ if(max_y - new_y < magnetic) new_y = max_y;
+
+ if((this->x() != new_x) || (this->y() != new_y))
+ {
+ move(new_x, new_y);
+ }
+
QApplication::restoreOverrideCursor();
m_moving = false;
+ setWindowOpacity(LOW_OPACITY);
}
}
@@ -190,35 +223,15 @@ void DropBox::mouseMoveEvent(QMouseEvent *event)
{
return;
}
-
- static const int magnetic = 22;
- QRect screenGeometry = QApplication::desktop()->availableGeometry();
-
+
const int delta_x = m_mouseReferencePoint->x() - event->globalX();
const int delta_y = m_mouseReferencePoint->y() - event->globalY();
- const int max_x = screenGeometry.width() - frameGeometry().width() + screenGeometry.left();
- const int max_y = screenGeometry.height() - frameGeometry().height() + screenGeometry.top();
- int new_x = qMin(max_x, qMax(screenGeometry.left(), m_windowReferencePoint->x() - delta_x));
- int new_y = qMin(max_y, qMax(screenGeometry.top(), m_windowReferencePoint->y() - delta_y));
+ const int max_x = m_screenGeometry.width() - frameGeometry().width() + m_screenGeometry.left();
+ const int max_y = m_screenGeometry.height() - frameGeometry().height() + m_screenGeometry.top();
- if(new_x < magnetic)
- {
- new_x = 0;
- }
- else if(max_x - new_x < magnetic)
- {
- new_x = max_x;
- }
-
- if(new_y < magnetic)
- {
- new_y = 0;
- }
- else if(max_y - new_y < magnetic)
- {
- new_y = max_y;
- }
+ const int new_x = qBound(m_screenGeometry.left(), m_windowReferencePoint->x() - delta_x, max_x);
+ const int new_y = qBound(m_screenGeometry.top(), m_windowReferencePoint->y() - delta_y, max_y);
move(new_x, new_y);
}
diff --git a/src/Dialog_DropBox.h b/src/Dialog_DropBox.h
index 4cd7b117..f245c33c 100644
--- a/src/Dialog_DropBox.h
+++ b/src/Dialog_DropBox.h
@@ -57,6 +57,7 @@ private:
SettingsModel *m_settings;
bool m_moving;
bool m_firstShow;
+ QRect m_screenGeometry;
protected:
void keyPressEvent(QKeyEvent *event);
diff --git a/src/Dialog_MainWindow.cpp b/src/Dialog_MainWindow.cpp
index 2bec36ec..ee34902a 100644
--- a/src/Dialog_MainWindow.cpp
+++ b/src/Dialog_MainWindow.cpp
@@ -1038,6 +1038,8 @@ void MainWindow::dropEvent(QDropEvent *event)
{
ABORT_IF_BUSY;
+ if(m_settings->soundsEnabled()) lamexp_play_sound(IDR_WAVE_DROP, true);
+
QStringList droppedFiles;
QList urls = event->mimeData()->urls();
@@ -1997,6 +1999,7 @@ void MainWindow::showDropBoxWidgetActionTriggered(bool checked)
if(!m_dropBox->isVisible())
{
m_dropBox->show();
+ QTimer::singleShot(2500, m_dropBox, SLOT(showToolTip()));
}
lamexp_blink_window(m_dropBox);
diff --git a/src/Dialog_WorkingBanner.cpp b/src/Dialog_WorkingBanner.cpp
index 99f34152..25caea1f 100644
--- a/src/Dialog_WorkingBanner.cpp
+++ b/src/Dialog_WorkingBanner.cpp
@@ -74,7 +74,7 @@ WorkingBanner::WorkingBanner(QWidget *parent)
m_progress->setPalette(color);
//Set Opacity
- this->setWindowOpacity(0.85);
+ this->setWindowOpacity(0.9);
//Set wait cursor
setCursor(Qt::WaitCursor);
diff --git a/src/Resource.h b/src/Resource.h
index 858bee2a..4cd4aa39 100644
--- a/src/Resource.h
+++ b/src/Resource.h
@@ -37,6 +37,7 @@
#define IDR_WAVE_WAITING 675
#define IDR_WAVE_BLAST 676
#define IDR_WAVE_TICK 677
+#define IDR_WAVE_DROP 678
/*
* Next default values for new objects