aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/linden
diff options
context:
space:
mode:
Diffstat (limited to 'linden')
-rw-r--r--linden/indra/newview/llpreviewnotecard.cpp221
-rw-r--r--linden/indra/newview/llpreviewnotecard.h20
-rw-r--r--linden/indra/newview/llpreviewscript.cpp4
-rw-r--r--linden/indra/newview/skins/default/xui/en-us/floater_preview_notecard.xml43
-rw-r--r--linden/indra/newview/skins/default/xui/en-us/floater_preview_notecard_keep_discard.xml80
5 files changed, 339 insertions, 29 deletions
diff --git a/linden/indra/newview/llpreviewnotecard.cpp b/linden/indra/newview/llpreviewnotecard.cpp
index 04f8004..4260434 100644
--- a/linden/indra/newview/llpreviewnotecard.cpp
+++ b/linden/indra/newview/llpreviewnotecard.cpp
@@ -60,6 +60,7 @@
60#include "llviewercontrol.h" // gSavedSettings 60#include "llviewercontrol.h" // gSavedSettings
61#include "llappviewer.h" // app_abort_quit() 61#include "llappviewer.h" // app_abort_quit()
62#include "lllineeditor.h" 62#include "lllineeditor.h"
63#include "llmenugl.h"
63#include "lluictrlfactory.h" 64#include "lluictrlfactory.h"
64 65
65///---------------------------------------------------------------------------- 66///----------------------------------------------------------------------------
@@ -146,6 +147,8 @@ LLPreviewNotecard::LLPreviewNotecard(const std::string& name,
146 editor->setSourceID(item_id); 147 editor->setSourceID(item_id);
147 editor->setHandleEditKeysDirectly(TRUE); 148 editor->setHandleEditKeysDirectly(TRUE);
148 } 149 }
150
151 initMenu();
149} 152}
150 153
151LLPreviewNotecard::~LLPreviewNotecard() 154LLPreviewNotecard::~LLPreviewNotecard()
@@ -659,4 +662,222 @@ LLTextEditor* LLPreviewNotecard::getEditor()
659 return getChild<LLViewerTextEditor>("Notecard Editor"); 662 return getChild<LLViewerTextEditor>("Notecard Editor");
660} 663}
661 664
665void LLPreviewNotecard::initMenu()
666{
667 LLMenuItemCallGL* menuItem = getChild<LLMenuItemCallGL>("Undo");
668 menuItem->setMenuCallback(onUndoMenu, this);
669 menuItem->setEnabledCallback(enableUndoMenu);
670
671 menuItem = getChild<LLMenuItemCallGL>("Redo");
672 menuItem->setMenuCallback(onRedoMenu, this);
673 menuItem->setEnabledCallback(enableRedoMenu);
674
675 menuItem = getChild<LLMenuItemCallGL>("Cut");
676 menuItem->setMenuCallback(onCutMenu, this);
677 menuItem->setEnabledCallback(enableCutMenu);
678
679 menuItem = getChild<LLMenuItemCallGL>("Copy");
680 menuItem->setMenuCallback(onCopyMenu, this);
681 menuItem->setEnabledCallback(enableCopyMenu);
682
683 menuItem = getChild<LLMenuItemCallGL>("Paste");
684 menuItem->setMenuCallback(onPasteMenu, this);
685 menuItem->setEnabledCallback(enablePasteMenu);
686
687 menuItem = getChild<LLMenuItemCallGL>("Select All");
688 menuItem->setMenuCallback(onSelectAllMenu, this);
689 menuItem->setEnabledCallback(enableSelectAllMenu);
690
691 menuItem = getChild<LLMenuItemCallGL>("Deselect");
692 menuItem->setMenuCallback(onDeselectMenu, this);
693 menuItem->setEnabledCallback(enableDeselectMenu);
694
695 menuItem = getChild<LLMenuItemCallGL>("Search / Replace...");
696 menuItem->setMenuCallback(onSearchMenu, this);
697 menuItem->setEnabledCallback(NULL);
698}
699
700// static
701void LLPreviewNotecard::onSearchMenu(void* userdata)
702{
703 LLPreviewNotecard* self = (LLPreviewNotecard*)userdata;
704 if (self)
705 {
706 LLViewerTextEditor* editor = self->getChild<LLViewerTextEditor>("Notecard Editor");
707 if (editor)
708 {
709 LLFloaterSearchReplace::show(editor);
710 }
711 }
712}
713
714// static
715void LLPreviewNotecard::onUndoMenu(void* userdata)
716{
717 LLPreviewNotecard* self = (LLPreviewNotecard*)userdata;
718 if (self)
719 {
720 LLViewerTextEditor* editor = self->getChild<LLViewerTextEditor>("Notecard Editor");
721 if (editor)
722 {
723 editor->undo();
724 }
725 }
726}
727
728// static
729void LLPreviewNotecard::onRedoMenu(void* userdata)
730{
731 LLPreviewNotecard* self = (LLPreviewNotecard*)userdata;
732 if (self)
733 {
734 LLViewerTextEditor* editor = self->getChild<LLViewerTextEditor>("Notecard Editor");
735 if (editor)
736 {
737 editor->redo();
738 }
739 }
740}
741
742// static
743void LLPreviewNotecard::onCutMenu(void* userdata)
744{
745 LLPreviewNotecard* self = (LLPreviewNotecard*)userdata;
746 if (self)
747 {
748 LLViewerTextEditor* editor = self->getChild<LLViewerTextEditor>("Notecard Editor");
749 if (editor)
750 {
751 editor->cut();
752 }
753 }
754}
755
756// static
757void LLPreviewNotecard::onCopyMenu(void* userdata)
758{
759 LLPreviewNotecard* self = (LLPreviewNotecard*)userdata;
760 if (self)
761 {
762 LLViewerTextEditor* editor = self->getChild<LLViewerTextEditor>("Notecard Editor");
763 if (editor)
764 {
765 editor->copy();
766 }
767 }
768}
769
770// static
771void LLPreviewNotecard::onPasteMenu(void* userdata)
772{
773 LLPreviewNotecard* self = (LLPreviewNotecard*)userdata;
774 if (self)
775 {
776 LLViewerTextEditor* editor = self->getChild<LLViewerTextEditor>("Notecard Editor");
777 if (editor)
778 {
779 editor->paste();
780 }
781 }
782}
783
784// static
785void LLPreviewNotecard::onSelectAllMenu(void* userdata)
786{
787 LLPreviewNotecard* self = (LLPreviewNotecard*)userdata;
788 if (self)
789 {
790 LLViewerTextEditor* editor = self->getChild<LLViewerTextEditor>("Notecard Editor");
791 if (editor)
792 {
793 editor->selectAll();
794 }
795 }
796}
797
798// static
799void LLPreviewNotecard::onDeselectMenu(void* userdata)
800{
801 LLPreviewNotecard* self = (LLPreviewNotecard*)userdata;
802 if (self)
803 {
804 LLViewerTextEditor* editor = self->getChild<LLViewerTextEditor>("Notecard Editor");
805 if (editor)
806 {
807 editor->deselect();
808 }
809 }
810}
811
812// static
813BOOL LLPreviewNotecard::enableUndoMenu(void* userdata)
814{
815 LLPreviewNotecard* self = (LLPreviewNotecard*)userdata;
816 if (!self) return FALSE;
817 LLViewerTextEditor* editor = self->getChild<LLViewerTextEditor>("Notecard Editor");
818 if (!editor) return FALSE;
819 return editor->canUndo();
820}
821
822// static
823BOOL LLPreviewNotecard::enableRedoMenu(void* userdata)
824{
825 LLPreviewNotecard* self = (LLPreviewNotecard*)userdata;
826 if (!self) return FALSE;
827 LLViewerTextEditor* editor = self->getChild<LLViewerTextEditor>("Notecard Editor");
828 if (!editor) return FALSE;
829 return editor->canRedo();
830}
831
832// static
833BOOL LLPreviewNotecard::enableCutMenu(void* userdata)
834{
835 LLPreviewNotecard* self = (LLPreviewNotecard*)userdata;
836 if (!self) return FALSE;
837 LLViewerTextEditor* editor = self->getChild<LLViewerTextEditor>("Notecard Editor");
838 if (!editor) return FALSE;
839 return editor->canCut();
840}
841
842// static
843BOOL LLPreviewNotecard::enableCopyMenu(void* userdata)
844{
845 LLPreviewNotecard* self = (LLPreviewNotecard*)userdata;
846 if (!self) return FALSE;
847 LLViewerTextEditor* editor = self->getChild<LLViewerTextEditor>("Notecard Editor");
848 if (!editor) return FALSE;
849 return editor->canCopy();
850}
851
852// static
853BOOL LLPreviewNotecard::enablePasteMenu(void* userdata)
854{
855 LLPreviewNotecard* self = (LLPreviewNotecard*)userdata;
856 if (!self) return FALSE;
857 LLViewerTextEditor* editor = self->getChild<LLViewerTextEditor>("Notecard Editor");
858 if (!editor) return FALSE;
859 return editor->canPaste();
860}
861
862// static
863BOOL LLPreviewNotecard::enableSelectAllMenu(void* userdata)
864{
865 LLPreviewNotecard* self = (LLPreviewNotecard*)userdata;
866 if (!self) return FALSE;
867 LLViewerTextEditor* editor = self->getChild<LLViewerTextEditor>("Notecard Editor");
868 if (!editor) return FALSE;
869 return editor->canSelectAll();
870}
871
872// static
873BOOL LLPreviewNotecard::enableDeselectMenu(void* userdata)
874{
875 LLPreviewNotecard* self = (LLPreviewNotecard*)userdata;
876 if (!self) return FALSE;
877 LLViewerTextEditor* editor = self->getChild<LLViewerTextEditor>("Notecard Editor");
878 if (!editor) return FALSE;
879 return editor->canDeselect();
880}
881
882
662// EOF 883// EOF
diff --git a/linden/indra/newview/llpreviewnotecard.h b/linden/indra/newview/llpreviewnotecard.h
index 6563acd..75d1a50 100644
--- a/linden/indra/newview/llpreviewnotecard.h
+++ b/linden/indra/newview/llpreviewnotecard.h
@@ -46,6 +46,7 @@
46class LLTextEditor; 46class LLTextEditor;
47class LLViewerTextEditor; 47class LLViewerTextEditor;
48class LLButton; 48class LLButton;
49class LLMenuBarGL;
49 50
50class LLPreviewNotecard : public LLPreview 51class LLPreviewNotecard : public LLPreview
51{ 52{
@@ -108,6 +109,25 @@ protected:
108 109
109 virtual const char *getTitleName() const { return "Note"; } 110 virtual const char *getTitleName() const { return "Note"; }
110 111
112 void initMenu();
113
114 static void onSearchMenu(void* userdata);
115 static void onUndoMenu(void* userdata);
116 static void onRedoMenu(void* userdata);
117 static void onCutMenu(void* userdata);
118 static void onCopyMenu(void* userdata);
119 static void onPasteMenu(void* userdata);
120 static void onSelectAllMenu(void* userdata);
121 static void onDeselectMenu(void* userdata);
122
123 static BOOL enableUndoMenu(void* userdata);
124 static BOOL enableRedoMenu(void* userdata);
125 static BOOL enableCutMenu(void* userdata);
126 static BOOL enableCopyMenu(void* userdata);
127 static BOOL enablePasteMenu(void* userdata);
128 static BOOL enableSelectAllMenu(void* userdata);
129 static BOOL enableDeselectMenu(void* userdata);
130
111protected: 131protected:
112 LLViewerTextEditor* mEditor; 132 LLViewerTextEditor* mEditor;
113 LLButton* mSaveBtn; 133 LLButton* mSaveBtn;
diff --git a/linden/indra/newview/llpreviewscript.cpp b/linden/indra/newview/llpreviewscript.cpp
index 9369a3a..be8396a 100644
--- a/linden/indra/newview/llpreviewscript.cpp
+++ b/linden/indra/newview/llpreviewscript.cpp
@@ -282,6 +282,10 @@ void LLScriptEdCore::initMenu()
282 menuItem->setMenuCallback(onSelectAllMenu, this); 282 menuItem->setMenuCallback(onSelectAllMenu, this);
283 menuItem->setEnabledCallback(enableSelectAllMenu); 283 menuItem->setEnabledCallback(enableSelectAllMenu);
284 284
285 menuItem = getChild<LLMenuItemCallGL>("Deselect");
286 menuItem->setMenuCallback(onDeselectMenu, this);
287 menuItem->setEnabledCallback(enableDeselectMenu);
288
285 menuItem = getChild<LLMenuItemCallGL>("Search / Replace..."); 289 menuItem = getChild<LLMenuItemCallGL>("Search / Replace...");
286 menuItem->setMenuCallback(onSearchMenu, this); 290 menuItem->setMenuCallback(onSearchMenu, this);
287 menuItem->setEnabledCallback(NULL); 291 menuItem->setEnabledCallback(NULL);
diff --git a/linden/indra/newview/skins/default/xui/en-us/floater_preview_notecard.xml b/linden/indra/newview/skins/default/xui/en-us/floater_preview_notecard.xml
index 03fc7f6..ed26e11 100644
--- a/linden/indra/newview/skins/default/xui/en-us/floater_preview_notecard.xml
+++ b/linden/indra/newview/skins/default/xui/en-us/floater_preview_notecard.xml
@@ -1,11 +1,8 @@
1<?xml version="1.0" encoding="utf-8" standalone="yes" ?> 1<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
2<floater bottom="-762" can_close="true" can_drag_on_left="false" can_minimize="true" 2<floater bottom="-762" can_close="true" can_drag_on_left="false" can_minimize="true"
3 can_resize="true" enabled="true" follows="left|top" height="361" left="273" 3 can_resize="true" enabled="true" follows="left|top" height="377" left="273"
4 min_height="243" min_width="234" mouse_opaque="true" 4 min_height="259" min_width="234" mouse_opaque="true"
5 name="preview notecard" title="Note:" width="400"> 5 name="preview notecard" title="Note:" width="400">
6 <button bottom="-352" enabled="false" follows="left|bottom" font="SansSerif"
7 halign="center" height="20" label="Save" label_selected="Save" left="9"
8 mouse_opaque="false" name="Save" scale_image="true" width="100" />
9 <icon bottom="-19" color="1 1 1 1" enabled="true" follows="top|right" height="16" 6 <icon bottom="-19" color="1 1 1 1" enabled="true" follows="top|right" height="16"
10 image_name="icon_lock.tga" left="344" mouse_opaque="true" name="lock" 7 image_name="icon_lock.tga" left="344" mouse_opaque="true" name="lock"
11 width="16" /> 8 width="16" />
@@ -20,12 +17,44 @@
20 handle_edit_keys_directly="false" height="19" left="93" max_length="127" 17 handle_edit_keys_directly="false" height="19" left="93" max_length="127"
21 mouse_opaque="true" name="desc" select_all_on_focus_received="false" 18 mouse_opaque="true" name="desc" select_all_on_focus_received="false"
22 select_on_focus="false" width="294" /> 19 select_on_focus="false" width="294" />
23 <text_editor type="string" length="1" bottom="-327" embedded_items="true" enabled="true" 20 <menu_bar bottom="-56" drop_shadow="false" enabled="true" follows="left|top|right"
24 follows="left|top|right|bottom" font="SansSerif" height="281" 21 height="18" left="8" mouse_opaque="false" name="motecard_menu" opaque="false"
22 tear_off="false" width="220">
23 <menu bottom_delta="16" left="0" drop_shadow="true" enabled="true" height="198" width="150"
24 mouse_opaque="false" name="Edit" opaque="true" tear_off="false">
25 <menu_item_call bottom_delta="-30" enabled="false" height="20" label="Undo" left="0"
26 mouse_opaque="true" name="Undo" width="139" />
27 <menu_item_call bottom_delta="-50" enabled="false" height="20" label="Redo" left="0"
28 mouse_opaque="true" name="Redo" width="139" />
29 <menu_item_separator bottom_delta="-58" enabled="true" height="8" label="-----------" left="0"
30 mouse_opaque="true" name="separator1" width="139" />
31 <menu_item_call bottom_delta="-78" enabled="false" height="20" label="Cut" left="0"
32 mouse_opaque="true" name="Cut" width="139" />
33 <menu_item_call bottom_delta="-98" enabled="false" height="20" label="Copy" left="0"
34 mouse_opaque="true" name="Copy" width="139" />
35 <menu_item_call bottom_delta="-118" enabled="false" height="20" label="Paste" left="0"
36 mouse_opaque="true" name="Paste" width="139" />
37 <menu_item_separator bottom_delta="-126" enabled="true" height="8" label="-----------" left="0"
38 mouse_opaque="true" name="separator2" width="139" />
39 <menu_item_call bottom_delta="-146" enabled="true" height="20" label="Select All" left="0"
40 mouse_opaque="true" name="Select All" width="139" />
41 <menu_item_call bottom_delta="-166" enabled="false" height="20" label="Deselect" left="0"
42 mouse_opaque="true" name="Deselect" width="139" />
43 <menu_item_separator bottom_delta="-174" enabled="true" height="8" label="-----------" left="0"
44 mouse_opaque="true" name="separator3" width="139" />
45 <menu_item_call bottom_delta="-194" enabled="true" height="20" label="Search / Replace..."
46 left="0" mouse_opaque="true" name="Search / Replace..." width="139" />
47 </menu>
48 </menu_bar>
49 <text_editor type="string" length="1" bottom="-344" embedded_items="true" enabled="true"
50 follows="left|top|right|bottom" font="SansSerif" height="285"
25 ignore_tab="false" left="4" max_length="65536" mouse_opaque="true" 51 ignore_tab="false" left="4" max_length="65536" mouse_opaque="true"
26 name="Notecard Editor" width="392" word_wrap="true"> 52 name="Notecard Editor" width="392" word_wrap="true">
27 Loading... 53 Loading...
28 </text_editor> 54 </text_editor>
55 <button bottom="-370" enabled="false" follows="left|bottom" font="SansSerif"
56 halign="center" height="20" label="Save" label_selected="Save" left="9"
57 mouse_opaque="false" name="Save" scale_image="true" width="100" />
29 <string name="no_object"> 58 <string name="no_object">
30 Unable to find object containing this note. 59 Unable to find object containing this note.
31 </string> 60 </string>
diff --git a/linden/indra/newview/skins/default/xui/en-us/floater_preview_notecard_keep_discard.xml b/linden/indra/newview/skins/default/xui/en-us/floater_preview_notecard_keep_discard.xml
index 32af593..cd651dd 100644
--- a/linden/indra/newview/skins/default/xui/en-us/floater_preview_notecard_keep_discard.xml
+++ b/linden/indra/newview/skins/default/xui/en-us/floater_preview_notecard_keep_discard.xml
@@ -1,35 +1,71 @@
1<?xml version="1.0" encoding="utf-8" standalone="yes" ?> 1<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
2<floater bottom="-484" can_close="true" can_drag_on_left="false" can_minimize="true" 2<floater bottom="-762" can_close="true" can_drag_on_left="false" can_minimize="true"
3 can_resize="true" enabled="true" height="400" left="138" min_height="243" 3 can_resize="true" enabled="true" follows="left|top" height="377" left="273"
4 min_width="234" mouse_opaque="true" name="preview_notecard" width="400"> 4 min_height="259" min_width="350" mouse_opaque="true"
5 <text_editor type="string" length="1" bottom="-366" 5 name="preview notecard" title="Note:" width="400">
6 embedded_items="true" enabled="true" follows="left|top|right|bottom" 6 <icon bottom="-19" color="1 1 1 1" enabled="true" follows="top|right" height="16"
7 font="SansSerif" height="320" ignore_tab="false" left="4" 7 image_name="icon_lock.tga" left="344" mouse_opaque="true" name="lock"
8 max_length="65536" mouse_opaque="true" name="Notecard Editor" width="392" 8 width="16" />
9 word_wrap="true">
10 Loading...
11 </text_editor>
12 <text type="string" length="1" bg_visible="false" border_drop_shadow_visible="false" border_visible="false" 9 <text type="string" length="1" bg_visible="false" border_drop_shadow_visible="false" border_visible="false"
13 bottom="-38" drop_shadow_visible="true" enabled="true" follows="left|top" 10 bottom="-38" drop_shadow_visible="true" enabled="true" follows="left|top"
14 font="SansSerif" h_pad="0" halign="left" height="19" left="13" 11 font="SansSerif" h_pad="0" halign="left" height="19" left="13"
15 mouse_opaque="true" name="desc txt" v_pad="0" width="80"> 12 mouse_opaque="true" name="desc txt" v_pad="0" width="80">
16 Description: 13 Description:
17 </text> 14 </text>
18 <icon bottom="-19" color="1 1 1 1" enabled="true" follows="top|right" height="16"
19 image_name="icon_lock.tga" left="344" mouse_opaque="true" name="lock"
20 width="16" />
21 <button bottom="-391" enabled="true" follows="left|bottom" font="SansSerif"
22 halign="center" height="20" label="Keep" label_selected="Keep" left="9"
23 mouse_opaque="true" name="Keep" scale_image="true" width="100" />
24 <button bottom="-391" enabled="true" follows="left|bottom" font="SansSerif"
25 halign="center" height="20" label="Discard" label_selected="Discard"
26 left="114" mouse_opaque="true" name="Discard" scale_image="true"
27 width="100" />
28 <line_editor bevel_style="in" border_style="line" border_thickness="1" bottom="-38" 15 <line_editor bevel_style="in" border_style="line" border_thickness="1" bottom="-38"
29 enabled="true" follows="left|top|right" font="SansSerif" 16 enabled="true" follows="left|top|right" font="SansSerif"
30 handle_edit_keys_directly="false" height="19" left="93" max_length="127" 17 handle_edit_keys_directly="false" height="19" left="93" max_length="127"
31 mouse_opaque="true" name="desc" select_all_on_focus_received="false" 18 mouse_opaque="true" name="desc" select_all_on_focus_received="false"
32 select_on_focus="false" width="294" /> 19 select_on_focus="false" width="294" />
33 <string name="no_object">Unable to find object containing this note.:</string> 20 <menu_bar bottom="-56" drop_shadow="false" enabled="true" follows="left|top|right"
34 <string name="not_allowed">You are not allowed to view this note.</string> 21 height="18" left="8" mouse_opaque="false" name="motecard_menu" opaque="false"
22 tear_off="false" width="220">
23 <menu bottom_delta="16" left="0" drop_shadow="true" enabled="true" height="198" width="150"
24 mouse_opaque="false" name="Edit" opaque="true" tear_off="false">
25 <menu_item_call bottom_delta="-30" enabled="false" height="20" label="Undo" left="0"
26 mouse_opaque="true" name="Undo" width="139" />
27 <menu_item_call bottom_delta="-50" enabled="false" height="20" label="Redo" left="0"
28 mouse_opaque="true" name="Redo" width="139" />
29 <menu_item_separator bottom_delta="-58" enabled="true" height="8" label="-----------" left="0"
30 mouse_opaque="true" name="separator1" width="139" />
31 <menu_item_call bottom_delta="-78" enabled="false" height="20" label="Cut" left="0"
32 mouse_opaque="true" name="Cut" width="139" />
33 <menu_item_call bottom_delta="-98" enabled="false" height="20" label="Copy" left="0"
34 mouse_opaque="true" name="Copy" width="139" />
35 <menu_item_call bottom_delta="-118" enabled="false" height="20" label="Paste" left="0"
36 mouse_opaque="true" name="Paste" width="139" />
37 <menu_item_separator bottom_delta="-126" enabled="true" height="8" label="-----------" left="0"
38 mouse_opaque="true" name="separator2" width="139" />
39 <menu_item_call bottom_delta="-146" enabled="true" height="20" label="Select All" left="0"
40 mouse_opaque="true" name="Select All" width="139" />
41 <menu_item_call bottom_delta="-166" enabled="false" height="20" label="Deselect" left="0"
42 mouse_opaque="true" name="Deselect" width="139" />
43 <menu_item_separator bottom_delta="-174" enabled="true" height="8" label="-----------" left="0"
44 mouse_opaque="true" name="separator3" width="139" />
45 <menu_item_call bottom_delta="-194" enabled="true" height="20" label="Search / Replace..."
46 left="0" mouse_opaque="true" name="Search / Replace..." width="139" />
47 </menu>
48 </menu_bar>
49 <text_editor type="string" length="1" bottom="-344" embedded_items="true" enabled="true"
50 follows="left|top|right|bottom" font="SansSerif" height="285"
51 ignore_tab="false" left="4" max_length="65536" mouse_opaque="true"
52 name="Notecard Editor" width="392" word_wrap="true">
53 Loading...
54 </text_editor>
55 <button bottom="-370" enabled="true" follows="left|bottom" font="SansSerif"
56 halign="center" height="20" label="Keep" label_selected="Keep" left="9"
57 mouse_opaque="true" name="Keep" scale_image="true" width="100" />
58 <button bottom="-370" enabled="false" follows="left|bottom" font="SansSerif"
59 halign="center" height="20" label="Save" label_selected="Save" left="114"
60 mouse_opaque="false" name="Save" scale_image="true" width="100" />
61 <button bottom="-370" enabled="true" follows="left|bottom" font="SansSerif"
62 halign="center" height="20" label="Discard" label_selected="Discard"
63 left="219" mouse_opaque="true" name="Discard" scale_image="true"
64 width="100" />
65 <string name="no_object">
66 Unable to find object containing this note.
67 </string>
68 <string name="not_allowed">
69 You are not allowed to view this note.
70 </string>
35</floater> 71</floater>