RinUI 0.1.4.1__tar.gz → 0.1.5.1__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (119) hide show
  1. {rinui-0.1.4.1/RinUI.egg-info → rinui-0.1.5.1}/PKG-INFO +1 -1
  2. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/__init__.py +1 -1
  3. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/components/Text/SpinBox.qml +1 -1
  4. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/core/launcher.py +3 -3
  5. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/core/window.py +17 -3
  6. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/windows/FluentWindowBase.qml +1 -1
  7. {rinui-0.1.4.1 → rinui-0.1.5.1/RinUI.egg-info}/PKG-INFO +1 -1
  8. {rinui-0.1.4.1 → rinui-0.1.5.1}/pyproject.toml +1 -1
  9. {rinui-0.1.4.1 → rinui-0.1.5.1}/LICENSE +0 -0
  10. {rinui-0.1.4.1 → rinui-0.1.5.1}/MANIFEST.in +0 -0
  11. {rinui-0.1.4.1 → rinui-0.1.5.1}/README.md +0 -0
  12. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/assets/fonts/FluentSystemIcons-Index.js +0 -0
  13. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/assets/fonts/FluentSystemIcons-Resizable.ttf +0 -0
  14. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/assets/img/default_app_icon.png +0 -0
  15. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/components/Base.qml +0 -0
  16. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/components/BasicInput/Button.qml +0 -0
  17. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/components/BasicInput/CheckBox.qml +0 -0
  18. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/components/BasicInput/ComboBox.qml +0 -0
  19. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/components/BasicInput/DropDownButton.qml +0 -0
  20. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/components/BasicInput/Hyperlink.qml +0 -0
  21. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/components/BasicInput/PillButton.qml +0 -0
  22. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/components/BasicInput/RadioButton.qml +0 -0
  23. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/components/BasicInput/RoundButton.qml +0 -0
  24. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/components/BasicInput/Slider.qml +0 -0
  25. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/components/BasicInput/Switch.qml +0 -0
  26. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/components/BasicInput/ToggleButton.qml +0 -0
  27. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/components/BasicInput/ToolButton.qml +0 -0
  28. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/components/ContextMenu.qml +0 -0
  29. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/components/DateAndTime/DatePicker.qml +0 -0
  30. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/components/DateAndTime/PickerView.qml +0 -0
  31. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/components/DateAndTime/TimePicker.qml +0 -0
  32. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/components/DialogsAndFlyouts/Dialog.qml +0 -0
  33. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/components/DialogsAndFlyouts/DialogButtonBox.qml +0 -0
  34. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/components/DialogsAndFlyouts/Flyout.qml +0 -0
  35. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/components/DialogsAndFlyouts/Popup.qml +0 -0
  36. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/components/FocusIndicator.qml +0 -0
  37. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/components/IconWidget.qml +0 -0
  38. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/components/Indicator.qml +0 -0
  39. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/components/Layout/Expander.qml +0 -0
  40. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/components/Layout/SettingExpander.qml +0 -0
  41. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/components/Layout/SettingItem.qml +0 -0
  42. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/components/ListAndCollections/Clip.qml +0 -0
  43. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/components/ListAndCollections/Frame.qml +0 -0
  44. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/components/ListAndCollections/ListView.qml +0 -0
  45. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/components/ListAndCollections/ListViewDelegate.qml +0 -0
  46. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/components/ListAndCollections/SettingCard.qml +0 -0
  47. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/components/ListAndCollections/TableView.qml +0 -0
  48. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/components/ListAndCollections/TableViewDelegate.qml +0 -0
  49. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/components/Media/Avatar.qml +0 -0
  50. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/components/MenusAndToolbars/Menu.qml +0 -0
  51. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/components/MenusAndToolbars/MenuBar.qml +0 -0
  52. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/components/MenusAndToolbars/MenuItem.qml +0 -0
  53. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/components/MenusAndToolbars/MenuItemGroup.qml +0 -0
  54. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/components/MenusAndToolbars/MenuSeparator.qml +0 -0
  55. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/components/MenusAndToolbars/TextInputMenu.qml +0 -0
  56. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/components/MenusAndToolbars/ToolSeparator.qml +0 -0
  57. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/components/Navigation/ErrorPage.qml +0 -0
  58. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/components/Navigation/NavigationBar.qml +0 -0
  59. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/components/Navigation/NavigationItem.qml +0 -0
  60. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/components/Navigation/NavigationSubItem.qml +0 -0
  61. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/components/Navigation/NavigationView.qml +0 -0
  62. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/components/Navigation/Segmented.qml +0 -0
  63. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/components/Navigation/SegmentedItem.qml +0 -0
  64. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/components/Navigation/SelectorBar.qml +0 -0
  65. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/components/Navigation/SelectorBarItem.qml +0 -0
  66. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/components/ScrollBar.qml +0 -0
  67. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/components/ScrollView.qml +0 -0
  68. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/components/Shadow.qml +0 -0
  69. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/components/StatusAndInfo/BusyIndicator.qml +0 -0
  70. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/components/StatusAndInfo/InfoBadge.qml +0 -0
  71. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/components/StatusAndInfo/InfoBar.qml +0 -0
  72. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/components/StatusAndInfo/ProgressBar.qml +0 -0
  73. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/components/StatusAndInfo/ProgressRing.qml +0 -0
  74. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/components/StatusAndInfo/Toast.qml +0 -0
  75. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/components/StatusAndInfo/ToolTip.qml +0 -0
  76. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/components/Text/Text.qml +0 -0
  77. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/components/Text/TextArea.qml +0 -0
  78. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/components/Text/TextField.qml +0 -0
  79. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/components/Text/TextInput.qml +0 -0
  80. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/components/qmldir +0 -0
  81. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/core/__init__.py +0 -0
  82. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/core/config.py +0 -0
  83. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/core/theme.py +0 -0
  84. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/core/translator.py +0 -0
  85. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/hooks/__init__.py +0 -0
  86. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/hooks/hook-RinUI.py +0 -0
  87. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/languages/en_US.qm +0 -0
  88. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/languages/en_US.ts +0 -0
  89. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/languages/zh_CN.qm +0 -0
  90. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/languages/zh_CN.ts +0 -0
  91. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/qmldir +0 -0
  92. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/themes/Appearance.qml +0 -0
  93. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/themes/Colors.qml +0 -0
  94. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/themes/dark.qml +0 -0
  95. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/themes/light.qml +0 -0
  96. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/themes/qmldir +0 -0
  97. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/themes/theme.qml +0 -0
  98. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/themes/utils.qml +0 -0
  99. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/utils/Animation.qml +0 -0
  100. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/utils/FloatLayer.qml +0 -0
  101. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/utils/FontIconLoader.qml +0 -0
  102. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/utils/Position.qml +0 -0
  103. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/utils/Severity.qml +0 -0
  104. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/utils/Typography.qml +0 -0
  105. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/utils/qmldir +0 -0
  106. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/windows/CtrlBtn.qml +0 -0
  107. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/windows/FluentPage.qml +0 -0
  108. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/windows/FluentWindow.qml +0 -0
  109. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/windows/TitleBar.qml +0 -0
  110. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/windows/WindowManager.qml +0 -0
  111. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/windows/qmldir +0 -0
  112. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/windows/window/ApplicationWindow.qml +0 -0
  113. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI/windows/window/Window.qml +0 -0
  114. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI.egg-info/SOURCES.txt +0 -0
  115. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI.egg-info/dependency_links.txt +0 -0
  116. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI.egg-info/entry_points.txt +0 -0
  117. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI.egg-info/requires.txt +0 -0
  118. {rinui-0.1.4.1 → rinui-0.1.5.1}/RinUI.egg-info/top_level.txt +0 -0
  119. {rinui-0.1.4.1 → rinui-0.1.5.1}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: RinUI
3
- Version: 0.1.4.1
3
+ Version: 0.1.5.1
4
4
  Summary: A Fluent Design-like UI library for Qt Quick (QML) based on PySide6
5
5
  Author-email: RinLit <lintu233_qwq@icloud.com>
6
6
  Classifier: Programming Language :: Python :: 3
@@ -1,4 +1,4 @@
1
1
  from .core import *
2
2
 
3
- __version__ = "0.1.4.1"
3
+ __version__ = "0.1.5.1"
4
4
  __author__ = "RinLit"
@@ -107,7 +107,7 @@ SpinBox {
107
107
  // 恢复滚轮调整数值
108
108
  WheelHandler {
109
109
  id: wheelHandler
110
- target: spin
110
+ target: root
111
111
  onWheel: (event) => {
112
112
  if (!root.focus) {
113
113
  return; // 如果没有焦点,则不处理滚轮事件
@@ -1,4 +1,3 @@
1
- import os
2
1
  import sys
3
2
  from typing import Union
4
3
 
@@ -54,9 +53,9 @@ class RinUIWindow:
54
53
 
55
54
  if qml_path is None:
56
55
  raise ValueError("QML path must be provided to load the window.")
57
- self.qml_path = qml_path
56
+ self.qml_path = Path(qml_path)
58
57
 
59
- if os.path.exists(RINUI_PATH):
58
+ if self.qml_path.exists():
60
59
  self.engine.addImportPath(RINUI_PATH)
61
60
  else:
62
61
  raise FileNotFoundError(f"Cannot find RinUI module: {RINUI_PATH}")
@@ -106,6 +105,7 @@ class RinUIWindow:
106
105
  :return:
107
106
  """
108
107
  app_instance = QApplication.instance()
108
+ path = Path(path).as_posix()
109
109
  if app_instance:
110
110
  app_instance.setWindowIcon(QIcon(path)) # 设置应用程序图标
111
111
  self.root_window.setProperty('icon', QUrl.fromLocalFile(path))
@@ -1,10 +1,12 @@
1
1
  import platform
2
+ from typing import Optional
2
3
 
3
4
  from PySide6.QtCore import QAbstractNativeEventFilter, QByteArray, QObject, Slot
4
5
  import ctypes
5
6
  from ctypes import wintypes
6
7
 
7
8
  import win32con
9
+ from PySide6.QtQuick import QQuickWindow
8
10
  from win32gui import ReleaseCapture, GetWindowPlacement, ShowWindow
9
11
  from win32con import SW_MAXIMIZE, SW_RESTORE
10
12
  from win32api import SendMessage
@@ -111,13 +113,25 @@ class WinEventManager(QObject):
111
113
 
112
114
 
113
115
  class WinEventFilter(QAbstractNativeEventFilter):
114
- def __init__(self, window):
116
+ def __init__(self, window: QQuickWindow):
115
117
  super().__init__()
116
118
  self.window = window
117
- self.hwnd = int(window.winId())
118
- self.resize_border = 8 # resize 边框宽度
119
+ self.hwnd: Optional[int] = None
120
+ self.resize_border = 8
119
121
 
122
+ if not self.window.isVisible():
123
+ self.window.visibleChanged.connect(self._on_visible_changed)
124
+ else:
125
+ self._init_window_handle()
126
+
127
+ def _on_visible_changed(self, visible: bool):
128
+ if visible and self.hwnd is None:
129
+ self._init_window_handle()
130
+
131
+ def _init_window_handle(self):
132
+ self.hwnd = int(self.window.winId())
120
133
  self.set_window_styles()
134
+ print(f"Window handle set: {self.hwnd}")
121
135
 
122
136
  def set_window_styles(self):
123
137
  """设置必要的窗口样式以启用原生窗口行为"""
@@ -18,7 +18,7 @@ ApplicationWindow {
18
18
  color: "transparent"
19
19
 
20
20
  // 自定义属性
21
- property var icon: "../assets/img/default_app_icon.png" // 图标
21
+ property var icon: undefined // 图标
22
22
  property alias titleEnabled: titleBar.titleEnabled
23
23
  property int titleBarHeight: Theme.currentTheme.appearance.dialogTitleBarHeight
24
24
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: RinUI
3
- Version: 0.1.4.1
3
+ Version: 0.1.5.1
4
4
  Summary: A Fluent Design-like UI library for Qt Quick (QML) based on PySide6
5
5
  Author-email: RinLit <lintu233_qwq@icloud.com>
6
6
  Classifier: Programming Language :: Python :: 3
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "RinUI"
7
- version = "0.1.4.1"
7
+ version = "0.1.5.1"
8
8
  authors = [
9
9
  { name = "RinLit", email = "lintu233_qwq@icloud.com" }
10
10
  ]
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes