gui almost finish
This commit is contained in:
Generated
+10
@@ -0,0 +1,10 @@
|
||||
# Default ignored files
|
||||
/shelf/
|
||||
/workspace.xml
|
||||
# Ignored default folder with query files
|
||||
/queries/
|
||||
# Datasource local storage ignored files
|
||||
/dataSources/
|
||||
/dataSources.local.xml
|
||||
# Editor-based HTTP Client requests
|
||||
/httpRequests/
|
||||
+6
@@ -0,0 +1,6 @@
|
||||
<component name="InspectionProjectProfileManager">
|
||||
<settings>
|
||||
<option name="USE_PROJECT_PROFILE" value="false" />
|
||||
<version value="1.0" />
|
||||
</settings>
|
||||
</component>
|
||||
Generated
+7
@@ -0,0 +1,7 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="Black">
|
||||
<option name="sdkName" value="Python 3.14 (network_procsses)" />
|
||||
</component>
|
||||
<component name="ProjectRootManager" version="2" project-jdk-name="Python 3.14 (network_procsses)" project-jdk-type="Python SDK" />
|
||||
</project>
|
||||
Generated
+8
@@ -0,0 +1,8 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="ProjectModuleManager">
|
||||
<modules>
|
||||
<module fileurl="file://$PROJECT_DIR$/.idea/network_procsses.iml" filepath="$PROJECT_DIR$/.idea/network_procsses.iml" />
|
||||
</modules>
|
||||
</component>
|
||||
</project>
|
||||
Generated
+10
@@ -0,0 +1,10 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<module type="PYTHON_MODULE" version="4">
|
||||
<component name="NewModuleRootManager">
|
||||
<content url="file://$MODULE_DIR$">
|
||||
<excludeFolder url="file://$MODULE_DIR$/.venv" />
|
||||
</content>
|
||||
<orderEntry type="jdk" jdkName="Python 3.14 (network_procsses)" jdkType="Python SDK" />
|
||||
<orderEntry type="sourceFolder" forTests="false" />
|
||||
</component>
|
||||
</module>
|
||||
Generated
+6
@@ -0,0 +1,6 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="VcsDirectoryMappings">
|
||||
<mapping directory="" vcs="Git" />
|
||||
</component>
|
||||
</project>
|
||||
+712
@@ -0,0 +1,712 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<ui version="4.0">
|
||||
<class>am</class>
|
||||
<widget class="QMainWindow" name="am">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>736</width>
|
||||
<height>846</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Fixed" vsizetype="Fixed">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<family>Segoe UI</family>
|
||||
<pointsize>-1</pointsize>
|
||||
</font>
|
||||
</property>
|
||||
<property name="windowTitle">
|
||||
<string>am</string>
|
||||
</property>
|
||||
<property name="windowIcon">
|
||||
<iconset theme="preferences-system-network"/>
|
||||
</property>
|
||||
<property name="styleSheet">
|
||||
<string notr="true">/* تنظیمات کلی و پسزمینه اصلی */
|
||||
QWidget {
|
||||
background-color: #222831; /* خاکستری-سورمهای بسیار تیره */
|
||||
color: #EEEEEE; /* سفید مات برای خوانایی بالا */
|
||||
font-family: "Segoe UI", Tahoma, Arial;
|
||||
font-size: 14px;
|
||||
}
|
||||
|
||||
/* فیلدهای ورودی متن و اعداد */
|
||||
QLineEdit, QTextEdit, QSpinBox, QComboBox {
|
||||
background-color: #393E46; /* پسزمینه فیلدها */
|
||||
color: #EEEEEE;
|
||||
border: 2px solid #393E46; /* حاشیه نامرئی در حالت عادی */
|
||||
border-radius: 8px; /* گوشههای گرد و مدرن */
|
||||
padding: 6px 10px;
|
||||
selection-background-color: #00ADB5; /* رنگ پسزمینه متنی که انتخاب (Select) میشود */
|
||||
}
|
||||
|
||||
/* حالت فوکوس (وقتی کاربر روی فیلد کلیک میکند) */
|
||||
QLineEdit:focus, QTextEdit:focus, QSpinBox:focus, QComboBox:focus {
|
||||
border: 2px solid #00ADB5; /* روشن شدن حاشیه با رنگ فیروزهای */
|
||||
background-color: #2D323A;
|
||||
}
|
||||
|
||||
/* دکمههای اصلی */
|
||||
QPushButton {
|
||||
background-color: #00ADB5; /* فیروزهای شیک و مدرن */
|
||||
color: #ffffff;
|
||||
font-weight: bold;
|
||||
font-size: 15px;
|
||||
border: none;
|
||||
border-radius: 8px; /* گوشههای کاملا گرد */
|
||||
padding: 10px 20px;
|
||||
}
|
||||
|
||||
/* وقتی ماوس روی دکمه میرود (Hover) */
|
||||
QPushButton:hover {
|
||||
background-color: #008f96; /* فیروزهای تیرهتر */
|
||||
}
|
||||
|
||||
/* وقتی دکمه کلیک میشود */
|
||||
QPushButton:pressed {
|
||||
background-color: #00737a;
|
||||
}
|
||||
|
||||
/* طراحی تبها (اگر در برنامه دارید) */
|
||||
QTabBar::tab {
|
||||
background-color: #393E46;
|
||||
color: #AAAAAA;
|
||||
padding: 10px 20px;
|
||||
border-top-left-radius: 8px;
|
||||
border-top-right-radius: 8px;
|
||||
margin-right: 2px;
|
||||
}
|
||||
|
||||
/* تبِ انتخاب شده */
|
||||
QTabBar::tab:selected {
|
||||
background-color: #00ADB5;
|
||||
color: #ffffff;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
/* وقتی ماوس روی تبهای دیگر میرود */
|
||||
QTabBar::tab:hover:!selected {
|
||||
background-color: #4A5059;
|
||||
color: #EEEEEE;
|
||||
}
|
||||
QPushButton:focus {
|
||||
outline: none; /* پاک کردن مستطیل دور تمرکز */
|
||||
border: 2px solid #00ADB5; /* حفظ حاشیه آبی فیروزه ای */
|
||||
background-color: #2D323A;
|
||||
}
|
||||
/* SpinBox اصلی */
|
||||
QSpinBox {
|
||||
background-color: #393E46;
|
||||
color: #EEEEEE;
|
||||
border: 2px solid #393E46;
|
||||
border-radius: 8px;
|
||||
padding: 6px 10px;
|
||||
padding-right: 28px; /* جا برای دکمههای بالا/پایین */
|
||||
min-width: 10px;
|
||||
}
|
||||
|
||||
/* دکمههای بالا و پایین */
|
||||
QSpinBox::up-button {
|
||||
subcontrol-origin: padding;
|
||||
subcontrol-position: top right;
|
||||
width: 22px;
|
||||
height: 16px;
|
||||
border: none;
|
||||
border-top-right-radius: 8px;
|
||||
background-color: transparent;
|
||||
}
|
||||
|
||||
QSpinBox::down-button {
|
||||
subcontrol-origin: padding;
|
||||
subcontrol-position: bottom right;
|
||||
width: 22px;
|
||||
height: 16px;
|
||||
border: none;
|
||||
border-bottom-right-radius: 8px;
|
||||
background-color: transparent;
|
||||
}
|
||||
|
||||
/* هاور دکمههای spinbox */
|
||||
QSpinBox::up-button:hover,
|
||||
QSpinBox::down-button:hover {
|
||||
background-color: #00ADB5;
|
||||
}
|
||||
|
||||
/* فلش بالا */
|
||||
QSpinBox::up-arrow {
|
||||
image: url("data:image/svg+xml,%3Csvg%20fill='%23EEEEEE'%20height='10'%20width='10'%20viewBox='0%200%2024%2024'%20xmlns='http://www.w3.org/2000/svg'%3E%3Cpath%20d='M7%2014l5-5%205%205z'/%3E%3C/svg%3E");
|
||||
width: 10px;
|
||||
height: 10px;
|
||||
}
|
||||
|
||||
/* فلش پایین */
|
||||
QSpinBox::down-arrow {
|
||||
image: url("data:image/svg+xml,%3Csvg%20fill='%23EEEEEE'%20height='10'%20width='10'%20viewBox='0%200%2024%2024'%20xmlns='http://www.w3.org/2000/svg'%3E%3Cpath%20d='M7%2010l5%205%205-5z'/%3E%3C/svg%3E");
|
||||
width: 10px;
|
||||
height: 10px;
|
||||
}</string>
|
||||
</property>
|
||||
<widget class="QWidget" name="centralwidget">
|
||||
<layout class="QVBoxLayout" name="verticalLayout_2">
|
||||
<item>
|
||||
<widget class="QSplitter" name="splitter">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Orientation::Vertical</enum>
|
||||
</property>
|
||||
<widget class="QTabWidget" name="tabWidget">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Expanding" vsizetype="MinimumExpanding">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="currentIndex">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<widget class="QWidget" name="tab">
|
||||
<attribute name="title">
|
||||
<string>Tab 1</string>
|
||||
</attribute>
|
||||
<layout class="QVBoxLayout" name="verticalLayout">
|
||||
<item>
|
||||
<spacer name="verticalSpacer_2">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Orientation::Vertical</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>20</width>
|
||||
<height>40</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
<item>
|
||||
<layout class="QHBoxLayout" name="horizontalLayout">
|
||||
<item>
|
||||
<widget class="QLabel" name="label_4">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Preferred" vsizetype="Maximum">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<family>Segoe UI</family>
|
||||
<pointsize>-1</pointsize>
|
||||
</font>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Address :</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QLineEdit" name="url_in">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Expanding" vsizetype="Maximum">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<family>Segoe UI</family>
|
||||
<pointsize>-1</pointsize>
|
||||
</font>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QSpinBox" name="prot_box">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Minimum" vsizetype="Maximum">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="maximum">
|
||||
<number>65535</number>
|
||||
</property>
|
||||
<property name="value">
|
||||
<number>8888</number>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
<item>
|
||||
<spacer name="verticalSpacer_3">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Orientation::Vertical</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>20</width>
|
||||
<height>40</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
<item>
|
||||
<layout class="QHBoxLayout" name="horizontalLayout_2">
|
||||
<item>
|
||||
<widget class="QLabel" name="label_5">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Preferred" vsizetype="Maximum">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<family>Segoe UI</family>
|
||||
<pointsize>-1</pointsize>
|
||||
</font>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Username :</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QLineEdit" name="user_in">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Expanding" vsizetype="Maximum">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<family>Segoe UI</family>
|
||||
<pointsize>-1</pointsize>
|
||||
</font>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QLabel" name="label_6">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Preferred" vsizetype="Maximum">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<family>Segoe UI</family>
|
||||
<pointsize>-1</pointsize>
|
||||
</font>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Password :</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QLineEdit" name="pass_in">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Expanding" vsizetype="Maximum">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<family>Segoe UI</family>
|
||||
<pointsize>-1</pointsize>
|
||||
</font>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
<item>
|
||||
<spacer name="verticalSpacer_4">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Orientation::Vertical</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>20</width>
|
||||
<height>40</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
<item>
|
||||
<layout class="QHBoxLayout" name="horizontalLayout_3">
|
||||
<item>
|
||||
<widget class="QLabel" name="label_7">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Preferred" vsizetype="Maximum">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<family>Segoe UI</family>
|
||||
<pointsize>-1</pointsize>
|
||||
</font>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>path bin :</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QLineEdit" name="path_bin_en">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Expanding" vsizetype="Maximum">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<family>Segoe UI</family>
|
||||
<pointsize>-1</pointsize>
|
||||
</font>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QPushButton" name="open_bin_en">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Minimum" vsizetype="Maximum">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>open</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
<item>
|
||||
<spacer name="verticalSpacer_5">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Orientation::Vertical</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>20</width>
|
||||
<height>40</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
<item>
|
||||
<layout class="QHBoxLayout" name="horizontalLayout_4">
|
||||
<item>
|
||||
<widget class="QLabel" name="label_8">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Maximum" vsizetype="Maximum">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<family>Segoe UI</family>
|
||||
<pointsize>-1</pointsize>
|
||||
</font>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>key :</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QSpinBox" name="key_box_en">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Maximum" vsizetype="Maximum">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="maximum">
|
||||
<number>9999</number>
|
||||
</property>
|
||||
<property name="value">
|
||||
<number>0</number>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<spacer name="horizontalSpacer">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Orientation::Horizontal</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>40</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
<item>
|
||||
<layout class="QGridLayout" name="gridLayout_7">
|
||||
<item row="0" column="0">
|
||||
<widget class="QPushButton" name="encoding_bt">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Maximum" vsizetype="Maximum">
|
||||
<horstretch>99</horstretch>
|
||||
<verstretch>20</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>encoding</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
<item>
|
||||
<spacer name="verticalSpacer">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Orientation::Vertical</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>20</width>
|
||||
<height>40</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
<widget class="QWidget" name="tab_2">
|
||||
<attribute name="title">
|
||||
<string>Tab 2</string>
|
||||
</attribute>
|
||||
<layout class="QVBoxLayout" name="verticalLayout_3">
|
||||
<item>
|
||||
<layout class="QHBoxLayout" name="horizontalLayout_5">
|
||||
<item>
|
||||
<widget class="QLabel" name="label_9">
|
||||
<property name="font">
|
||||
<font>
|
||||
<family>Segoe UI</family>
|
||||
<pointsize>-1</pointsize>
|
||||
</font>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>path bin :</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QLineEdit" name="path_bin_de">
|
||||
<property name="font">
|
||||
<font>
|
||||
<family>Segoe UI</family>
|
||||
<pointsize>-1</pointsize>
|
||||
</font>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QPushButton" name="open_bin_de">
|
||||
<property name="text">
|
||||
<string>open</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
<item>
|
||||
<layout class="QHBoxLayout" name="horizontalLayout_6">
|
||||
<item>
|
||||
<widget class="QLabel" name="label_10">
|
||||
<property name="font">
|
||||
<font>
|
||||
<family>Segoe UI</family>
|
||||
<pointsize>-1</pointsize>
|
||||
</font>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>path txt :</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QLineEdit" name="path_txt_de">
|
||||
<property name="font">
|
||||
<font>
|
||||
<family>Segoe UI</family>
|
||||
<pointsize>-1</pointsize>
|
||||
</font>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QPushButton" name="open_txt_de">
|
||||
<property name="text">
|
||||
<string>open</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
<item>
|
||||
<layout class="QHBoxLayout" name="horizontalLayout_7">
|
||||
<item>
|
||||
<widget class="QLabel" name="label_11">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Maximum" vsizetype="Maximum">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<family>Segoe UI</family>
|
||||
<pointsize>-1</pointsize>
|
||||
</font>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>key :</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QSpinBox" name="key_box_de">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Maximum" vsizetype="Maximum">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="maximum">
|
||||
<number>9999</number>
|
||||
</property>
|
||||
<property name="value">
|
||||
<number>0</number>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<spacer name="horizontalSpacer_2">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Orientation::Horizontal</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>40</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
<item>
|
||||
<layout class="QGridLayout" name="gridLayout">
|
||||
<item row="0" column="2">
|
||||
<spacer name="horizontalSpacer_3">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Orientation::Horizontal</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>40</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
<item row="0" column="1">
|
||||
<widget class="QPushButton" name="decoding_bt">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Maximum" vsizetype="Maximum">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>decoding</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="0" column="0">
|
||||
<spacer name="horizontalSpacer_4">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Orientation::Horizontal</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>40</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</widget>
|
||||
<widget class="QTextBrowser" name="logs">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Preferred" vsizetype="Minimum">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
</widget>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QPushButton" name="reset_bt">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Maximum" vsizetype="Maximum">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<family>Segoe UI</family>
|
||||
<pointsize>-1</pointsize>
|
||||
<bold>true</bold>
|
||||
</font>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>reset</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
<widget class="QMenuBar" name="menubar">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>736</width>
|
||||
<height>32</height>
|
||||
</rect>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QStatusBar" name="statusbar"/>
|
||||
</widget>
|
||||
<resources/>
|
||||
<connections/>
|
||||
</ui>
|
||||
@@ -0,0 +1,8 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" version="1.1">
|
||||
<defs>
|
||||
<style id="current-color-scheme" type="text/css">
|
||||
.ColorScheme-Text { color:#dfdfdf; } .ColorScheme-Highlight { color:#4285f4; } .ColorScheme-NeutralText { color:#ff9800; } .ColorScheme-PositiveText { color:#4caf50; } .ColorScheme-NegativeText { color:#f44336; }
|
||||
</style>
|
||||
</defs>
|
||||
<path style="fill:currentColor" class="ColorScheme-Text" d="M 2.25,1 1,2.25 3.1348,4.3848 C 0.863,5.8643 0,8 0,8 0,8 2,13 8,13 9.2318,13 10.279,12.776 11.189,12.439 L 13.75,15 15,13.75 Z M 8,3 C 7.3419,3 6.7403,3.0687 6.1758,3.1758 L 8,5 A 3,3 0 0 1 11,8 L 13.861,10.861 C 15.393,9.5037 16,8 16,8 16,8 14,3 8,3 Z M 5.3496,6.5996 9.4004,10.65 A 3,3 0 0 1 8,11 3,3 0 0 1 5,8 3,3 0 0 1 5.3496,6.5996 Z"/>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 784 B |
@@ -0,0 +1,14 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 22 22">
|
||||
<defs id="defs3051">
|
||||
<style type="text/css" id="current-color-scheme">
|
||||
.ColorScheme-Text {
|
||||
color:#232629;
|
||||
}
|
||||
</style>
|
||||
</defs>
|
||||
<path transform="translate(0,-1030.3622)"
|
||||
d="m 11,1033.3622 c 0,0 -2,2.6581 -8,3.3248 0,0 0,9.3333 8,12.6752 8,-3.3419 8,-12.6752 8,-12.6752 -6,-0.6667 -8,-3.3248 -8,-3.3248 z m 0,4.6667 c 1.104566,0 2,0.8954 2,2 0,0.8284 -0.511334,1.5297 -1.229166,1.8333 l 0.5625,2.8333 -2.666668,0 0.5625,-2.8333 C 9.511334,1041.5586 9,1040.8573 9,1040.0289 c 0,-1.1046 0.895434,-2 2,-2 z"
|
||||
style="fill:currentColor;fill-opacity:1;stroke:none"
|
||||
class="ColorScheme-Text"
|
||||
/>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 730 B |
@@ -0,0 +1,62 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
width="16"
|
||||
height="16"
|
||||
viewBox="0 0 16 16"
|
||||
version="1.1"
|
||||
id="svg7"
|
||||
sodipodi:docname="nemo-prefs-display-symbolic.svg"
|
||||
inkscape:version="0.92.3 (2405546, 2018-03-11)">
|
||||
<metadata
|
||||
id="metadata11">
|
||||
<rdf:RDF>
|
||||
<cc:Work
|
||||
rdf:about="">
|
||||
<dc:format>image/svg+xml</dc:format>
|
||||
<dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||
<dc:title></dc:title>
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
<sodipodi:namedview
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1"
|
||||
objecttolerance="10"
|
||||
gridtolerance="10"
|
||||
guidetolerance="10"
|
||||
inkscape:pageopacity="0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:window-width="779"
|
||||
inkscape:window-height="480"
|
||||
id="namedview9"
|
||||
showgrid="false"
|
||||
inkscape:zoom="14.75"
|
||||
inkscape:cx="8"
|
||||
inkscape:cy="8"
|
||||
inkscape:window-x="0"
|
||||
inkscape:window-y="0"
|
||||
inkscape:window-maximized="0"
|
||||
inkscape:current-layer="svg7" />
|
||||
<defs
|
||||
id="defs3">
|
||||
<style
|
||||
id="current-color-scheme"
|
||||
type="text/css">
|
||||
.ColorScheme-Text { color:#6e6e6e; } .ColorScheme-Highlight { color:#5294e2; }
|
||||
</style>
|
||||
</defs>
|
||||
<path
|
||||
style="fill:#bebebe;fill-opacity:1"
|
||||
class="ColorScheme-Text"
|
||||
d="M 8 3.0039062 C 6.4492 3.0190063 4.8879094 3.3732319 3.5371094 4.1386719 C 2.9987094 4.4892919 2.3523344 4.9421175 1.8652344 5.3984375 C 1.0987444 6.1488575 0.4427 7.0244062 0 8.0039062 C 1.2149 10.683506 3.8859187 12.6474 6.8242188 12.9375 C 8.7516188 13.15561 10.768591 12.822631 12.462891 11.869141 C 13.001291 11.518521 13.647666 11.065695 14.134766 10.609375 C 14.901256 9.858955 15.5573 8.9834063 16 8.0039062 C 14.785 5.3245062 12.114181 3.3601125 9.1757812 3.0703125 C 8.7859013 3.0248425 8.39251 3.0038963 8 3.0039062 z M 8 5.0019531 L 8 5.0039062 C 9.607 4.9683062 11.0303 6.4057062 11 8.0039062 C 11.0515 9.7703063 9.2909813 11.294844 7.5507812 10.964844 C 5.7931812 10.758504 4.5587188 8.7851344 5.1367188 7.1152344 C 5.5058788 5.8858344 6.7125 4.9866531 8 5.0019531 z M 8 7.0039062 A 1 1 0 0 0 7 8.0039062 A 1 1 0 0 0 8 9.0039062 A 1 1 0 0 0 9 8.0039062 A 1 1 0 0 0 8 7.0039062 z"
|
||||
id="path5" />
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 2.6 KiB |
Executable
+27
@@ -0,0 +1,27 @@
|
||||
try:
|
||||
type_work = input('select type: \n\t1.(encodin)\n\t2.(decoding)\n(1/2) : ')
|
||||
if type_work == '1':
|
||||
path = input('path : ')
|
||||
l = []
|
||||
with open(path, 'rb') as f:
|
||||
info = f.read()
|
||||
print(info)
|
||||
l = [i + 18 for i in info]
|
||||
# print(l)
|
||||
# l = [i - 18 for i in l]
|
||||
# print(bytes(l))
|
||||
with open('encoding_bin.bin', 'wb') as f:
|
||||
f.write(bytes(l))
|
||||
print('encoding sucsses.')
|
||||
if type_work == '2':
|
||||
path = input('path : ')
|
||||
l = []
|
||||
with open(path, 'rb') as f:
|
||||
info = f.read()
|
||||
l = [i - 18 for i in info]
|
||||
with open('decoding_bin.bin', 'wb') as f:
|
||||
f.write(bytes(l))
|
||||
print('encoding sucsses.')
|
||||
|
||||
except:
|
||||
print('error')
|
||||
Binary file not shown.
@@ -0,0 +1,28 @@
|
||||
import json
|
||||
|
||||
|
||||
class EdCoding:
|
||||
def __init__(self, key):
|
||||
self.key = key
|
||||
|
||||
def ende(self, data):
|
||||
"""
|
||||
:param data: type just dict and string
|
||||
:return:
|
||||
"""
|
||||
text = data
|
||||
if isinstance(data, dict):
|
||||
text = json.dumps(data, ensure_ascii=False)
|
||||
encoded = ''.join(
|
||||
chr(ord(c) ^ self.key) for c in text
|
||||
)
|
||||
|
||||
return encoded
|
||||
def read_file(self):
|
||||
pass
|
||||
|
||||
|
||||
coding = EdCoding(12)
|
||||
en = coding.ende({'key': 'value'})
|
||||
de = coding.ende(en)
|
||||
print(en, de, sep='\n')
|
||||
@@ -0,0 +1,85 @@
|
||||
import ed_coding
|
||||
from PyQt6.QtWidgets import QApplication, QWidget, QLabel, QVBoxLayout, QMainWindow, QProgressBar
|
||||
from PyQt6.QtCore import Qt, QTimer, QPropertyAnimation, QEasingCurve
|
||||
from PyQt6.QtGui import QFont
|
||||
from PyQt6 import uic
|
||||
from PyQt6.QtSvgWidgets import QSvgWidget
|
||||
import sys
|
||||
|
||||
class MainWindow(QMainWindow):
|
||||
def __init__(self):
|
||||
super().__init__()
|
||||
uic.loadUi("../GUI/gui.ui", self)
|
||||
|
||||
|
||||
class SplashScreen(QWidget):
|
||||
def __init__(self):
|
||||
super().__init__()
|
||||
|
||||
# --- تنظیمات ظاهری پنجره ---
|
||||
self.setFixedSize(400, 300)
|
||||
self.setWindowFlags(Qt.WindowType.FramelessWindowHint | Qt.WindowType.WindowStaysOnTopHint)
|
||||
self.setAttribute(Qt.WidgetAttribute.WA_TranslucentBackground)
|
||||
|
||||
# --- چیدمان و ویجتها ---
|
||||
layout = QVBoxLayout(self)
|
||||
layout.setContentsMargins(20, 20, 20, 20)
|
||||
self.setLayout(layout)
|
||||
|
||||
# --- ویجت برای نمایش SVG ---
|
||||
# استفاده از QSvgWidget بهترین راه برای نمایش فایل SVG است
|
||||
self.svg_widget = QSvgWidget('../GUI/network-vpn.svg', self)
|
||||
self.svg_widget.setFixedSize(150, 150) # اندازه آیکون را تنظیم کنید
|
||||
|
||||
# --- متن زیر آیکون ---
|
||||
self.title_label = QLabel("Security Network", self)
|
||||
self.title_label.setFont(QFont("Segoe UI", 20, QFont.Weight.Bold))
|
||||
|
||||
self.loading_label = QLabel("Welcome.", self)
|
||||
self.loading_label.setFont(QFont("Segoe UI", 10))
|
||||
|
||||
# افزودن ویجتها به چیدمان و وسطچین کردن آنها
|
||||
layout.addStretch() # فضای خالی در بالا
|
||||
layout.addWidget(self.svg_widget, alignment=Qt.AlignmentFlag.AlignCenter)
|
||||
layout.addWidget(self.title_label, alignment=Qt.AlignmentFlag.AlignCenter)
|
||||
layout.addWidget(self.loading_label, alignment=Qt.AlignmentFlag.AlignCenter)
|
||||
layout.addStretch() # فضای خالی در پایین
|
||||
|
||||
# --- استایلدهی (تم دارک) ---
|
||||
self.setStyleSheet("""
|
||||
QWidget {
|
||||
background-color: #0d1117; /* پسزمینه مشکی-سورمهای */
|
||||
color: #e6edf3; /* رنگ متن سفید-آبی */
|
||||
border-radius: 15px; /* گرد کردن گوشهها */
|
||||
}
|
||||
""")
|
||||
|
||||
# --- انیمیشن محو شدن (Fade-in) ---
|
||||
self.animation = QPropertyAnimation(self, b"windowOpacity")
|
||||
self.animation.setDuration(1000) # ۱ ثانیه
|
||||
self.animation.setStartValue(0.0)
|
||||
self.animation.setEndValue(1.0)
|
||||
self.animation.setEasingCurve(QEasingCurve.Type.InOutQuad)
|
||||
self.animation.start()
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
app = QApplication(sys.argv)
|
||||
|
||||
# نمایش صفحه اول (Splash Screen)
|
||||
splash = SplashScreen()
|
||||
splash.show()
|
||||
|
||||
# ساخت صفحه اصلی (ولی هنوز نشونش نمیدیم)
|
||||
main_window = MainWindow()
|
||||
|
||||
|
||||
|
||||
def show_main_window():
|
||||
splash.close()
|
||||
main_window.show()
|
||||
|
||||
|
||||
QTimer.singleShot(3000, show_main_window)
|
||||
|
||||
sys.exit(app.exec())
|
||||
@@ -0,0 +1,5 @@
|
||||
import json
|
||||
d = {"key": "value",
|
||||
'key2': 'value2',
|
||||
'key3': 'value3'}
|
||||
print(json.dumps(d, indent=4))
|
||||
Reference in New Issue
Block a user