diff --git a/.gitignore b/.gitignore index 9fefdaa..43b73df 100644 --- a/.gitignore +++ b/.gitignore @@ -173,5 +173,20 @@ Temporary Items # iCloud generated files *.icloud +CMakeLists.txt.user +CMakeCache.txt +CMakeFiles +CMakeScripts +Testing +Makefile +cmake_install.cmake +install_manifest.txt +compile_commands.json +CTestTestfile.cmake +_deps + .cache +.cmake .vscode +.qt +.qtc diff --git a/CMakeLists.txt b/CMakeLists.txt index 0b71fc7..7e8d06f 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -6,9 +6,9 @@ set(CMAKE_AUTOMOC ON) set(CMAKE_AUTORCC ON) set(CMAKE_CXX_STANDARD 11) set(CMAKE_CXX_STANDARD_REQUIRED ON) -set(CMAKE_PREFIX_PATH "/opt/homebrew/opt/qt@5") +set(CMAKE_PREFIX_PATH "/opt/homebrew/opt/qt") -find_package(Qt5 COMPONENTS Core Gui Widgets REQUIRED) +find_package(Qt6 COMPONENTS Core Gui Widgets REQUIRED) include_directories( . @@ -22,4 +22,4 @@ set (SRCS add_executable(${CMAKE_PROJECT_NAME} ${SRCS}) -target_link_libraries(${CMAKE_PROJECT_NAME} PRIVATE Qt5::Core Qt5::Gui Qt5::Widgets) +target_link_libraries(${CMAKE_PROJECT_NAME} PRIVATE Qt6::Core Qt6::Gui Qt6::Widgets) diff --git a/README.md b/README.md index 21140df..1acc906 100644 --- a/README.md +++ b/README.md @@ -3,7 +3,7 @@ ![code size](https://img.shields.io/github/languages/code-size/ivaquero/floating-clock.svg) ![repo size](https://img.shields.io/github/repo-size/ivaquero/floating-clock.svg) -This project aims to build a cross-platform floating clock based on PySide6 & Qt5. +This project aims to build a cross-platform floating clock based on PySide6 & Qt6. ## Motivation diff --git a/clock b/clock new file mode 100755 index 0000000..891c9e5 Binary files /dev/null and b/clock differ diff --git a/clock.cpp b/clock.cpp index e1ae518..7d530b8 100644 --- a/clock.cpp +++ b/clock.cpp @@ -1,49 +1,49 @@ #include "clock.h" -Clock::Clock(QWidget *parent) : QWidget{parent}, pressed(false) { +Clock::Clock(QWidget *parent) + : QWidget{parent} + , pressed(false) +{ + // geometry of Main Window (x, y, width, height) + setGeometry(1100, 800, 180, 60); - // geometry of Main Window (x, y, width, height) - setGeometry(1100, 800, 180, 60); + // hide frame + setWindowFlag(Qt::WindowStaysOnTopHint, true); + setWindowFlag(Qt::FramelessWindowHint, true); + setAttribute(Qt::WA_TranslucentBackground); - // hide frame - setWindowFlag(Qt::WindowStaysOnTopHint, true); - setWindowFlag(Qt::FramelessWindowHint, true); - setAttribute(Qt::WA_TranslucentBackground); + // clock object + QTimer *clock = new QTimer(this); + connect(clock, &QTimer::timeout, this, &Clock::showTime); + clock->start(1000); // update the clock per second + show(); - // clock object - QTimer *clock = new QTimer(this); - connect(clock, &QTimer::timeout, this, &Clock::showTime); - clock->start(1000); // update the clock per second - show(); + settings = new QSettings(QString("%1/config.ini").arg(QCoreApplication::applicationDirPath()), + QSettings::IniFormat); - settings = new QSettings( - QString("%1/config.ini").arg(QCoreApplication::applicationDirPath()), - QSettings::IniFormat); + font = QFont(); + font.setFamily(settings->value("USER/FONT_FAMILY").toString()); + font.setPointSize(settings->value("USER/FONT_SIZE").toInt()); - font = QFont(); - font.setFamily(settings->value("USER/FONT_FAMILY").toString()); - font.setPointSize(settings->value("USER/FONT_SIZE").toInt()); + // load settings + settings = new QSettings(QString("%1/config.ini").arg(QCoreApplication::applicationDirPath()), + QSettings::IniFormat); - // load settings - settings = new QSettings( - QString("%1/config.ini").arg(QCoreApplication::applicationDirPath()), - QSettings::IniFormat); + // font object + font = QFont(); + font.setFamily(settings->value("DEFAULT/FONT_FAMILY").toString()); + font_size_step = settings->value("USER/FONT_SIZE_STEP").toInt(); - // font object - font = QFont(); - font.setFamily(settings->value("DEFAULT/FONT_FAMILY").toString()); - font_size_step = settings->value("USER/FONT_SIZE_STEP").toInt(); + // label object + label = new QLabel(); + label->setAlignment(Qt::AlignCenter); - // label object - label = new QLabel(); - label->setAlignment(Qt::AlignCenter); + // layout + QVBoxLayout *layout = new QVBoxLayout(this); + layout->addWidget(label); + setLayout(layout); - // layout - QVBoxLayout *layout = new QVBoxLayout(this); - layout->addWidget(label); - setLayout(layout); - - reloadUI(); + reloadUI(); } void Clock::showTime() { diff --git a/clock_autogen/mocs_compilation.cpp b/clock_autogen/mocs_compilation.cpp new file mode 100644 index 0000000..31d7173 --- /dev/null +++ b/clock_autogen/mocs_compilation.cpp @@ -0,0 +1,2 @@ +// This file is autogenerated. Changes will be overwritten. +#include "EWIEGA46WW/moc_clock.cpp" diff --git a/qtcsettings.cmake b/qtcsettings.cmake new file mode 100644 index 0000000..eb7868d --- /dev/null +++ b/qtcsettings.cmake @@ -0,0 +1,13 @@ +# This file is managed by Qt Creator, do not edit! + +set("CMAKE_GENERATOR" "Unix Makefiles" CACHE "STRING" "" FORCE) +set("CMAKE_BUILD_TYPE" "Debug" CACHE "STRING" "" FORCE) +set("CMAKE_PROJECT_INCLUDE_BEFORE" "/Users/integzz/Documents/proj-clock/.qtc/package-manager/auto-setup.cmake" CACHE "FILEPATH" "" FORCE) +set("QT_QMAKE_EXECUTABLE" "/opt/homebrew/opt/qt/bin/qmake" CACHE "FILEPATH" "" FORCE) +set("CMAKE_PREFIX_PATH" "/opt/homebrew" CACHE "PATH" "" FORCE) +set("CMAKE_C_COMPILER" "/usr/bin/clang" CACHE "FILEPATH" "" FORCE) +set("CMAKE_CXX_COMPILER" "/usr/bin/clang++" CACHE "FILEPATH" "" FORCE) +set("CMAKE_CXX_FLAGS_INIT" "" CACHE "STRING" "" FORCE) +set("CMAKE_PREFIX_PATH" "/opt/homebrew" CACHE "PATH" "" FORCE) +unset("CMAKE_PROJECT_INCLUDE_BEFORE" CACHE) +set("QT_QMAKE_EXECUTABLE" "/opt/homebrew/bin/qmake" CACHE "FILEPATH" "" FORCE) \ No newline at end of file