Skip to content

A Frameless Window / Title bar written in C++ and built for Qt projects.

License

Notifications You must be signed in to change notification settings

Yet-Zio/FramelessWindow

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

FramelessWindow

A frameless window / title bar written in C++ and built for Qt projects.

The design is loosely based on CustomWindow.

However, resizing and other methods are implemented through Qt::WA_Hover or QHoverEvent instead of mouse move related events.

Features

  • Minimize
  • Maximize and restore
  • Close
  • Roll up and roll down
  • Move support
  • Menubar support
  • Resizing from all corners
  • Resizing from all edges
  • Fullscreen mode
  • Works on Qt 6 and above
  • Edgehit handling(kinda messy)

Style

The frameless window consists of a title bar, central widget and bottom bar, all inheriting QWidget within various layouts(ui).

The look and feel of the window is derived from the "framelesswindow.css" file, mostly pointing towards a dark theme.

Documentation

The frameless window class and its methods have been clearly documented in the "framelesswindow.h" header file with doxygen format. A PDF file is also provided in docs directory.

Examples

An example on handling a QMainWindow/QWidget with menubar is provided in the example folder.

Demo

Here are some videos of frameless window running on several Qt supported systems:

On Windows 11

framelessdemo.mp4

On Ubuntu 21.10

framelessdemoubuntu.mp4

macOS(not tested yet)

If anyone possibly tested it on mac, open an issue here in the repo with a demo video, providing any insights on issues if faced. Please also include necessary details like version information, etc.