mirror of https://github.com/aseprite/aseprite.git
				
				
				
			
		
			
	
	
		
			36 lines
		
	
	
		
			788 B
		
	
	
	
		
			C++
		
	
	
	
		
		
			
		
	
	
			36 lines
		
	
	
		
			788 B
		
	
	
	
		
			C++
		
	
	
	
|  | // Aseprite
 | ||
|  | // Copyright (C) 2018  David Capello
 | ||
|  | //
 | ||
|  | // This program is distributed under the terms of
 | ||
|  | // the End-User License Agreement for Aseprite.
 | ||
|  | 
 | ||
|  | #ifdef HAVE_CONFIG_H
 | ||
|  | #include "config.h"
 | ||
|  | #endif
 | ||
|  | 
 | ||
|  | #include "app/ui/optional_alert.h"
 | ||
|  | 
 | ||
|  | #include "app/i18n/strings.h"
 | ||
|  | #include "ui/alert.h"
 | ||
|  | #include "ui/button.h"
 | ||
|  | 
 | ||
|  | namespace app { | ||
|  | 
 | ||
|  | // static
 | ||
|  | int OptionalAlert::show(Option<bool>& option, | ||
|  |                         const int optionWhenDisabled, | ||
|  |                         const std::string& msg) | ||
|  | { | ||
|  |   if (!option()) | ||
|  |     return optionWhenDisabled; | ||
|  | 
 | ||
|  |   ui::AlertPtr alert(ui::Alert::create(msg)); | ||
|  |   ui::CheckBox* cb = alert->addCheckBox(Strings::general_dont_show()); | ||
|  |   const int ret = alert->show(); | ||
|  |   if (ret == optionWhenDisabled) | ||
|  |     option(!cb->isSelected()); | ||
|  |   return ret; | ||
|  | } | ||
|  | 
 | ||
|  | } // namespace app
 |