mirror of
				https://github.com/RGBCube/serenity
				synced 2025-10-31 06:02:44 +00:00 
			
		
		
		
	LibGUI: Add getter/setter for GUI::Window modified state
This state lives in WindowServer and has no local copy in the client process for now. This may turn out to be a performance issue, and if it does we can easily cache it.
This commit is contained in:
		
							parent
							
								
									492464f4c1
								
							
						
					
					
						commit
						2fa765bbd5
					
				
					 2 changed files with 18 additions and 1 deletions
				
			
		|  | @ -1084,4 +1084,18 @@ void Window::set_menubar(RefPtr<Menubar> menubar) | |||
|     } | ||||
| } | ||||
| 
 | ||||
| bool Window::is_modified() const | ||||
| { | ||||
|     if (!m_window_id) | ||||
|         return false; | ||||
|     return WindowServerConnection::the().send_sync<Messages::WindowServer::IsWindowModified>(m_window_id)->modified(); | ||||
| } | ||||
| 
 | ||||
| void Window::set_modified(bool modified) | ||||
| { | ||||
|     if (!m_window_id) | ||||
|         return; | ||||
|     WindowServerConnection::the().post_message(Messages::WindowServer::SetWindowModified(m_window_id, modified)); | ||||
| } | ||||
| 
 | ||||
| } | ||||
|  |  | |||
|  | @ -1,5 +1,5 @@ | |||
| /*
 | ||||
|  * Copyright (c) 2018-2020, Andreas Kling <kling@serenityos.org> | ||||
|  * Copyright (c) 2018-2021, Andreas Kling <kling@serenityos.org> | ||||
|  * | ||||
|  * SPDX-License-Identifier: BSD-2-Clause | ||||
|  */ | ||||
|  | @ -29,6 +29,9 @@ public: | |||
| 
 | ||||
|     static Window* from_window_id(int); | ||||
| 
 | ||||
|     bool is_modified() const; | ||||
|     void set_modified(bool); | ||||
| 
 | ||||
|     bool is_modal() const { return m_modal; } | ||||
|     void set_modal(bool); | ||||
| 
 | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Andreas Kling
						Andreas Kling