Commit Graph

291 Commits

Author SHA1 Message Date
70118201b0 feat(silo): replace modal new-item dialog with MDI pre-document tab
Some checks failed
Build and Test / build (pull_request) Failing after 15m49s
Update silo submodule to include the new pre-document tab for item
creation.  Silo_New now opens an MDI tab instead of a blocking modal
dialog, allowing multiple items to be prepared in parallel.
2026-02-11 15:15:08 -06:00
forbes
bf637af4e4 fix: eliminate window flickering and Sketcher icon clipping
Some checks failed
Build and Test / build (pull_request) Has been cancelled
- Replace statusBar()->setStyleSheet() with QPalette color changes
  in MainWindow::showStatus() and clearStatus(). The setStyleSheet()
  call triggered full style recalculation on every status message
  (selection, pan, tooltip hover), causing the entire window to flicker.

- Add min-height: 24px to QListView::item in KindredCreate.qss so
  Sketcher constraint and element icons (24x24) are not clipped by
  the 4px padding.
2026-02-10 19:28:22 -06:00
8b2ce4b73a feat: native Qt start panel + kindred:// URL scheme (#167)
Some checks failed
Build and Test / build (pull_request) Has been cancelled
Replace QWebEngineView-based start page with a rich native Qt panel.
QWebEngineView (PySide6.QtWebEngineWidgets) is not available on
conda-forge for Qt6, so the start page was always falling back to a
bare offline widget.

Start panel (silo_start.py):
- Database Items list with search from Silo REST API
- Recent Files from FreeCAD preferences
- Real-time Activity Feed via SSE (SiloEventListener)
- Context menu: Open in Create, Open in Browser, Copy Part Number
- 'Open in Browser' button via QDesktopServices
- Catppuccin Mocha dark theme

kindred:// URL scheme:
- Desktop file registers x-scheme-handler/kindred MIME type
- MainWindow::processMessages() dispatches kindred:// URLs to Python
- handle_kindred_url() in silo_commands.py opens items by part number
- InitGui.py handles kindred:// URLs on cold start via QTimer

Closes #167
2026-02-10 10:30:50 -06:00
forbes
bb3f3ac6d6 UI: dock task panel right, remove non-Kindred themes
- Move ComboView default dock position from Left to Right
- Remove FreeCAD Classic, FreeCAD Light, FreeCAD Dark, and Dark behave
  theme packs, keeping only KindredCreate (Catppuccin Mocha)
2026-01-29 14:16:45 -06:00
graelo
208504c9ea fix(macos): check quicklook registration state before registering 2026-01-16 22:25:55 +01:00
pre-commit-ci[bot]
14b4ab01bf [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
2026-01-15 08:57:47 +01:00
graelo
4039977406 feat(macos): add quicklook extensions 2026-01-15 08:57:47 +01:00
tritao
40a9f46d71 Base: Remove Boost-based signals and switch to FastSignals. 2026-01-07 21:16:16 +00:00
Syres916
11a0ace103 Merge pull request #25809 from Syres916/HotFix_For_Win_and_Wayland_For_First_Run
[Gui] Hotfix for correcting main window position on first run and Safe Mode on Windows and Wayland
2025-12-08 11:18:58 -06:00
Rehan Ahmed
703ae570ab Fix case inconsistencies (#24812)
* Fix case inconsistency - Input Hints

* Fix case inconsistency - Quick Measure

* Fix case inconsistency - Navigation Indicator

* Fix case inconsistency - BIM Status Widget

* Remove .ts translation file changes

---------

Co-authored-by: Roy-043 <70520633+Roy-043@users.noreply.github.com>
2025-11-13 20:19:19 +00:00
pre-commit-ci[bot]
9fe130cd73 All: Reformat according to new standard 2025-11-11 13:49:01 +01:00
chris
ebfab06963 freecad issue #25069 fix issue with selecting the plot tab / window from the menu bar 2025-11-09 17:20:15 -06:00
pjcreath
3f24607dc7 Gui: process remaining deferredDelete events before stopping event loop 2025-11-07 13:18:47 +01:00
PaddleStroke
de2ae61664 Image: enable pasting image data directly (#24711)
* Image: enable pasting image data directly

* Update MainWindow.cpp
2025-10-20 17:59:49 +02:00
Benjamin Nauck
ca62f0beee Gui: Store visibility of status labels (quick measure and input hints) 2025-10-04 21:48:48 +02:00
Benjamin Nauck
2e850f0611 Gui: Only measure with Quick Measure if showing in status bar 2025-10-04 21:48:48 +02:00
Benjamin Nauck
1b38c6bb00 Gui: Make it possible to hide/show info labels in status bar 2025-10-04 21:48:23 +02:00
Markus Reitböck
a72a0d6405 Gui: use CMake to generate precompiled headers on all platforms
"Professional CMake" book suggest the following:

"Targets should build successfully with or without compiler support for precompiled headers. It
should be considered an optimization, not a requirement. In particular, do not explicitly include a
precompile header (e.g. stdafx.h) in the source code, let CMake force-include an automatically
generated precompile header on the compiler command line instead. This is more portable across
the major compilers and is likely to be easier to maintain. It will also avoid warnings being
generated from certain code checking tools like iwyu (include what you use)."

Therefore, removed the "#include <PreCompiled.h>" from sources, also
there is no need for the "#ifdef _PreComp_" anymore
2025-09-14 09:47:03 +02:00
Kacper Donat
238975a455 Gui: Restore proper object names for panels 2025-08-11 18:40:25 +02:00
Max Wilfinger
1850c5dc0f Fix missed strings for UI consistency
Fix ellipsis rendering
2025-08-08 06:37:59 -05:00
Max Wilfinger
6692dacc0a Gui: Update UI strings for consistency
Closes: #22135
2025-08-04 20:14:45 +02:00
jffmichi
c27c7b63cd Gui: clean up and fix active window handling 2025-07-21 00:44:18 +02:00
jffmichi
05045d6f10 Gui: enable dock/undock/fullscreen for all MDI widgets 2025-07-21 00:44:18 +02:00
Chris Hennes
2b03016cae Gui: Implicit capture of this is deprecated 2025-06-22 17:03:55 -05:00
Max Wilfinger
d59f404267 Gui: Center notification label and disable show report view by default (#21872)
* Gui: Center notification label and disable show report view by default

* Stylesheet: min-width: 0 for QStatusBar QPushButton
2025-06-16 11:03:58 -05:00
wmayer
4cfc77d9ee Gui: Move define HAS_QTBUG_129596 to separate header file 2025-05-30 18:04:33 +02:00
Kacper Donat
aa47949f80 Gui: Add support for hints in status bar 2025-05-21 17:42:45 +02:00
xtemp09
30498b7b48 Gui: Add switching to the document when closing FreeCAD (#21135)
* Add switching to the document when closing FreeCAD

Closes #20997

* Some update of language

* camelCase every variable name used
2025-05-08 23:59:11 +02:00
bofdahof
ba2c2ca5ad Console: rename PascalCase named methods to camelCase 2025-05-06 17:50:21 +02:00
Ladislav Michl
9683cf1e4f Base: rename Exception's PascalCase methods to camelCase 2025-05-05 23:50:01 +02:00
Chris Hennes
f55063855a Merge pull request #20540 from 3x380V/cleanup-schemas-management
Simplify UnitsSchemas management
2025-05-05 10:43:27 -05:00
João Neves
05f0c606d5 Core: Fixed a bug where an empty document disappears (#20554)
* Core: Fixed a bug where an empty document disappears

Created a flag named autoCreated to distinguish an autoCreated
document created in the startup from a manually document.
Implemented a setter and a getter for this new flag.
Added a codition that verifies if a document is autoCreated
when opening another document to close it in the correct case.
Implemented unit tests for theses cases. Fixes #19868.

Signed-off-by: João Neves <joao.antonio.neves@tecnico.ulisboa.pt>

* Tests: Fix failing auto-created document tests

Signed-off-by: João Neves <joao.antonio.neves@tecnico.ulisboa.pt>

* Tests: moved created tests to the existing Document test framework.

Signed-off-by: João Neves <joao.antonio.neves@tecnico.ulisboa.pt>

---------

Signed-off-by: João Neves <joao.antonio.neves@tecnico.ulisboa.pt>
2025-04-28 10:46:52 -05:00
bofdahof
353acbb27b Base: simplify UnitsSchemas management
Fixes: Maintaining schemas is difficult and error-prone

- Facilitate easy schemas add, remove, change, etc.
- Remove 14 files containing approx 2,190 lines of if/else code and data
- Place data in one file (UnitsSchemasData.h) using a normalized structure (including special functions)
- Isolate and simplify data operations (code)
- Remove schemas enum to keep data independent of code
- Separate responsibilities: Specifications, data, schemas, schema
- Add schema data 'isDefault'
- Add schema data name
- Prefer algorithms to raw loops
- Add schemas unit tests
- Tweak quantity unit tests
2025-04-27 00:45:54 +02:00
Kacper Donat
e18c88bd23 Misc: Replace dynamic_cast with qobject_cast 2025-04-26 14:23:25 +02:00
xtemp09
d7fe28af7b Make some context menu actions translatable (#20401)
* Make some context menu actions translatable

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025-04-07 08:43:04 -05:00
Andrea
2d4ab5af20 REMOVE old QT<= 5.14 code
Ubuntu 22.04  use qt 1.15.3.
In the code is still used qt code <5.10.
A cleanup was done by removing qT code version used in ubuntu 18.04.
2025-03-05 09:32:06 +01:00
Chris Hennes
1a2070c36f Merge pull request #19636 from kadet1090/color-in-base
Base: Move App::Color to Base
2025-03-02 16:36:40 -06:00
Joao Matos
80d4cf9f40 Gui: Remove QtOpenGL.h. 2025-02-25 23:03:51 +00:00
Kacper Donat
13fbab9e42 Base: Move App::Color to Base
Every basic data type is stored in Base module, color is standing out as
one that does not. Moving it to Base opens possibilities to integrate it
better with the rest of FreeCAD.
2025-02-17 21:10:26 +01:00
Benjamin Bræstrup Sayoc
eeca005a95 Gui: use QStringLiteral 2 2025-02-16 19:52:30 +01:00
Benjamin Bræstrup Sayoc
8d2d0a47f4 Gui: Use QStringLiteral 2025-02-10 18:34:57 +01:00
Chris Hennes
d242ac706e Gui: Migrate to using App::Application::getNameWithVersion 2025-02-03 12:05:16 -05:00
Syres916
e58388a222 [Gui] Fix Close without Saving button size (#19342) 2025-02-02 23:24:27 +01:00
dzid26
3a24e87492 Gui: show tooltips when window is not focused 2025-01-27 17:43:57 +01:00
tritao
4c93a14fea Gui: Reorganize the dialog files into a top Dialogs folder. 2025-01-24 16:28:02 -06:00
Tobias Frost
460da406f8 spelling fixes (#18688)
* Fixes spelling of "Allow to" to "Allow one to"

and those variants:
Allows to -> Allows one to
allow to -> allow one to
allows to -> allows one to

* Fix "Let's -> Lets"

(and lower case variant.)

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* Update src/3rdParty/salomesmesh/inc/MED_Wrapper.hxx

Co-authored-by: Chris Hennes <chennes@pioneerlibrarysystem.org>

* Update src/Base/PyObjectBase.cpp
Update src/App/ExtensionContainer.h
Update src/App/PropertyContainer.h

Co-authored-by: Chris Hennes <chennes@pioneerlibrarysystem.org>

* Use gerund in user-facing texts.

* Use gerund for two more user-facing strings.

Co-authored-by: Chris Hennes <chennes@pioneerlibrarysystem.org>

* Update src/Mod/Fem/App/FemMeshShapeNetgenObject.cpp

Co-authored-by: Chris Hennes <chennes@pioneerlibrarysystem.org>

* Update src/Mod/Fem/App/FemMeshShapeNetgenObject.cpp

Co-authored-by: Chris Hennes <chennes@pioneerlibrarysystem.org>

* Update src/Mod/Fem/App/FemMeshShapeNetgenObject.cpp

Co-authored-by: Chris Hennes <chennes@pioneerlibrarysystem.org>

---------

Co-authored-by: Tobias Frost <tobi@debian.org>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Chris Hennes <chennes@pioneerlibrarysystem.org>
2025-01-13 11:22:20 -06:00
mosfet80
5e9f2cf6ad Clean MainWindow.cpp
Removed unused code
2024-11-30 14:13:46 +01:00
Jiří Pinkava
edef0ba3c0 Gui: remove unused MDITabbar and MainWindowTabBar classes 2024-11-29 21:20:57 +01:00
Ladislav Michl
37e04a8775 Gui: refactor Splashscreen
Move About dialog class to the separate source file.
2024-11-12 07:59:44 +01:00
Ladislav Michl
3f870deb51 Gui: refactor hiddenMainWindow usage 2024-11-12 07:53:38 +01:00