<rect>
<x>0</x>
<y>0</y>
- <width>445</width>
- <height>535</height>
+ <width>485</width>
+ <height>578</height>
</rect>
</property>
<property name="windowTitle" >
<property name="title" >
<string>_("Instances")</string>
</property>
- <layout class="QVBoxLayout" >
- <item>
+ <layout class="QGridLayout" >
+ <item row="0" column="0" colspan="2" >
<widget class="QCheckBox" name="OneInterfaceMode" >
<property name="text" >
<string>_("Allow only one instance")</string>
</property>
</widget>
</item>
- <item>
+ <item row="1" column="0" colspan="2" >
<widget class="QCheckBox" name="EnqueueOneInterfaceMode" >
<property name="text" >
<string>_("Enqueue files in playlist when in one instance mode")</string>
</property>
</widget>
</item>
+ <item row="2" column="0" >
+ <widget class="QLabel" name="assoName" >
+ <property name="text" >
+ <string>_("File associations:")</string>
+ </property>
+ </widget>
+ </item>
+ <item row="2" column="1" >
+ <widget class="QPushButton" name="assoButton" >
+ <property name="sizePolicy" >
+ <sizepolicy vsizetype="Fixed" hsizetype="Maximum" >
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="text" >
+ <string>_("Association Setup")</string>
+ </property>
+ </widget>
+ </item>
</layout>
</widget>
</item>
--- /dev/null
+// License GPLv2+
+
+#include "registry.hpp"
+
+QVLCRegistry::QVLCRegistry(HKEY rootKey)
+{
+ this->m_RootKey = rootKey;
+}
+
+QVLCRegistry::~QVLCRegistry(void)
+{
+}
+
+int QVLCRegistry::RegistryKeyExists(char *path) {
+ HKEY keyHandle;
+ if( RegOpenKeyEx(m_RootKey, path, 0, KEY_READ, &keyHandle) == ERROR_SUCCESS) {
+ RegCloseKey(keyHandle);
+ return 1;
+ }
+ return 0;
+}
+
+int QVLCRegistry::RegistryValueExists(char *path, char *valueName) {
+ HKEY keyHandle;
+ int temp = 0;
+ DWORD size1;
+ DWORD valueType;
+
+ if( RegOpenKeyEx(m_RootKey, path, 0, KEY_READ, &keyHandle) == ERROR_SUCCESS) {
+ if(RegQueryValueEx( keyHandle, valueName, NULL, &valueType, NULL, &size1) == ERROR_SUCCESS) {
+ temp = 1;
+ }
+ RegCloseKey(keyHandle);
+ }
+ return temp;
+}
+
+void QVLCRegistry::WriteRegistryInt(char *path, char *valueName, int value) {
+ HKEY keyHandle;
+
+ if( RegCreateKeyEx(m_RootKey, path, 0, NULL, REG_OPTION_NON_VOLATILE, KEY_WRITE, NULL, &keyHandle, NULL) == ERROR_SUCCESS) {
+ RegSetValueEx(keyHandle,valueName,0,REG_DWORD,(LPBYTE)&value,sizeof(int));
+ RegCloseKey(keyHandle);
+ }
+
+}
+
+void QVLCRegistry::WriteRegistryString(char *path, char *valueName, char *value) {
+ HKEY keyHandle;
+
+ if( RegCreateKeyEx(m_RootKey, path, 0, NULL, REG_OPTION_NON_VOLATILE, KEY_WRITE, NULL, &keyHandle, NULL) == ERROR_SUCCESS) {
+ RegSetValueEx(keyHandle,valueName,0,REG_SZ,(LPBYTE)value,(DWORD)(strlen(value)+1));
+ RegCloseKey(keyHandle);
+ }
+}
+
+void QVLCRegistry::WriteRegistryDouble(char *path, char *valueName, double value) {
+ HKEY keyHandle;
+ if( RegCreateKeyEx(m_RootKey, path, 0, NULL, REG_OPTION_NON_VOLATILE, KEY_WRITE, NULL, &keyHandle, NULL) == ERROR_SUCCESS) {
+ RegSetValueEx(keyHandle,valueName,0,REG_BINARY,(LPBYTE)&value,sizeof(double));
+ RegCloseKey(keyHandle);
+ }
+}
+
+int QVLCRegistry::ReadRegistryInt(char *path, char *valueName, int default_value) {
+ HKEY keyHandle;
+ int tempValue;
+ DWORD size1;
+ DWORD valueType;
+
+ if( RegOpenKeyEx(m_RootKey, path, 0, KEY_READ, &keyHandle) == ERROR_SUCCESS) {
+ if(RegQueryValueEx( keyHandle, valueName, NULL, &valueType, NULL, &size1) == ERROR_SUCCESS) {
+ if(valueType == REG_DWORD) {
+ if(RegQueryValueEx( keyHandle, valueName, NULL, &valueType, (LPBYTE)&tempValue, &size1) == ERROR_SUCCESS) {
+ default_value = tempValue;
+ };
+ }
+ }
+ RegCloseKey(keyHandle);
+ }
+ return default_value;
+}
+
+char * QVLCRegistry::ReadRegistryString(char *path, char *valueName, char *default_value) {
+ HKEY keyHandle;
+ char *tempValue = NULL;
+ DWORD size1;
+ DWORD valueType;
+
+ if( RegOpenKeyEx(m_RootKey, path, 0, KEY_READ, &keyHandle) == ERROR_SUCCESS) {
+ if(RegQueryValueEx( keyHandle, valueName, NULL, &valueType, NULL, &size1) == ERROR_SUCCESS) {
+ if(valueType == REG_SZ) {
+ // free
+ tempValue = (char *)malloc(size1+1); // +1 für NullByte`?
+ if(RegQueryValueEx( keyHandle, valueName, NULL, &valueType, (LPBYTE)tempValue, &size1) == ERROR_SUCCESS) {
+ default_value = tempValue;
+ };
+ }
+ }
+ RegCloseKey(keyHandle);
+ }
+ if(tempValue == NULL) {
+ // wenn tempValue nicht aus registry gelesen wurde dafür sorgen das ein neuer String mit der Kopie von DefaultValue
+ // geliefert wird - das macht das Handling des Rückgabewertes der Funktion einfacher - immer schön mit free freigeben!
+ default_value = strdup(default_value);
+ }
+
+ return default_value;
+}
+
+double QVLCRegistry::ReadRegistryDouble(char *path, char *valueName, double default_value) {
+ HKEY keyHandle;
+ double tempValue;
+ DWORD size1;
+ DWORD valueType;
+
+ if( RegOpenKeyEx(m_RootKey, path, 0, KEY_READ, &keyHandle) == ERROR_SUCCESS) {
+ if(RegQueryValueEx( keyHandle, valueName, NULL, &valueType, NULL, &size1) == ERROR_SUCCESS) {
+ if((valueType == REG_BINARY) && (size1 == sizeof(double))) {
+ if(RegQueryValueEx( keyHandle, valueName, NULL, &valueType, (LPBYTE)&tempValue, &size1) == ERROR_SUCCESS) {
+ default_value = tempValue;
+ };
+ }
+ }
+ RegCloseKey(keyHandle);
+ }
+ return default_value;
+}